FbEdit, new IDE for FreeBASIC written in FreeBASIC

User projects written in or related to FreeBASIC.
Post Reply
Mysoft
Posts: 836
Joined: Jul 28, 2005 13:56
Location: Brazil, Santa Catarina, Indaial (ouch!)
Contact:

Post by Mysoft »

and... for the -w1 bug i guess that is the fbc changed things... cuz if dou manual build to avoid warning you need to use -w2 for somewhhat reason ;)
krcko
Posts: 163
Joined: Jul 30, 2006 0:34
Location: Serbia
Contact:

Post by krcko »

guys i have something for you :)

fbCall.api:

Code: Select all

Abs,number
Acos,number	As Double
Allocate,count As Integer
Assert,expression
AssertWarn,expression
Asc,string, [position]
Asin,number
Atan2,y As Double, x As Double
Atn,number
Bin,expression, [digits As Integer]
Bit,value, bit_number
BitReset,value, bit_number
BitSet,value, bit_number
BLoad,filename As String, [addr As Any Ptr], [pal As Any Ptr]
BSave,filename As String, [addr As Any Ptr], [size As Integer], [pal As Any Ptr]
CAllocate,num_elements As Integer, [size As Integer]
Cast,DataType, expression
CByte,expression
CDbl,expression
Chain,exename As String
ChDir,path As String
Chr,expression, [...]
CInt,expression
CLng,expression
CLngInt,expression
Cls,[mode As Integer]
Color,foreground As Integer, background As Integer
Command,[index As Integer]
CondBroadcast,handle As Any Ptr
CondDestroy,handle As Any Ptr
CondSignal,handle As Any Ptr
CondWait,handle As Any Ptr
Cos,number As Double
CPtr,DataType Ptr, expression
CShort,expression
CSign,expression
CSng,expression
CUByte,expression
CUInt,expression
CULngInt,expression
CUnsgn,expression
CUShort,expression
CVD,str As String
CVI,str As String
CVL,str As String
CVLongInt,str As String
CVS,str As String
CVShort,str As String
DateAdd,interval As String, number As Double, date_serial As Double
DateDiff,interval As String, serial1 As Double, serial2 As Double, [firstdayofweek As Integer], [firstdayofyeer As Integer]
DatePart,interval As String, date_serial As Double, [firstdayofweek As Integer], [firstdayofyeer As Integer]
DateSerial,year As Integer, month As Integer, day As Integer
DateValue,stringdate As String
Day,date_serial As Double
Deallocate,pointer As Any Ptr
defined,symbol_name
Dir,[file_spec As String], [attrib_mask As Integer], [out_attrib As Integer Ptr]
DyLibFree,library As Any Ptr
DyLibLoad,filename As String
DyLibSymbol,library As Any Ptr, symbol As String
SetEnviron,varname As String
Environ,varname As String
EOF,filenum As Integer
Error,errno As Integer
Exec,program As String, arguments As String
Exp,number As Double
FileAttr,handle As Integer, [returntype As Integer]
FileCopy,source As String, destination As String
FileDateTime,filename As ZString Ptr
FileExists,filename As ZString Ptr
FileLen,filename As String
Fix,number As Double
Flip,[frompage As Integer], [topage As Integer]
Format,numerical_expression As Double, [formatting_expression As String]
GetJoystick,id As Integer, [buttons As Integer], [x As Single], [y As Single], [z As Single], [r As Single], [u As Single], [v As Single], [a7 As Single], [a8 As Single]
GetMouse,x As Integer, y As Integer, [wheel As Integer], [buttons As Integer]
Hex,number
HiByte,expression
HiWord,expression
Hour,date_serial As Double
Iif,condition, expr_if_true, expr_if_false
ImageConvertRow,src As Any Ptr, src_bpp As Integer, dst As Any Ptr, dst_bpp As Integer, width As Integer, [isrgb As Integer]
ImageCreate,width As Integer, height As Integer, [color As UInteger], [depth As Integer]
ImageDestroy,pointer As Any Ptr
Inp,port As UShort
Input,num As Integer, [filenum As Integer]
InStr,[start As Integer], string As String, [any] substring As String
Int,number As Double
IsDate,stringdate As String
Kill,filename As String
LBound,array, [dimension]
LCase,expression As String
Left,expression As String, characters As Integer
Len,variable
LoByte,expression
LOC,filenum As Integer
LOF,filenum As Integer
Log,number As Double
LoWord,expression
Lpos,printer As Integer
LTrim,expression As String, [[any] trimset As String]
Mid,text As String, start As Integer, [length As Integer]
Minute,date_serial As Double
MKD,number As String
MkDir,folder As String
MKI,number As String
MKL,number As String
MKLongInt,number As String
MKS,number As String
MKShort,number As String
Month,date_serial As Double
MonthName,month As Integer, [abbreviate As Integer]
MultiKey,scancode As Integer
MutexDestroy,id As Any Ptr
MutexLock,id As Any Ptr
MutexUnlock,id As Any Ptr
Name,oldname As String, newname As String
Oct,number
OffsetOf,typename, fieldname
Out,port As UShort, data As UByte
PCopy,source As Integer, destination As Integer
Peek,[DataType], address
Point,coord_x, coord_y, [buffer]
ProcPtr,proc_name
Randomize,[seed As Double]
Reallocate,pointer As Any Ptr, count As Integer
RGB,red, green, blue
RGBA,red, green, blue, alpha
Right,expression As String, characters As Integer
RmDir,folder As String
Rnd,[number As Double]
RSet,src As String, dst As String
RTrim,expression As String, [[any] trimset As String]
Run,program As String, [arguments As String]
SAdd,string As String
Screen,row, column, [color_flag]
ScreenCopy,[frompage As Integer], [topage As Integer]
ScreenControl,what As Integer, [param1 As Integer], [param2 As Integer], [param3 As Integer], [param4 As Integer]
ScreenEvent,[event As Any Ptr]
ScreenInfo,[w As Integer], [h As Integer], [depth As Integer], [bpp As Integer], [pitch As Integer], [rate As Integer], [driver As String]
ScreenList,depth As Integer
ScreenSet,[work_page As Integer], [visible_page As Integer]
ScreenUnlock,[startline As Integer], [endline As Integer]
Second,date_serial As Double
Seek,filenum As Integer
SetDate,newdate As String
SetMouse,[x As Integer], [y As Integer], [visibility As Integer]
SetTime,newtime As String
Sgn,number As Double
Shell,command As String
Sin,number As Double
SizeOf,variable
Sleep,[msecs As Integer], [kind As Integer]
Space,count As Integer
Spc,columns
Sqr,number As Double
Stop,[retval As Integer]
Str,number
String,count As Integer, ch As String
StrPtr,variable As String
System,[retval As Integer]
Tab,column
Tan,number As Double
ThreadCreate,proc As Sub(As Integer), [param As Integer]
ThreadWait,id As Any Ptr
TimeSerial,hour As Integer, minute As Integer, second As Integer
TimeValue,timestring As String
Trim,expression As String, [[any] trimset As String]
UBound,array, [dimension]
UCase,expression As String
va_arg,argument_list, DataType
va_next,argument_list, DataType
Val,str As String
ValLng,str As String
ValInt,str As String
ValUInt,str As String
ValULng,str As String
VarPtr,variable
Wait,port As UShort, and_mask As Integer, [xor_mask As Integer]
WBin,number
WChr,expression, [...]
Weekday,serial As Double, [firstdayofweek As Integer]
WeekdayName,weekday As Integer, [abbreviate As Integer], [firstdayofweek As Integer]
WHex,number
WindowTitle,title As String
WInput,num As Integer, [filenum As Integer]
WOct,number
WSpace,count As Integer
Wstr,expression
WString,count As Integer, ch As String
Year,date_serial As Double
and i also edited fbType.api:

