Lazarus

Programming => Widgetset => Other => Topic started by: Hydexon on March 19, 2011, 05:14:56 pm

Title: The Important FpGUI Widgeset interface developement
Post by: Hydexon on March 19, 2011, 05:14:56 pm
Hello, i want to say to the Lazarus IDE developers the importance of the FpGUI Widgetset interface because this can be very useful and helps the Lazarus IDE more crossplatform under operating systems (UNIX) doesn't have GTK,Qt and others (Except Mac OS X). for example AIX, HP-UX, IRIX (I think), and however the enterprises uses Lazarus for their Applications!.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Leledumbo on March 19, 2011, 06:06:53 pm
I even thinking of another better idea: an X11 based widgetset.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Hydexon on March 19, 2011, 06:26:49 pm
Yes, Can be.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on March 19, 2011, 07:53:10 pm
for example AIX,
http://www.perzl.org/aix/index.php?n=Main.Gtk

Quote
HP-UX,
http://hpux.connect.org.uk/hppd/hpux/Gtk/Development/gtk+-1.2.10/

Quote
IRIX (I think),

http://www.nekochan.net/weblog/archives/2004/02/gnomegtk-2-offi.html

Quote
and however the enterprises uses Lazarus for their Applications!.

The Enterprise mentality is to no use anything that is not supported by the OS vendor. If GTK/QT won't qualify, then certainly Lazarus won't either.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Hydexon on March 19, 2011, 07:56:25 pm
If the user don't know what a hell is gtk or qt?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: TurboRascal on March 20, 2011, 03:09:14 am
I even thinking of another better idea: an X11 based widgetset.

I was always thinking how nice would it be having a possibility to use Athena 3D Widgeset as a fallback option. :) Yes, it is ancient, but it's always there ;)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on April 02, 2011, 04:10:16 pm
If the user don't know what a hell is gtk or qt?

Then he sure won't know fpgui.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on May 26, 2011, 07:49:03 pm
I even thinking of another better idea: an X11 based widgetset.
fpGUI uses X11 (xlib) directly. How in this different to what you suggested?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on May 26, 2011, 07:51:35 pm
for example AIX, HP-UX, IRIX (I think), and however the enterprises uses Lazarus for their Applications!.

Does FPC support those platforms?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on May 26, 2011, 07:59:07 pm

I was always thinking how nice would it be having a possibility to use Athena 3D Widgeset as a fallback option. :) Yes, it is ancient, but it's always there ;)

With the new theme API in fpGUI, the following look will be very easy to duplicate. I'm already working on a Motif theme, and Xaw3d can simply be a desendant of that.

http://www.efalk.org/Widgets/#xaw3d
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on May 27, 2011, 07:01:28 pm
for example AIX, HP-UX, IRIX (I think), and however the enterprises uses Lazarus for their Applications!.

Does FPC support those platforms?

No. AIX is mostly POWER based nowadays, so it should be possible in theory.

HP-UX is mostly Itanium nowadays, and IRIX (when it was not dead and buried) mostly MIPS, so not even close.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on May 27, 2011, 07:14:48 pm
I even thinking of another better idea: an X11 based widgetset.

I was always thinking how nice would it be having a possibility to use Athena 3D Widgeset as a fallback option. :) Yes, it is ancient, but it's always there ;)

Like xforms it used to be standard installed (as soon as you'd install X you'd have it years back). But is this still the case?

If you have tell users to install it, you might as well use GTK

Title: Re: The Important FpGUI Widgeset interface developement
Post by: TurboRascal on September 12, 2011, 10:34:47 pm
I was always thinking how nice would it be having a possibility to use Athena 3D Widgeset as a fallback option. :) Yes, it is ancient, but it's always there ;)

Like xforms it used to be standard installed (as soon as you'd install X you'd have it years back). But is this still the case?

If you have tell users to install it, you might as well use GTK

Both Athena widgetsets (the ugly and the uglier ;) ) are official (I believe) parts of the X Window System and the X.org distribution. I guess they should always be available in X (as are so many other components and protocol subsystems, obsolete and all but forgotten).

