Recent

Author Topic: The Important FpGUI Widgeset interface developement  (Read 58500 times)

Fred vS

  • Hero Member
  • *****
  • Posts: 2034
    • StrumPract is the musicians best friend
Re: The Important FpGUI Widgeset interface developement
« Reply #60 on: January 31, 2014, 12:01:38 pm »
Quote
BTW, is it possible to make a form without the title bar?

Of course... ;)

Please, for all "technical" fpGUI questions, go to fpGUI forum :

http://opensoft.homeip.net/webnews/

Many thanks.
« Last Edit: January 31, 2014, 12:03:16 pm by Fred vS »
I use Lazarus 2.0.6 32/64 and FPC 3.2.0 32/64 on Debian 10.2 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64 and Mac OS X Snow Leopard 32.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt, Carbon.

https://github.com/fredvs
https://gitlab.com/fredvs

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: The Important FpGUI Widgeset interface developement
« Reply #61 on: January 31, 2014, 01:54:47 pm »
BTW, is it possible to make a form without the title bar?
Do you mean when using fpGUI... if so, then yes of course you can. :)
Take a look at the splashscreen and hintwindow examples included with fpGUI. I mention the second example because tooltips are also just popup windows - but with no titlebar or borders.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

chrnobel

  • Sr. Member
  • ****
  • Posts: 274
Re: The Important FpGUI Widgeset interface developement
« Reply #62 on: January 31, 2014, 03:02:13 pm »
BTW, is it possible to make a form without the title bar?
Do you mean when using fpGUI... if so, then yes of course you can. :)
Take a look at the splashscreen and hintwindow examples included with fpGUI. I mention the second example because tooltips are also just popup windows - but with no titlebar or borders.
Yes thanks, I found out from the splashscreen example that what I needed was to use a Include(FWindowAttributes, waBorderLess);  in the mainform aftercreate procedure.

Also one need to get used to, that dropping a component on the form does not automatically add the required unit in the uses clause, but have to be added manually.

Which leads me to the next question, is there some kind of inheritance map of all the fpGUI components, as the only solution I have found so far is asking Dr. Google?
And as I see, the sourceforge.net/apidocs is not searchable.

Regards
Christian

chrnobel

  • Sr. Member
  • ****
  • Posts: 274
Re: The Important FpGUI Widgeset interface developement
« Reply #63 on: January 31, 2014, 03:45:26 pm »
Quote
( not the *.lpi ).

Hum, i will see if i can do something to load uidesigner of correspondent *.lpr file if you load a *.lpi file.  (ASAP but not now, i have too much work now..  :-X.)
Hi again.

This is not directly bound to fpGUI, but more to Lazarus.

If I have an open project, and wants to open another example, this has to be done from File-Open, and not Project-Open, and then open the .lpr file.

This works isolated ok, but the problem is that Lazarus still thinks that the project is the previous project, so when compiling, it is actually not the current fpGUI file as expected that is compiled, but the old one.

And Lazarus does still behave like Delphi has done for decades, meaning that it is not possible to close a project (I have newer understood the idea behind that, imo it is completely insane that it is not possible to start up with an empty ide), thus it is simply not possible to open the examples - the UIDesigner never starts.

I can on the other hand open the template file, and then manage to get it to work, but the behaviour is not consistent, sometimes I can manage to open files/project, other times not.

Fred vS

  • Hero Member
  • *****
  • Posts: 2034
    • StrumPract is the musicians best friend
Re: The Important FpGUI Widgeset interface developement
« Reply #64 on: January 31, 2014, 04:54:48 pm »
Hello.

You can open project *.lpi with "Open Project", then, when project is loaded, open *.lpr with "OpenFile".

You may also install Lazarus version 1.0.14 or version 1.2RC2 => there the patches provided in uidesigner_ext are working for *.lpi too.

For Lazarus version 1.0.8, if i find some time this we, i will enable *.lpi link to *.lpr   => like for patch 1.0.14 and 1.2RC2.

[EDIT] Hum, i assume that, sometimes, in fpGUI examples, it is difficult to know witch unit contents forms-code readable by uidesigner,..