Code: Select all

Boolean
Byte
UByte
Word
Dword
Short
UShort
Integer
UInteger
Long
ULong
LongInt
ULongInt
Single
Double
String
ZString
WString
Pointer
Ptr
HWND
HDC
UINT
WPARAM
LPARAM
HFONT
HMENU
HINSTANCE
HACCEL
HIMAGELIST
HANDLE
HBRUSH
HICON
HCURSOR
HMODULE
HGLOBAL
HBITMAP
I've added Pointer and Ptr and formated all fb types in CamelCase


@KetilO: i've noticed a bug with call tips feature. if i type:

Code: Select all

format(
i won't get tooltip, but i will if i type it as written in .api:

Code: Select all

Format(
so you have to make comparasion case-insensitive...


edit: code formatter on this board reformatted some keywords/functions, here's the rar with both files: http://www.krcko.net/files/fbapi.rar
KetilO
Posts: 416
Joined: Sep 22, 2005 21:48
Location: Norway
Contact:

Post by KetilO »

Hi all

New upload.

Whats new:
----------
1.0.2.9
o Added Ctrl+left click to open include file.
o Added F12 to toggle to previously opend tab.
o Added KaraK's BlueFB theme.
o Added krcko's fbCall.api and fbType.api files.
o Fixed a case sensivity problem with code complete tooltip.

Get it here:
http://www.assembler.ca/radasm/Upload/FbEdit.zip
Or here:
http://www.radasm.com/Upload/FbEdit.zip

Thanks for all contributions and feedback to help improve the IDE.

KetilO
dani.user
Posts: 284
Joined: Sep 30, 2006 10:41

Post by dani.user »

Nice. Good work KetilO

A new bug report: sometimes when I click on Add New->File and enter a filename without extension, it complains about not finding the filename.bmp
SotSvart
Posts: 262
Joined: May 27, 2005 9:03
Location: Norway
Contact:

Post by SotSvart »

Ketil0: Hmm cant seem to open any include files with ctrl+left click, how does it work? It should work when I click on the file name in the source code, right?

This is just my opinion, but would'nt the editor look more professional if the button tabs was replaced by tabs like those in the project window?

One more thing, could it be possible to group files in a project, like create a folder in the project list where you could keep all the .bi files thats part of the project?(Iv ask about this before so I'll shutup now =) ) Keep up the great work!
porfirio
Posts: 154
Joined: Mar 17, 2006 11:54
Location: Portugal

Post by porfirio »

SotSvart wrote:Ketil0: Hmm cant seem to open any include files with ctrl+left click, how does it work? It should work when I click on the file name in the source code, right?

This is just my opinion, but would'nt the editor look more professional if the button tabs was replaced by tabs like those in the project window?

One more thing, could it be possible to group files in a project, like create a folder in the project list where you could keep all the .bi files thats part of the project?(Iv ask about this before so I'll shutup now =) ) Keep up the great work!
You can open FBEdit project in FBedit open the rc file, open IDD_MAIN, select the TabStrip component on proprieties set Buttons to False or go to xStyle and deselect TCS_BUTTONS, now recompile the project

Dunno why but Ketyl0 like that kind of tabs :p

Between nice update o FBEdit.
Can i give you a suggestion? Create a TODO list and put all requests ever made on FBEdit and that haven't been done, so you wont forget any request.
Also would be cool to have a website, i am thinking about make one section about fb and FBEdit on one of my websites
krcko
Posts: 163
Joined: Jul 30, 2006 0:34
Location: Serbia
Contact:

Post by krcko »

porfirio wrote: You can open FBEdit project in FBedit open the rc file, open IDD_MAIN, select the TabStrip component on proprieties set Buttons to False or go to xStyle and deselect TCS_BUTTONS, now recompile the project

Dunno why but Ketyl0 like that kind of tabs :p
or you can write an addin :)

well, you don't have to, cuz i did it: http://www.krcko.net/files/FileTabStyle.rar

enjoy ;)


@KetilO:
looks like great update, downloading right now!
btw i want to add icons to tabs representing current file state (modified/saved) but i'm not really sure how i can find out when the file is changed... can you give some tips about this?
porfirio
Posts: 154
Joined: Mar 17, 2006 11:54
Location: Portugal

Post by porfirio »

krcko wrote:
porfirio wrote: You can open FBEdit project in FBedit open the rc file, open IDD_MAIN, select the TabStrip component on proprieties set Buttons to False or go to xStyle and deselect TCS_BUTTONS, now recompile the project

Dunno why but Ketyl0 like that kind of tabs :p
or you can write an addin :)

well, you don't have to, cuz i did it: http://www.krcko.net/files/FileTabStyle.rar

enjoy ;)