However, looking from today's perspective, odds are X will soon be displaced by Wayland or something else which is more modern than X. Considering that, perhaps there is no sense in flirting with X specific components any more... :)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Carver413 on September 13, 2011, 02:03:22 am
Opengl is the future. in this way you need only capture basic windowing functions.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Paul Breneman on May 25, 2012, 06:58:26 pm
I just updated the minimal Free Pascal and fpGUI ARM distro on this page:
  http://www.turbocontrol.com/easyfpgui.htm

That might just be the easiest way to try Free Pascal and a GUI program on the Raspberry Pi (or other small ARM Linux systems), which I hope to do as soon as a friend gets delivery on one.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on July 16, 2012, 01:12:02 pm
I even thinking of another better idea: an X11 based widgetset.
The fpGUI Toolkit speaks directly to the Xlib (X11) library. So any unix-type OS that has X11 should be fine for fpGUI Toolkit to work on. LCL-fpGUI is a layer on top of fpGUI Toolkit, so not 100% sure what other dependencies LCL pulls it, but hopefully not too much in the case of LCL-fpGUI.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on July 16, 2012, 01:16:15 pm
Opengl is the future. in this way you need only capture basic windowing functions.
OpenGL performance under Linux sucks big time! (unless you install the proprietary AMD/nVidia drivers)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on July 16, 2012, 01:17:25 pm
That might just be the easiest way to try Free Pascal and a GUI program on the Raspberry Pi (or other small ARM Linux systems), which I hope to do as soon as a friend gets delivery on one.
I'm also eager to try the Raspberry Pi.  :)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: TurboRascal on August 17, 2012, 02:09:05 pm
I'm wondering, hasn't fpgui actually become obsolete since Felipe developed custom drawn controls? Perhaps the efforts could be joined, so fpgui would try to use a native widgetset if available and switch to custom drawn when there is none...
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Dibo on August 17, 2012, 03:49:39 pm
I could say: why use custom drawn if we have fpGUI ;)  . fpGUI has different idea than CD. CD has only own drawing but still depend on LCL so inherit all OS problems from which fpGUI trying to escape. fpGUI has a lot of controls with own drawing (listbox, treeview, listview, grids, even richview) and doesn't need any external libs like GTK, QT, libQT4Pas and much more, so I compile only one executable for linux and it run on GNOME, KDE, XFCE, Unity etc. Integrating LCL in fpGUI is step back. Especially since the upcoming version of fpGUI will be working on Agg (little sneak peak: http://fpgui.sourceforge.net/images/full/fpgui_agg-powered.png) and this gives many new possibilities. So fpGUI is not obsolete but has different way of development :)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: felipemdc on August 17, 2012, 10:12:44 pm
Custom drawn is made for the LCL, it runs in Linux on top of X11 without any other dependency and it supports 2 unique platforms which other toolkits don't support: Cocoa (native Mac OS X) and Android. It does not have any platform issues, since everything is identical in all operating systems, only the skin might be changed to look native.

For discusing fpGUI as a separate toolkit unrelated to Lazarus please use the fpGUI appropriate forum/newsgroup/etc. This is a Lazarus forum.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on August 17, 2012, 10:55:01 pm
I just updated the minimal Free Pascal and fpGUI ARM distro on this page:
  http://www.turbocontrol.com/easyfpgui.htm

That might just be the easiest way to try Free Pascal and a GUI program on the Raspberry Pi (or other small ARM Linux systems), which I hope to do as soon as a friend gets delivery on one.

Lazarus installs with one command from Raspbian's (the recommended distro) repositories?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme on October 26, 2012, 12:56:08 am
Quote
For discusing fpGUI as a separate toolkit unrelated to Lazarus please use the fpGUI appropriate forum/newsgroup/etc. This is a Lazarus forum.
Please don't start that here too.... Unlike emails (the mailing list) that get delivered to everybody's Inbox, the forums are a "on demand" service. You only read what you find interesting. If you don't like the topic, simply don't read the messages - nobody is forcing you to read this.

As for the discussion about fpGUI Toolkit - it is rather a vital part in the implementation of LCL-fpGUI widgetset. So give the people a break.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Zoran on October 26, 2012, 07:13:54 pm
For discusing fpGUI as a separate toolkit unrelated to Lazarus please use the fpGUI appropriate forum/newsgroup/etc. This is a Lazarus forum.

NO!!