I just try colorlistboxtest.lpr and no form-code readable there, you must load frMain.pas, this code contains form-code readable by uidesigner...
« Last Edit: January 31, 2014, 05:13:23 pm by Fred vS »
I use Lazarus 2.0.6 32/64 and FPC 3.2.0 32/64 on Debian 10.2 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64 and Mac OS X Snow Leopard 32.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt, Carbon.

https://github.com/fredvs
https://gitlab.com/fredvs

Fred vS

  • Hero Member
  • *****
  • Posts: 2034
    • StrumPract is the musicians best friend
Re: The Important FpGUI Widgeset interface developement
« Reply #65 on: January 31, 2014, 10:12:26 pm »
@ chrnobel :

Hello.

In attach, patch for Lazarus version 1.0.8. working with *.lpi files.

Have fun  ;)

I use Lazarus 2.0.6 32/64 and FPC 3.2.0 32/64 on Debian 10.2 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64 and Mac OS X Snow Leopard 32.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt, Carbon.

https://github.com/fredvs
https://gitlab.com/fredvs

chrnobel

  • Sr. Member
  • ****
  • Posts: 274
Re: The Important FpGUI Widgeset interface developement
« Reply #66 on: February 01, 2014, 12:45:38 pm »
@ chrnobel :

Hello.

In attach, patch for Lazarus version 1.0.8. working with *.lpi files.

Have fun  ;)
Hi Fred.

Thank you very much, it works now.

I really appreciate you help, you made my day.

Regards
Christian

chrnobel

  • Sr. Member
  • ****
  • Posts: 274
Re: The Important FpGUI Widgeset interface developement
« Reply #67 on: February 07, 2014, 11:14:15 am »
Hi again Fred.

It works now, however I have discovered a small glitch.

I can open most projects now (some of the example files still giving problems, but I can live with that), but if I have opened a project, and then wants to check a declaration (in a fpGUI unit), then the unit is opened in a new editor tab, but unfortunately fpGUIs uidesigner, object inspektor, and the form disappears.

Only way to get it back is to close the projects editorwindow, and then reopen the .lpr file from the normal file menu (not the project menu).

Any ideas?

Regards
Christian

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: The Important FpGUI Widgeset interface developement
« Reply #68 on: February 07, 2014, 02:43:44 pm »
Yes thanks, I found out from the splashscreen example that what I needed...
Excellent, glad you got that sorted.

Quote
Also one need to get used to, that dropping a component on the form does not automatically add the required unit in the uses clause, but have to be added manually.
Unlike other toolkits, the required units are named very simply, so is easy to remember or figure out. Trackbar -> fpg_trackbar, Button -> fpg_button, Edit -> fpg_edit.....   See the pattern. ;-)

Also back in the day, FPC's smartlinking was not that good, so often the developer needed to help a bit. Explicitly letting the developer only include the units that are really needed helped the smartlinking cope.

If this really bugs you, simply modify the UI Designer's "new unit template" to include all or the most used units you require. I'm actually considering making the UI Designer more "template file" driven, so this should make things even easier for some folks.

Quote
Which leads me to the next question, is there some kind of inheritance map of all the fpGUI components, as the only solution I have found so far is asking Dr. Google?
And as I see, the sourceforge.net/apidocs is not searchable.
I don't have a complete toolkit class map like Delphi and Kylix used to supply. I did modify FPC's fpdoc to include inheritance mapping in the INF documentation. This is visible when you view any documentation of a class. Pre-built INF docs is available on SourceForge for download.

The following Class Documentation link works fine for me:
  http://fpgui.sourceforge.net/apidocs/index.html
This is the URL listed in fpGUI's homepage... http://fpgui.sourceforge.net
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: The Important FpGUI Widgeset interface developement
« Reply #69 on: February 07, 2014, 02:54:29 pm »
...with an empty ide), thus it is simply not possible to open the examples - the UIDesigner never starts.
Hence the reason I setup UI Designer as an External Tool (with keyboard shortcut) in Lazarus IDE. Thus I can always open fpGUI forms - irrespective of what project I have open in Lazarus IDE. I like fpGUI tools not having a dependency on any IDE.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Fred vS

  • Hero Member
  • *****
  • Posts: 2034
    • StrumPract is the musicians best friend
Re: The Important FpGUI Widgeset interface developement
« Reply #70 on: February 07, 2014, 03:55:27 pm »
@ chrnobel.

Yep, i see what you mean... Uidesigner_ext integration into Lazarus is not perfect.
 