@KetilO:
looks like great update, downloading right now!
btw i want to add icons to tabs representing current file state (modified/saved) but i'm not really sure how i can find out when the file is changed... can you give some tips about this?
Oh yeah, ofcourse, a addin , they rock

Btw
EM_GETMODIFY check if the file is changed

REM_READONLY i think it checks if the file is readonly( maybe not )
KetilO
Posts: 416
Joined: Sep 22, 2005 21:48
Location: Norway
Contact:

Post by KetilO »

Hi all

New upload.

Whats new:
----------
1.0.3.0
o Added option to set code complete list and code tip colors.
. NOTE: Themes updated.
. If you created your own themes, here is how to manually update:
. 1. Move the 18 first color values to the end.
. 2. Append 2 new code complete list (back and text) and
. 4 new code tip (back,text,api and selected) color values.
o The size of the code complete list are now saved to FbEdit.ini.
o Added images to the tab select.
o Current sub or function is shown in statusbar.
o Added AIM_FILESTATE addin message. Reports when a files changed state is changed.
o Added krcko's FileTabStyle addin.
o Fixed bug when adding file without extention to project.
o Fixed problems with Ctrl+left click on filename to open a file.

Get it here:
http://www.assembler.ca/radasm/Upload/FbEdit.zip
Or here:
http://www.radasm.com/Upload/FbEdit.zip

