GUI library for Windows \ Linux (window9)
Re: FBGUI library for Windows 2
VANYA
Not a problem. I should have it finished in time. I’ve identified all the sections that need updating and I’ve already done 9 of them. I was slowed down somewhat this morning. I slipped and fell down the stairs and suffered whiplash to my neck and a painful back. Fortunately, it doesn’t look as if any real harm has been done and I should be able to get down to it again in a couple of day’s time.
Ray
Not a problem. I should have it finished in time. I’ve identified all the sections that need updating and I’ve already done 9 of them. I was slowed down somewhat this morning. I slipped and fell down the stairs and suffered whiplash to my neck and a painful back. Fortunately, it doesn’t look as if any real harm has been done and I should be able to get down to it again in a couple of day’s time.
Ray
Re: FBGUI library for Windows 2
I sincerely wish you recover from ailments!RNBW wrote:VANYA
Not a problem. I should have it finished in time. I’ve identified all the sections that need updating and I’ve already done 9 of them. I was slowed down somewhat this morning. I slipped and fell down the stairs and suffered whiplash to my neck and a painful back. Fortunately, it doesn’t look as if any real harm has been done and I should be able to get down to it again in a couple of day’s time.
Ray
Re: FBGUI library for Windows 2
I think to delay the release of window9 until the 1.08 compiler is released, so that later on not doing double work. There have already been cases when the library worked on one version of the compiler and did not work on another version of the compiler.
Re: FBGUI library for Windows 2
Hi VANYA
I have completed the translation of the Window9 help file from Russian to English and it can be obtained from https://www.dropbox.com/s/2ft9saiw562eh ... 1.chm?dl=0. Please note that to open it, first right click on the file and then on Properties and click the Unblock box.
To anyone else thinking of downloading the file, please note that it is for the next update of Window9, which VANYA is hoping to issue in the next few weeks. Some of the code will not work with the current Window9 version. So the advice is to wait until the next update of Window9 to use this help file.
I have completed the translation of the Window9 help file from Russian to English and it can be obtained from https://www.dropbox.com/s/2ft9saiw562eh ... 1.chm?dl=0. Please note that to open it, first right click on the file and then on Properties and click the Unblock box.
To anyone else thinking of downloading the file, please note that it is for the next update of Window9, which VANYA is hoping to issue in the next few weeks. Some of the code will not work with the current Window9 version. So the advice is to wait until the next update of Window9 to use this help file.
Re: FBGUI library for Windows 2
Thanks to RNBW!
Re: FBGUI library for Windows 2
by curiosity, i examined the chm file under linux with xchm. impressive translation work. bravo.
I confess that I didn't believe in this library because it was only for windows. it's not the case anymore. many functions are compatible with linux. very good work...
for the moment, I use BlitzMax and I evaluate Cerberus two excellent languages. but FBGUI has potential under Freebasic. as soon as I have some time, I will test the linux version.
I confess that I didn't believe in this library because it was only for windows. it's not the case anymore. many functions are compatible with linux. very good work...
for the moment, I use BlitzMax and I evaluate Cerberus two excellent languages. but FBGUI has potential under Freebasic. as soon as I have some time, I will test the linux version.
Re: FBGUI library for Windows 2
@Coolman
I use this library for re-coding fbdebugger in view to get a compatible Linux/Windows version.
Only the GUI elements are necessary for this task but it's much more easier than using directly the Windows APIs.
The library is well maintained and every time, VANYA reacted quickly adding missing features I needed. :-)
I use this library for re-coding fbdebugger in view to get a compatible Linux/Windows version.
Only the GUI elements are necessary for this task but it's much more easier than using directly the Windows APIs.
The library is well maintained and every time, VANYA reacted quickly adding missing features I needed. :-)
Re: FBGUI library for Windows 2
@SARG
i never used FB debugger because freebasic is only used for small command line projects. this could change with an efficient gui (fltk would be ideal because this library allows static compilation without any dependency. this is important under linux). i looked at your post. impressive work. it seems to be the ideal tool to debug an important program under freebasic...
i never used FB debugger because freebasic is only used for small command line projects. this could change with an efficient gui (fltk would be ideal because this library allows static compilation without any dependency. this is important under linux). i looked at your post. impressive work. it seems to be the ideal tool to debug an important program under freebasic...
Re: FBGUI library for Windows 2
Library Update:
Linux:
Fix / change:
Clearstring (now the passed string does not change internally)
Getlinetexteditor (return value no longer contains hyphenation characters)
Messbox (flag parameter can now be MB_YESNOCANCEL)
Openwindow (style can contain WS_HSCROLL, WS_VSCROLL)
Updateinfoxserver (parameter was not used, it was always 10000; now the parameter is used)
Setgadgetcolor (using GTK3 on newer distributions the color did not change in some gadgets)
Openglgadget (removed dependency in the form of glarea library, now supported with GTK3)
Load_image (optimization)
Catch_image (optimization)
Resize_image (freeing resources)
Create_image (optimization)
Imagestartdraw (optimization)
Windowstartdraw (optimization)
Pixdraw (range checks added)
Imagedraw (optimization)
Getpix (range checks added)
Fillrectdraw (freeing up resources)
Textdraw (now full unicode support, previously used a stripped-down version for drawing text)
Piedraw (fixed drawing with frame)
minor fix for working with events
the disable_webgadget macro will now allow excluding the Webgadget code when compiling the library (if this gadget is not required for some reason)
Panelgadget (added Eventgadget event when switching tabs)
renamed (ReplaceTextItemListView, ReplaceTextColumnListView, RenameItemTreeView) to (Settextitemlistview, Settextcolumnlistview, Settextitemtreeview)
includeBinary - changed code for 64-bit
Add:
Getfirstvisiblelineeditor
Lineindexeditor
Linelengtheditor
Rotateandscaleimage
Setselecttreeviewitem
Getchilditemtreeview
Getparentitemtreeview
Collapsetreeviewitem
Expandtreeviewitemall
Collapsetreeviewitemall
Expandtreeviewitem
Getnextitemtreeview
Getprevitemtreeview
Getfirstitemtreeview
Deletetreeviewitemall
Creategpbitmapfromhbitmap
Copy_imagea
Catch_imagea
Grab_imagea
Image_heighta
Image_widtha
Resize_imagea
Create_imagea
Save_imagea
Rotateandscaleimagea
Load_imagea
Free_imagea
Arcdrawa
Bezierdrawa
Boxdrawa
Circledrawa
Createbrusha
Createfontdrawa
Fillrectdrawa
Freebrusha
Freefontdrawa
Getpixa
Imagedrawa
Imagestartdrawa
Linedrawa
Modedrawa
Piedrawa
Polygondrawa
Rounddrawa
Setpixa
Stopdrawa
Textdrawa
Windowstartdrawa
Createhbitmapfromgpbitmap
Full support for USTRING (dynamic unicode string)
Windows:
Fix / change:
Clearstring (now the passed string does not change internally)
Readonlyeditor (now does not return a value)
Createhbitmapfromgpbitmap (color bug fixed)
Panelgadgetsetcursel (tab switching fixed)
Addtreeviewitem (changed the internal algorithm for working with images)
Replaceimageitemtreeview (minor minor fix)
Replaceimagelistview (minor minor fix)
Getcountitemtreeview (minor fix for working with Explorerlistgadget)
Deletelistviewcolumn (freeing image resources)
Deleteitemlistview (changed the internal algorithm for working with images)
Addlistviewitem (changed the internal algorithm for working with images)
Deletelistviewitemsall (changed the internal algorithm for working with images)
Deletetreeviewitem (internal algorithm for working with images has been changed)
Hidegadget (Spingadget bug fix)
Gadgetwidth (fix for Spingadget)
Gadgetheight (Spingadget bug fix)
Resizegadget (fix for Spingadget)
Deletetreeviewitemall (internal algorithm for working with images has been changed)
minor fix for working with events
Close_window (freeing resources for shortcut)
Inputbox (support for switching focus for interface elements, added the ability to set a parent for this dialog)
renamed (ReplaceTextItemListView, ReplaceTextColumnListView, RenameItemTreeView, FreeGpBitmap) to (Settextitemlistview, Settextcolumnlistview, Settextitemtreeview, Free_imagea)
includeBinary - changed code for 64-bit
Add:
Setselecttreeviewitem
Getparentitemtreeview
Getchilditemtreeview
Expandtreeviewitem
Expandtreeviewitemall
Getnextitemtreeview
Getprevitemtreeview
Getfirstitemtreeview
Collapsetreeviewitem
Collapsetreeviewitemall
Deletetreeviewitemall
Support for switching focus for gadgets using Tab, SHIFT + Tab, CTRL + Tab keys
Linux:
Fix / change:
Clearstring (now the passed string does not change internally)
Getlinetexteditor (return value no longer contains hyphenation characters)
Messbox (flag parameter can now be MB_YESNOCANCEL)
Openwindow (style can contain WS_HSCROLL, WS_VSCROLL)
Updateinfoxserver (parameter was not used, it was always 10000; now the parameter is used)
Setgadgetcolor (using GTK3 on newer distributions the color did not change in some gadgets)
Openglgadget (removed dependency in the form of glarea library, now supported with GTK3)
Load_image (optimization)
Catch_image (optimization)
Resize_image (freeing resources)
Create_image (optimization)
Imagestartdraw (optimization)
Windowstartdraw (optimization)
Pixdraw (range checks added)
Imagedraw (optimization)
Getpix (range checks added)
Fillrectdraw (freeing up resources)
Textdraw (now full unicode support, previously used a stripped-down version for drawing text)
Piedraw (fixed drawing with frame)
minor fix for working with events
the disable_webgadget macro will now allow excluding the Webgadget code when compiling the library (if this gadget is not required for some reason)
Panelgadget (added Eventgadget event when switching tabs)
renamed (ReplaceTextItemListView, ReplaceTextColumnListView, RenameItemTreeView) to (Settextitemlistview, Settextcolumnlistview, Settextitemtreeview)
includeBinary - changed code for 64-bit
Add:
Getfirstvisiblelineeditor
Lineindexeditor
Linelengtheditor
Rotateandscaleimage
Setselecttreeviewitem
Getchilditemtreeview
Getparentitemtreeview
Collapsetreeviewitem
Expandtreeviewitemall
Collapsetreeviewitemall
Expandtreeviewitem
Getnextitemtreeview
Getprevitemtreeview
Getfirstitemtreeview
Deletetreeviewitemall
Creategpbitmapfromhbitmap
Copy_imagea
Catch_imagea
Grab_imagea
Image_heighta
Image_widtha
Resize_imagea
Create_imagea
Save_imagea
Rotateandscaleimagea
Load_imagea
Free_imagea
Arcdrawa
Bezierdrawa
Boxdrawa
Circledrawa
Createbrusha
Createfontdrawa
Fillrectdrawa
Freebrusha
Freefontdrawa
Getpixa
Imagedrawa
Imagestartdrawa
Linedrawa
Modedrawa
Piedrawa
Polygondrawa
Rounddrawa
Setpixa
Stopdrawa
Textdrawa
Windowstartdrawa
Createhbitmapfromgpbitmap
Full support for USTRING (dynamic unicode string)
Windows:
Fix / change:
Clearstring (now the passed string does not change internally)
Readonlyeditor (now does not return a value)
Createhbitmapfromgpbitmap (color bug fixed)
Panelgadgetsetcursel (tab switching fixed)
Addtreeviewitem (changed the internal algorithm for working with images)
Replaceimageitemtreeview (minor minor fix)
Replaceimagelistview (minor minor fix)
Getcountitemtreeview (minor fix for working with Explorerlistgadget)
Deletelistviewcolumn (freeing image resources)
Deleteitemlistview (changed the internal algorithm for working with images)
Addlistviewitem (changed the internal algorithm for working with images)
Deletelistviewitemsall (changed the internal algorithm for working with images)
Deletetreeviewitem (internal algorithm for working with images has been changed)
Hidegadget (Spingadget bug fix)
Gadgetwidth (fix for Spingadget)
Gadgetheight (Spingadget bug fix)
Resizegadget (fix for Spingadget)
Deletetreeviewitemall (internal algorithm for working with images has been changed)
minor fix for working with events
Close_window (freeing resources for shortcut)
Inputbox (support for switching focus for interface elements, added the ability to set a parent for this dialog)
renamed (ReplaceTextItemListView, ReplaceTextColumnListView, RenameItemTreeView, FreeGpBitmap) to (Settextitemlistview, Settextcolumnlistview, Settextitemtreeview, Free_imagea)
includeBinary - changed code for 64-bit
Add:
Setselecttreeviewitem
Getparentitemtreeview
Getchilditemtreeview
Expandtreeviewitem
Expandtreeviewitemall
Getnextitemtreeview
Getprevitemtreeview
Getfirstitemtreeview
Collapsetreeviewitem
Collapsetreeviewitemall
Deletetreeviewitemall
Support for switching focus for gadgets using Tab, SHIFT + Tab, CTRL + Tab keys
Re: FBGUI library for Windows 2
VANYA
Thank you for the update.
I am having a problem. No matter what code I write using Window 9 with the recent update to FreeBASIC (1.08.0 with gcc 9.3) I get the following error message:
"C:\FreeBASIC-1.08.0-winlibs-gcc-9.3.0\bin\ld.exe: cannot find -lz"
I don't understand the error message so I don't know how to proceed.
I suspect it is to do with gcc 9.3 because I have just tried the code using your February 2021 update and I get the same message. Using Freebasic 1.07.3 and your Window9 Februaru 2021 update the code runs fine.
Ray
Thank you for the update.
I am having a problem. No matter what code I write using Window 9 with the recent update to FreeBASIC (1.08.0 with gcc 9.3) I get the following error message:
"C:\FreeBASIC-1.08.0-winlibs-gcc-9.3.0\bin\ld.exe: cannot find -lz"
I don't understand the error message so I don't know how to proceed.
I suspect it is to do with gcc 9.3 because I have just tried the code using your February 2021 update and I get the same message. Using Freebasic 1.07.3 and your Window9 Februaru 2021 update the code runs fine.
Ray
-
- Posts: 8586
- Joined: May 28, 2005 3:28
- Contact:
Re: FBGUI library for Windows 2
@RNBW you need the file "libz.a" 32 and or 64-bit version !
Joshy
Joshy
Re: FBGUI library for Windows 2
JoshyD.J.Peters wrote:@RNBW you need the file "libz.a" 32 and or 64-bit version !
Joshy
Thanks that seems to have solved the problem. The file "libz.a" wasn't included in the June 2021 Window9 library that I downloaded from SourceForge. However, I did find it in the version in the January and May 2021 versions. I don't know if they are the same but are both 129Kb.
Ray
Re: FBGUI library for Windows 2
The old release has zlib libraries for win32 and win64. Imortis also offered links to libraries in this post.C:\FreeBASIC-1.08.0-winlibs-gcc-9.3.0\bin\ld.exe: cannot find -lz
Re: FBGUI library for Windows 2
Vanya
I'm going through one of my "thick" periods. Could you give me an example of MessBox Yes/No.
Thank you.
Edit:
I have come up with the following solution, which works, but is it the correct way?
I'm going through one of my "thick" periods. Could you give me an example of MessBox Yes/No.
Thank you.
Edit:
I have come up with the following solution, which works, but is it the correct way?
Code: Select all
#include "Window9.bi"
dim as string a
dim as integer Result
Const MB_YES = 6
Const MB_NO = 7
Result = MessBox("Title", "Please make your input:", MB_YESNO)
a = "Result of the request was: "
select case Result
Case 6
a = a + "Yes"
case 7
a = a + "No"
End Select
MessBox("Information", a, MB_Ok)
sleep
Re: FBGUI library for Windows 2
Hi RNBW!
Code: Select all
#include "window9.bi"
Openwindow("",300,300,150,200)
Buttongadget(1,10,10,100,30,"yesno")
Buttongadget(2,10,50,100,30,"yesnocancel")
Editorgadget(3,10,100,100,30)
Do
Var Event = Waitevent()
If Event = Eventgadget Then
Select Case Eventnumber
Case 1
Select Case Messbox("Message","YESNO" , MB_YESNO)
Case IDYES
Setgadgettext(3 , "YES")
Case IDNO
Setgadgettext(3 , "NO")
End Select
Case 2
Select Case Messbox("Message","YESNOCANCEL" , MB_YESNOCANCEL)
Case IDYES
Setgadgettext(3 , "YES")
Case IDNO
Setgadgettext(3 , "NO")
Case IDCANCEL
Setgadgettext(3 , "CANCEL")
End Select
End Select
Elseif Event = Eventclose Then
Exit Do
Endif
Loop