Mainly because it works with one-only instance (and because i do not understand good how Lazarus code deals with open-editor, there are lot of procedures who link to other units, sure if Lazarus had a "pluggin" or  "external link with code editor" feature, i will do it much better...)

Uidesigner_ext integration into IDE is good to discover fpGUI but now that you are a fpGUI-pro, maybe, like Graeme explained, you may use uidesigner (or uidesigener_ext) as a external tool.

For that, disable "IDE integration with Lazarus" and in Lazarus, create a uidesigner external tool.
So you may create as many instance of uidesigner you want.

Fred

« Last Edit: February 08, 2014, 01:38:35 pm by Fred vS »
I use Lazarus 2.0.6 32/64 and FPC 3.2.0 32/64 on Debian 10.2 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64 and Mac OS X Snow Leopard 32.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt, Carbon.

https://github.com/fredvs
https://gitlab.com/fredvs

tatamata

  • Hero Member
  • *****
  • Posts: 736
    • ZMSQL - SQL enhanced in-memory database
Re: The Important FpGUI Widgeset interface developement
« Reply #71 on: February 15, 2014, 08:27:07 pm »
First time trying to compile application with fpgui,
on CodeTyphon v. 4.70, Linux, GTK2:
I get error:
Quote
fpgui/fpguiwsdialogs.pp(33,3) Fatal: Can't find unit fpg_base used by FpGuiWSDialogs

Fred vS

  • Hero Member
  • *****
  • Posts: 2034
    • StrumPract is the musicians best friend
Re: The Important FpGUI Widgeset interface developement
« Reply #72 on: February 15, 2014, 10:00:14 pm »
Quote
fpgui/fpguiwsdialogs.pp(33,3) Fatal: Can't find unit fpg_base used by FpGuiWSDialogs

Take a look here, at  - 1) Install fpGUI.:
http://forum.lazarus.freepascal.org/index.php/topic,12481.msg136323.html?PHPSESSID=e01a2bcbfd427d57004841e50cb6079d#msg136323
I use Lazarus 2.0.6 32/64 and FPC 3.2.0 32/64 on Debian 10.2 64 bit, Windows 10, Windows 7 32/64, Windows XP 32,  FreeBSD 64 and Mac OS X Snow Leopard 32.
Widgetset: fpGUI, MSEgui, Win32, GTK2, Qt, Carbon.

https://github.com/fredvs
https://gitlab.com/fredvs

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: The Important FpGUI Widgeset interface developement
« Reply #73 on: February 17, 2014, 02:53:35 pm »
I get error:
  fpgui/fpguiwsdialogs.pp(33,3) Fatal: Can't find unit fpg_base used by FpGuiWSDialogs
Are you the same person that contacted me via Google Hangout? If so I presume the compilation error was resolved.

If you are indeed a different person. Take a look at the lcl/interfaces/fpgui/readme.txt file. You need to setup the directory structure for Lazarus IDE to find fpGUI's source code.

Note:
The LCL-fpGUI widgetset of Lazarus is still in alpha state. If you really want to use fpGUI, I recommend you use fpGUI Toolkit directly - without going via the LCL.
« Last Edit: February 18, 2014, 06:18:11 am by Graeme Geldenhuys »
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

tatamata

  • Hero Member
  • *****
  • Posts: 736
    • ZMSQL - SQL enhanced in-memory database
Re: The Important FpGUI Widgeset interface developement
« Reply #74 on: February 17, 2014, 03:00:41 pm »
I get error:
Quote
fpgui/fpguiwsdialogs.pp(33,3) Fatal: Can't find unit fpg_base used by FpGuiWSDialogs
Are you the same person that contacted me via Google Hangout? If so I presure the compilation error is resolved.

If you are indeed a different person. Take a look at the lcl/interfaces/fpgui/readme.txt file. You need to setup the directory structure for Lazarus IDE to find fpGUI's source code.

Note:
The LCL-fpGUI widgetest of Lazarus is still in alpha state. If you really want to use fpGUI, I recommend you use fpGUI Toolkit directly - without going via the LCL.
hi! yes, i'm the same person and confirm that I successfully compiled with LCL-fpgui.
though, the application itself crashes..

i haven't yet tried pure fpgui, didn't  have enogh time...

thanks.

 

TinyPortal © 2005-2018