KetilO
Last edited by KetilO on Dec 22, 2006 20:50, edited 1 time in total.
KetilO
Posts: 416
Joined: Sep 22, 2005 21:48
Location: Norway
Contact:

Post by KetilO »

Hi krcko

Nice addin.

As you can see 1.0.3.0 already has icons on the file tabs.
There is also an AIM_FILESTATE message that should meke it easy to update file tabs according to changed state. See the Test AIM_FILESTATE project.

The imagelist used for the file tab has 7 images from Files.bmp
I recomend adding 7 new modified images (small red cross in upper left corner?) to the imagelist and then update the iImage member of TCITEM according to the bitflag (bit 0) in filestate member of TABMEM.

KetilO
dani.user
Posts: 284
Joined: Sep 30, 2006 10:41

Post by dani.user »

Nice addins

I have a small feature request. Could perhaps another icon be introduced for the subs/functions on the udt/class autocomplete list? and perhaps an option if the user wants the data types also displayed or just the names?

Thank you in advance
krcko
Posts: 163
Joined: Jul 30, 2006 0:34
Location: Serbia
Contact:

Post by krcko »

great update KetilO! :)

thanks on tips!
i've updated FileTabStyle and it can be grabbed from here: http://www.krcko.net/files/FileTabStyle.rar
krcko
Posts: 163
Joined: Jul 30, 2006 0:34
Location: Serbia
Contact:

Post by krcko »

almost to forget, bug found: it seems that CodeTip Api color is imposible to change. if i change the color and press Ok and then reopen Code Editor dialog CodeTip Api color is again that violet color, i also tried to close FBEdit edit .ini manualy and then start FBEdit again but it's still unchanged... and New Theme button is always disabled (as i noticed) so i had to add my theme manualy to the ini...

keep up the good work!
KetilO
Posts: 416
Joined: Sep 22, 2005 21:48
Location: Norway
Contact:

Post by KetilO »

Hi krcko

Great addin.

KetilO
KetilO
Posts: 416
Joined: Sep 22, 2005 21:48
Location: Norway
Contact:

Post by KetilO »

Hi all

New upload.

Whats new:
----------
1.0.3.1
o Updated krcko's FileTabStyle addin. It can now show a files modified state.
o Added menu check marks to Beautify addin.
o Subclassed the code complete list so it handles tab, enter, escape and doubleclicks.
o Fixed bug with changing tooltip colors.

Get it here:
http://www.assembler.ca/radasm/Upload/FbEdit.zip
Or here:
http://www.radasm.com/Upload/FbEdit.zip

KetilO
Post Reply