Nobody here (thank God) objects asking FPC related questions. So, we should finally agree that this is not Lazarus only forum, as FPC and Lazarus are closely related and all FPC topics must be welcomed in this forum. FpGui is a GUI framework completely written in FPC and as such must be welcomed here.

Anyway, fpGui is closely related to Lazarus project for two reasons - first, because fpGui's Visual Form Designer can be very well and comfortably used with Lazarus GUI, and second - because fpGui is (at least as partially implemented LCL-fpGui) a LCL target. Perhaps your Custom drawn controls already are million times better LCL target than fpGui, but try to accept that they are not the only solution. Just try to get over it.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on October 26, 2012, 10:22:59 pm
 
Nobody here (thank God) objects asking FPC related questions. So, we should finally agree that this is not Lazarus only forum, as FPC and Lazarus are closely related and all FPC topics must be welcomed in this forum.

The fact that FPC related questions as a subset of Lazarus are allowed, should IMHO not be abused for non-related systems. At least not till the forum is officially also for FPC.
 
Title: Re: The Important FpGUI Widgeset interface developement
Post by: vfclists on December 03, 2013, 09:22:37 pm
I think a case can be made for having both fpGUI and MSEIde+MSEGui on this forum, mainly because users  of those toolkits are also users of Lazarus.

The problem is all the toolkits use FCL and parts of the LCL as well, and answers about those also have some relevance to Lazarus. The way things are now leads to the fragmentation of the Pascal community and its knowledgebase and no one benefits from such a situation. What matters is that the proponents of the different/competing stop bickering and sniping at each other.

Pascal is on the decline as it stands and this attitude helps no one. Consider how much better things would be for the Pascal world If there was a single major forum for all the various Pascal dialects and toolkits. We probably need a reddit or StackExchange related to Pascal
Title: Re: The Important FpGUI Widgeset interface developement
Post by: jwdietrich on December 03, 2013, 09:46:42 pm
There are in fact tags for Lazarus (http://stackoverflow.com/questions/tagged/lazarus) and Free Pascal (http://stackoverflow.com/questions/tagged/freepascal) in Stack Overflow, and the Free Pascal community has its own (quite small) forum (http://community.freepascal.org:10000/bboards/).

You are right, however, that the fragmentation is unbeneficial for both users and the language. Although the Free Pascal community has considerable overlap with the Lazrus community, it would require some efforts to convince both sides to join forces for a unified forum system.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on December 04, 2013, 12:03:44 am
I think a case can be made for having both fpGUI and MSEIde+MSEGui on this forum, mainly because users  of those toolkits are also users of Lazarus.

As far as I know there is not a direct correlation.  Yes, Lazarus backend FPGUI is somewhat on-topic, the rest is off-topic IMHO.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: BigChimp on December 05, 2013, 08:42:32 am
it would require some efforts to convince both sides to join forces for a unified forum system.
Agreed. While I also think it's a good thing, I'm certainly not holding my breath...
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on December 05, 2013, 10:22:39 am
it would require some efforts to convince both sides to join forces for a unified forum system.
Agreed. While I also think it's a good thing, I'm certainly not holding my breath...

IIRC It's not just taking the decision.  The current FPC community accounts double as mantis accounts.
Cleaning out the old FPC community server would mean people
would have to create new mantis accounts.

To be honest, I check the FPC community less than once a month. And I'm FPC coremember :-)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: BigChimp on December 05, 2013, 12:00:06 pm
Ah ok, I understand. Still, I suppose disallowing new posts on the existing FPC forum, redirecting to forum.lazarus.freepascal.org, adding a new FPC section edit: to the Lazarus forum could work I suppose?
You'll still keep separate registration for mantis...

OTOH I do understand that this will take planning, effort etc and it's all done by volunteers.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 05, 2013, 02:10:22 pm
@ BigChimp, @ Marcov.

Nice to feel that you are not in war against other widgetset that lcl.

So, i want to ask if it could be possible to allow Lazarus to be single-instance. I mean : if you use command line : startlazarus myproject.pas and if Lazarus is already loaded, that the already loaded Lazarus is used for open the file, not open a new instance of Lazarus. Like gedit or notepad does...

Many thanks.

Title: Re: The Important FpGUI Widgeset interface developement
Post by: BigChimp on December 05, 2013, 02:26:32 pm
No idea what may have given you that idea... but well...

Apart from that: patches are surely welcome...
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 05, 2013, 02:51:38 pm
Quote
patches are surely welcome...

I will contribute for it with pleasure but...

Could you give me some light how to render Lazarus one-instance only ?
And what source-code must i explore for the parameters-command line of startlazarus ?

Many thanks.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: BigChimp on December 05, 2013, 02:56:06 pm
Sorry, no idea. Haven't looked in that area.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: marcov on December 05, 2013, 03:07:21 pm
Quote
patches are surely welcome...

I will contribute for it with pleasure but...

Could you give me some light how to render Lazarus one-instance only ?
And what source-code must i explore for the parameters-command line of startlazarus ?

Many thanks.

Usually you do the same check as singleinstance apps (that disallow multiple starts), e.g. with a named semaphore.

Then if you detect the other app, you send it a message over some IPC means and exit. The main (original) app then gets a message to open.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: avra on December 05, 2013, 03:10:13 pm
Could you give me some light how to render Lazarus one-instance only ?

This might help making Lazarus single instance:
http://forum.lazarus.freepascal.org/index.php/topic,21773.msg127827.html#msg127827

You will probably need to activate this new feature only after some specific parameter exists:
http://forum.lazarus.freepascal.org/index.php/topic,14383.msg76100.html#msg76100
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 05, 2013, 04:23:39 pm
@ Avra : many thanks.  ;D
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 13, 2013, 12:55:11 pm
Quote
patches are surely welcome...

Hello.

I have try to find the Lazarus code for opening-saving-closing files or projects but i do not find what source.pas do that things.

Do you know what source.pas has open-save-close procedures declarations?

Many thanks.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: howardpc on December 13, 2013, 03:45:30 pm
Do you know what source.pas has open-save-close procedures declarations?

I think the best place for you to start is $LazarusDir\ide\main.pp
If you look at the methods of TMainIDE you'll see such as
  AskSaveProject
  DoOpenFileInSourceEditor
  DoNewFile
  DoNewOther
  DoSaveEditFile
etc.
These will lead you to other relevant units/procedures.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 14, 2013, 10:59:43 am
@  howardpc : many thanks.  ;D
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 15, 2013, 07:02:17 pm
Hello.  :D

fpGUI uiDesigner is now totally integrable into Lazarus.
A patch is added for Lazarus IDE.

You may open your fpgui files with Lazarus.
If the file is fpgui type, the fpgui uidesigner_ext will be used.

How to install it :

- 1) Install fpGUI.
If not already done, go to fpgui site (else go to -2).

=> github.com/graemeg/fpGUI/tree/master (http://github.com/graemeg/fpGUI/tree/develop)

-Click on Download ZIP button, on right side...
-Unzip it.

Then Load Lazarus:
- in Package, Open Package (.lpk)
Choose :
- for Windows : fpGUI-develop/src/corelib/gdi/fpgui_toolkit.lpk
- for Linux : fpGUI-develop/src/corelib/x11/fpgui_toolkit.lpk
Compile the package.

-2) Compile uidesigner_ext
- Go to site:

>> github.com/fredvs/uidesigner_ext (http://github.com/fredvs/uidesigner_ext)

-Click on Download ZIP button, on right side...
-Unzip it.
- Compile uidesigner_ext.lpr

-3) Run uidesigner_ext and config it.

- Run uidesigner_ext
- Click on Settings
- Enable "IDE integration into Lazarus"
- Close uidesigner_ext.

-4) Apply Lazarus patch

- Copy /uidesigner_ext/patch/Lazarus/main.pp into /lazarus/ide
- Rebuild the Lazarus IDE.

-5) Enjoy it !

- Load fpg-files ( pascal files, like *.pas, *.lpr,) from Lazarus Open menu...
PS : If you load a project file *.lpi, you may open his pascal correspondent file (usualy *.lpr file) to load uidesigner.

That's all.... :)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on December 27, 2013, 12:07:14 pm
Hello everybody.  ;)

Now uidesigner_ext has his "undo" feature (like Delphi Form Designer)...
There are the "traditional" undo-redo feature + undo list (you may choose your
undo).

In setup you may choose the number of undo's...

Download it here :

>>> https://github.com/fredvs/uidesigner_ext (https://github.com/fredvs/uidesigner_ext)

Binary for Linux 64 and Windows 32 are in package...

Explanation how to install fpGUI is here :

=> http://forum.lazarus.freepascal.org/index.php/topic,12481.msg136323.html#msg136323 (http://forum.lazarus.freepascal.org/index.php/topic,12481.msg136323.html#msg136323)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: BigChimp on January 11, 2014, 04:31:09 pm
fpGUI uiDesigner is now totally integrable into Lazarus.
A patch is added for Lazarus IDE.
Please post patches on the bugtracker. Thanks.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: JuhaManninen on January 12, 2014, 01:37:41 am
Could you give me some light how to render Lazarus one-instance only ?

The plan is to implement it for Lazarus. It may require moving Luiz Americo's UniqueInstance component to LCL first. See:
  http://bugs.freepascal.org/view.php?id=8051
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 29, 2014, 06:27:44 pm

fpGUI uiDesigner is now totally integrable into Lazarus.
A patch is added for Lazarus IDE.
.
.
-4) Apply Lazarus patch[/b]
- Copy /uidesigner_ext/patch/Lazarus/main.pp into /lazarus/ide
- Rebuild the Lazarus IDE.
.
.
Tried to follow your method, but something is wrong with the new main.pp.

The build stop with this error:
/home/cn/udvikling/lazarus/ide/main.pp(10507,32) Error: Identifier not found "GetSyntaxHighlighterCaption"

Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 29, 2014, 08:57:45 pm
Hello Chmobel.

Quote
/home/cn/udvikling/lazarus/ide/main.pp(10507,32) Error: Identifier not found "GetSyntaxHighlighterCaption"

What Lazarus version do you use ?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 29, 2014, 09:16:35 pm
Yep, indeed, main.pp has changed here too in 1.2 RC 2.

I get that error :

Quote
/usr/share/lazarus/1.2RC2/ide/compiler.pp(33,6) Error: Illegal unit name: Compiler

I will check that (but how to retrieve main.pp of other versions ?).

Thanks to note it.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 29, 2014, 11:03:13 pm
Hello.

Here in attach, main.pp patched for Lazarus 1.2RC2.

The main.pp in uidesigner_ext is for Lazarus 1.0.14.

I will update the uidesigner_ext package asap.

Thanks
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 29, 2014, 11:53:29 pm
Hello Chmobel.

What Lazarus version do you use ?
1.08

But as I can understand from the following posts, it has to be 1.14 or 1.2?

Regards
Christian
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 30, 2014, 12:41:16 am
Quote
But as I can understand from the following posts, it has to be 1.14 or 1.2?

You may use all Lazarus version...  ;)

If you give me, in attachment, your original main.pp, i will do the patch for you (and give me your Lazarus version too, so i will add it in uidesigner_ext package...)

To know your Lazarus version, click on Help, then on About Lazarus..

[EDIT] Till now, only patch for Lazarus version 1.0.14 (the official download version) and 1.2RC2 are in package.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 30, 2014, 10:45:53 am
If you give me, in attachment, your original main.pp, i will do the patch for you (and give me your Lazarus version too, so i will add it in uidesigner_ext package...)
That is very kind of you  :)

It is version 1.08

Regards
Christian
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 30, 2014, 01:32:50 pm
Hello Christian.

Here, in attach, main.pp for Lazarus v 1.0.8.

If you use it, could you give me the result because i do not have Lazarus 1.0.8 to test it.

Many thanks.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 30, 2014, 06:18:35 pm
Hello Christian.

Here, in attach, main.pp for Lazarus v 1.0.8.

If you use it, could you give me the result because i do not have Lazarus 1.0.8 to test it.

Many thanks.
Hi Fred.

Thanks for the new file.

I can compile the IDE now without problems, but when I then open a fpg project, the UI Designer Ext opens, but then stops again immediately.

And then it is not possible to execute it again, and if I do a ps -aux | grep uidesign I can see the process as defunct.

Regards
Christian
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 30, 2014, 09:04:42 pm
Quote
I can compile the IDE now without problems, but when I then open a fpg project, the UI Designer Ext opens, but then stops again immediately.

OK, i have seen in Lazarus download that version 1.0.8. is still there...

I will download and install it and try the main.pp,

See you later.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 30, 2014, 09:52:11 pm
@  chrnobel :

I have installed Lazarus version 1.0.8 and compil ide with the main.pp i give in attach.

For me it works like it has to do... :-X

When you have re-compil IDE, close it and reload it, maybe it does not work directly after compil...

Have you enable "Integration into Lazarus" in uidesigner_ext settings ?

You do not have to load uidesigner_ext before loading Lazarus (Open-File in Lazarus will do it..)

What system do you use (Linux 32/64, Windows ?) ?

[EDIT] The uidesigner will be loaded only if the code is fpGUI-type.
So if you load only MyProject.lpi, it will not work.

Have you try to open fpGUITemplate.lpr or fpGUIDirectTemplate.pas in /uidesigner_ext/template ?
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 30, 2014, 11:56:58 pm

What system do you use (Linux 32/64, Windows ?) ?

[EDIT] The uidesigner will be loaded only if the code is fpGUI-type.
So if you load only MyProject.lpi, it will not work.

Have you try to open fpGUITemplate.lpr or fpGUIDirectTemplate.pas in /uidesigner_ext/template ?
Hi Fred - thanks a lot, I managed to get it to work now.

It seems like I have misunderstood something, as I was trying to open some of the example files from fpGUI, then nothing happens.

But if I open the fpGUITemplate as you suggest, it works.

So maybe a stupid question (I played a little bit with fpGUI a couple of years ago, but otherwise I am newbee with regards to that), what defines the project as fpGUI code?

Btw, I am using Linux 32.

Regards
Christian
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 31, 2014, 12:00:25 am
Quote
So maybe a stupid question (I played a little bit with fpGUI a couple of years ago, but otherwise I am newbee with regards to that), what defines the project as fpGUI code?

Yep, you have to load, in all fpGUI examples , the *.lpr files ( not the *.lpi ).

You may load first the *.lpi, but then, to load uidesigner, the files with pascal code.

*.lpi files are not pascal type.

[EDIT] uidesigner will try to load form if he find some typicaly fpGUI code, like {@VFD_HEAD_BEGIN: MainForm}  ,   {@VFD_BODY_BEGIN: MainForm} ,   etc...
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on January 31, 2014, 12:20:25 am
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.)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel on January 31, 2014, 09:46:56 am
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.)
Fair enough, you have been very kind - many thanks for the help.

Now I can open the examples by opening the .lpr file from the File menu (instead of opening the project from the Project menu as one tends to do).

BTW, is it possible to make a form without the title bar?

Regards
Christian
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS 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/ (http://opensoft.homeip.net/webnews/)

Many thanks.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme 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.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel 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
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel 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.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS 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...
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS 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  ;)

Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel 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
Title: Re: The Important FpGUI Widgeset interface developement
Post by: chrnobel 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
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme 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 (http://fpgui.sourceforge.net/apidocs/index.html)
This is the URL listed in fpGUI's homepage... http://fpgui.sourceforge.net (http://fpgui.sourceforge.net)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme 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.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS 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

Title: Re: The Important FpGUI Widgeset interface developement
Post by: tatamata 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
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS 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 (http://forum.lazarus.freepascal.org/index.php/topic,12481.msg136323.html?PHPSESSID=e01a2bcbfd427d57004841e50cb6079d#msg136323)
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Graeme 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.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: tatamata 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.
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Paul Breneman on February 17, 2014, 05:38:11 pm
There are *very* easy ways to try fpGUI at these two sites:
  www.CtrlTerm.com
  www.TurboControl.com/easyfpgui.htm
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Roland Chastain on February 23, 2014, 01:02:16 pm
There are *very* easy ways to try fpGUI at these two sites:
  www.CtrlTerm.com
  www.TurboControl.com/easyfpgui.htm

Hello sir ! The demo programs are beautiful, and the way the packages are build is also an instructive example. Thank you very much !
Title: Re: The Important FpGUI Widgeset interface developement
Post by: Fred vS on February 24, 2014, 09:36:00 pm
@ Paul Breneman : many thanks for ARM systems demos.  ;)
TinyPortal © 2005-2018