Recent

Author Topic: fpGUI Toolkit v1.2 release  (Read 13586 times)

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
fpGUI Toolkit v1.2 release
« on: August 20, 2014, 03:37:56 am »
fpGUI v1.2 is available
I'm glad to announce the 1.2 release of fpGUI. This has been over a
years worth of development, so a complete list of changes will be
to big to list here.

For more details, run any of the following commands:

  git log --oneline v1.0..v1.2       (console viewer)
or
  gitk v1.0..v1.2                    (gui viewer)


Downloads
An archived source download of fpGUI, and pre-built binaries for
DocView (fpGUI's Documentation Viewer) can be found at the following
URL:

  http://sourceforge.net/projects/fpgui/files/fpGUI/1.2/

...or clone the source code repository by using any of the following
commands:

from SourceForge:
  git clone git://git.code.sf.net/p/fpgui/code fpgui

from GitHub:
  git clone git://github.com/graemeg/fpGUI.git


The 'master' branch contains the latest released fpGUI (v1.2), and the
'develop' branch contains the latest development work on fpGUI.


Documentation
Pre-built documentation in the highly optimized INF file format
(for use with DocView) will be available for download shortly. A single
archive of around 2MB in size. The documentation archive will contain
the following help files:

  • Class documentation for fpGUI Toolkit
  • The Free Pascal Language Reference
  • FPC Runtime Library (rtl) help
  • FPC Free Component Library (fcl) help

The download URL is:

  http://sourceforge.net/projects/fpgui/files/fpGUI/Documentation/

If you want integrated help in your IDE or Programmer Editor of
choice, the following URL describes how to do it:

  http://fpgui.sourceforge.net/docview_ide_integration.shtml


For more details, please visit the fpGUI home page:

  http://fpgui.sourceforge.net


Regards,
  - Graeme -

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

ggallo

  • New Member
  • *
  • Posts: 13
Re: fpGUI Toolkit v1.2 release
« Reply #1 on: August 22, 2014, 08:58:24 am »
I'd like to try fpGUI, but I can't compile into Lazarus IDE. If I choose 'fpGUI(alpha)' in the IDE build window, I get various errors on build. The current documentation on fpGUI Lazarus integration looks outdated for this version. The error changes when I modify how the folders copied into LCL fpGUI directory.

Of course I can compile through the lpk file, but it seems it does nothing after adding it to my project.

So, how can I try it in my project? First on Win32, but I compile the same on Linux, too.

My environment: Lazarus 1.2.2 win32, FPC 2.6.4, Windows 7 - 64 bit
Windows 7 64 bit | openSuSE 12.3 32 bit
Lazarus 1.2.4 | fpc 2.6.4 | Win32/64 | Linux gtk2

Mike.Cornflake

  • Hero Member
  • *****
  • Posts: 1251
Re: fpGUI Toolkit v1.2 release
« Reply #2 on: August 22, 2014, 10:05:10 am »
I'd like to try fpGUI, but I can't compile into Lazarus IDE. If I choose 'fpGUI(alpha)' in the IDE build window, I get various errors on build. The current documentation on fpGUI Lazarus integration looks outdated for this version. The error changes when I modify how the folders copied into LCL fpGUI directory.

Of course I can compile through the lpk file, but it seems it does nothing after adding it to my project.

So, how can I try it in my project? First on Win32, but I compile the same on Linux, too.

My environment: Lazarus 1.2.2 win32, FPC 2.6.4, Windows 7 - 64 bit

Graeme is referring to his own toolkit (see his signature or http://fpgui.sourceforge.net/), not the widgetset within Lazarus.

The following post may help.  http://forum.lazarus.freepascal.org/index.php/topic,25296.msg154981.html#msg154981

Mind you, I'm interested in the answers to your question as well.  I've never been clear on the state, history or functionality of the fpGui widgetset.  Seems to me there is overlap in the design goals of the CustomDrawn widgetset and the fpGUI widgetset.
« Last Edit: August 22, 2014, 10:08:16 am by Mike.Cornflake »
Lazarus Trunk/FPC Trunk on Windows [7, 10]
  Have you tried searching this forum or the wiki?:   http://wiki.lazarus.freepascal.org/Alternative_Main_Page
  BOOKS! (Free and otherwise): http://wiki.lazarus.freepascal.org/Pascal_and_Lazarus_Books_and_Magazines

Leledumbo

  • Hero Member
  • *****
  • Posts: 8279
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: fpGUI Toolkit v1.2 release
« Reply #3 on: August 22, 2014, 10:33:48 am »
Mind you, I'm interested in the answers to your question as well.  I've never been clear on the state, history or functionality of the fpGui widgetset.  Seems to me there is overlap in the design goals of the CustomDrawn widgetset and the fpGUI widgetset.
Nope, custom drawn is tightly dependent on LCL, despite it implements rendering itself. fpGUI OTOH, can be used standalone. The LCL widgetset is just an effort to make it a part of LCL backend family.

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8884
  • FPC developer.
Re: fpGUI Toolkit v1.2 release
« Reply #4 on: August 22, 2014, 11:16:06 am »
  I've never been clear on the state, history or functionality of the fpGui widgetset. 

The history of fpgui goes back to circa 2000, Lazarus had no other backend then GTK1, and the delphi compatibility layers hadn't really stabilized yet. There was simply too much breakage to be used in production, at least if you wanted to do projects.

Needing something fast, a former core member, Sebastian first created fpgtk which was a simple object wrapper around GTK, which he used this in his commercial projects. Sebastian had already put his own more advanced project KCL (library)/Kassandra(IDE) on hold for the same reasons. The first fpdoc (another one of Sebastian's projects iirc) editor was also based on this library.

Later he got some customers that needed windows support, so he rearchitected his library to hide widget details a bit more to become fpgui. (actually it was done ground up, but taking items from both KCL and fpgtk)

Sebastian disappeared from view for a while, but he stopped developing FPGUI, and was using Lazarus (in the 2004-2006) timeframe.

Later Graeme took development up, afaik citing mostly binary deployment on Linux reasons. That's quite a while now, and Graeme developed it longer then Sebastian (and I assume it is (a) magnitude(s) bigger now)

The fpgui LCL widgetset seems to be used mostly as a vehicle to spam the forum with fpgui advocacy (like this thread, this forum is meant for LCL backends, not independent widgetsets), since it has been alpha for a long time, without many updates.

chrnobel

  • Sr. Member
  • ****
  • Posts: 274
Re: fpGUI Toolkit v1.2 release
« Reply #5 on: August 22, 2014, 11:39:41 am »
The fpgui LCL widgetset seems to be used mostly as a vehicle to spam the forum with fpgui advocacy (like this thread, this forum is meant for LCL backends, not independent widgetsets), since it has been alpha for a long time, without many updates.
I see no reason for fighting one and each other.

The FreePascal / Lazarus / FPGui /MSE community is far to small compared to the cruel C-whatever world outside to have internal fights, and actually all parts can benefit, as one does not exclude the other.

If I eg. are making a FPGui project I do still rely on Lazarus as my development IDE, so I see a big advantage in getting the best from two worlds.

It's not black or white.

Mike.Cornflake

  • Hero Member
  • *****
  • Posts: 1251
Re: fpGUI Toolkit v1.2 release
« Reply #6 on: August 22, 2014, 11:42:10 am »
The history of fpgui goes back to circa 2000, Lazarus had no other backend then GTK1, and the delphi compatibility layers hadn't really stabilized yet. There was simply too much breakage to be used in production, at least if you wanted to do projects.
Interesting post.  What I take away from that is the fpGUI LCL widgetset isn't recommended for serious use, and is probably still available in case someone wants to pick up the concept and run with it.  Until then, as you say - it's alpha.

Quote
The fpgui LCL widgetset seems to be used mostly as a vehicle to spam the forum with fpgui advocacy (like this thread, this forum is meant for LCL backends, not independent widgetsets), since it has been alpha for a long time, without many updates.

Well, you're a moderator, it's up to you how you deal with this.  Personally I'm happy that fpGUI and other fpc related projects are discussed in these forums, they're part of the wider landscape we live in.  Should you be moving this thread to a more relevant sub-forum (or even creating that sub-forum)?   I'm definitely not happy with fpGUI posts being regarded as spam, but I suspect you're just talking about this particular sub-forum.
Lazarus Trunk/FPC Trunk on Windows [7, 10]
  Have you tried searching this forum or the wiki?:   http://wiki.lazarus.freepascal.org/Alternative_Main_Page
  BOOKS! (Free and otherwise): http://wiki.lazarus.freepascal.org/Pascal_and_Lazarus_Books_and_Magazines

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: fpGUI Toolkit v1.2 release
« Reply #7 on: August 22, 2014, 12:46:16 pm »
like this thread, this forum is meant for LCL backends, not independent widgetsets
For your information, I didn't start the LCL-fpGUI widgetset, that was started by Andrew Haines, and then early contributions by Felipe.

Posting about a new fpGUI releases here doesn't seem out of place to me, because it has direct impact on the LCL-fpGUI widgetset.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: fpGUI Toolkit v1.2 release
« Reply #8 on: August 22, 2014, 12:55:45 pm »
I'd like to try fpGUI, but I can't compile into Lazarus IDE. If I choose 'fpGUI(alpha)' in the IDE build window, I get various errors on build.
OK, you are referring to the LCL-fpGUI widgetset. The LCL-fpGUI widgetset is not ready for building the Lazarus IDE itself. I've implement most of the widgets on Lazarus's Standard component palette, and a few others. But much works still needs to go into the LCL-fpGUI widgetset before it can be a usable Lazarus widgetset - hence the "alpha" label.

Quote
The current documentation on fpGUI Lazarus integration looks outdated for this version. The error changes when I modify how the folders copied into LCL fpGUI directory.
Could you give me a link to the documentation you are referring too, and I'll try and update it where possible.

Quote
Of course I can compile through the lpk file, but it seems it does nothing after adding it to my project.
I don't really develop the Lazarus LCL-fpGUI widgetset, though I do contribute here and there to it, to make sure it works with the latest fpGUI changes. I mainly develop the stand-alone fpGUI Toolkit itself. You can use Lazarus IDE to build and compile pure fpGUI application, thus no reliance on LCL. But that is probably better discussed in the fpgui.support newsgroup [http://fpgui.sourceforge.net/support.shtml], or in a other forum here. fpGUI contains a Lazarus add-on package which when installed into Lazarus IDE, registers a new Application type for building pure fpGUI applications.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: fpGUI Toolkit v1.2 release
« Reply #9 on: August 22, 2014, 01:11:10 pm »
I've never been clear on the state, history or functionality of the fpGui widgetset.  Seems to me there is overlap in the design goals of the CustomDrawn widgetset and the fpGUI widgetset.
The LCL-fpGUI was started long before the LCL-CustomDrawn widgetset. The latter use LCL (canvas, messages etc) to render the widgets. The LCL-fpGUI widgetset is a LCL interface for using fpGUI Toolkit (just like LCL-GTK2 uses GTK, or LCL-QT uses Qt etc).

As I mentioned, I don't really develop LCL-fpGUI, I rather concentrate on developing fpGUI Toolkit itself. But I do make sure LCL-fpGUI compiles with the latest fpGUI releases, so if others want to take up the challenge in completing LCL-fpGUI, it's just that little bit easier.

The LCL-fpGUI currently has all the widgets on Lazarus IDE's Standard component palette implemented (excluding the TLabel), and a few from the other component palettes. It's really not that hard to implement, but I'll leave that as a challenge for others to complete. I believe the LCL-fpGUI would be a good contribution to the Lazarus project when complete, because everything will be implemented in Object Pascal, so bugs in LCL or fpGUI can be addressed much quicker, and there would be no dependency any large 3rd party libraries. fpGUI is also very memory efficient.

The common thing between LCL-fpGUI and LCL-CustomDrawn is that both are implemented in 100% Object Pascal, and all widgets/components are custom painted. The fpGUI Toolkit itself is fully functional though, and used in multiple commercial application. So only the LCL interface needs to be implemented. The LCL-CustomDrawn is still far from complete, and lots of basic functionality/components still need to be implemented, and then the LCL interface added. So the Lazarus CustomDrawn widgets are definitely not usable in real world applications yet.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: fpGUI Toolkit v1.2 release
« Reply #10 on: August 22, 2014, 01:12:13 pm »
If I eg. are making a FPGui project I do still rely on Lazarus as my development IDE, so I see a big advantage in getting the best from two worlds.
I fully agree with that statement.
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

vfclists

  • Hero Member
  • *****
  • Posts: 827
    • HowTos Considered Harmful?
Re: fpGUI Toolkit v1.2 release
« Reply #11 on: August 22, 2014, 01:12:32 pm »
I'd like to try fpGUI, but I can't compile into Lazarus IDE. If I choose 'fpGUI(alpha)' in the IDE build window, I get various errors on build. The current documentation on fpGUI Lazarus integration looks outdated for this version. The error changes when I modify how the folders copied into LCL fpGUI directory.

Of course I can compile through the lpk file, but it seems it does nothing after adding it to my project.

So, how can I try it in my project? First on Win32, but I compile the same on Linux, too.

My environment: Lazarus 1.2.2 win32, FPC 2.6.4, Windows 7 - 64 bit

There is clearly some confusion here between the fpGUI Toolkit itself and the LCL-fpGUI widgetset backend for Lazarus.

fpGUI itself is like using GTK or QT directly in FreePascal without using the Lazarus libraries, ie you do everything in source and use Lazarus for compiling the Pascal source without any GUI building support.

LCL-fpGUI is using the LCL with fpGUI as the means for drawing the controls and if it is fully implemented, it should be possible to switch over a Lazarus GUI program from Qt/GTK/Carbon whatever to fpGUI just by changing the target in the IDE.

ie you can use the Lazarus GUI builder to place the controls and set the properties in the IDE and decide whether to build a Qt or GTK program.

At least that is how I understand it.

The difference IS confusing to a newcomer.

Windows - Lazarus 1.0.8/FPC 2.6.0
Linux - Lazarus 1.4.4 /FPC 2.6.4

Graeme

  • Hero Member
  • *****
  • Posts: 1430
    • Graeme on the web
Re: fpGUI Toolkit v1.2 release
« Reply #12 on: August 22, 2014, 01:17:02 pm »
At least that is how I understand it.
Your understanding is 100% correct, thanks for explaining it so well.

But like you mentioned, many seem to get confused between LCL-fpGUI (Lazarus's LCL using fpGUI to render widgets) and fpGUI Toolkit itself (comparable to Qt, GTK2 etc frameworks).
--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

ggallo

  • New Member
  • *
  • Posts: 13
Re: fpGUI Toolkit v1.2 release
« Reply #13 on: August 22, 2014, 01:40:17 pm »
The difference IS confusing to a newcomer.

Yes, I'm in this situation. I didn't understood for the first time that fpGUI and fpGUI-toolkit are two almost separate projects. I think that I can use fpGUI instead of Win32/64, GTK or QT, but with LCL and forms designed in Lazarus IDE.
I only wanted to try fpGUI to let my program look and work (for the GUI part) the same on Windows and Linux, too. Currently I use Win32/64 on Windows and GTK2 on Linux, and I don't want to depend on external libraries Qt needs.


Quote
The current documentation on fpGUI Lazarus integration looks outdated for this version. The error changes when I modify how the folders copied into LCL fpGUI directory.
Could you give me a link to the documentation you are referring too, and I'll try and update it where possible.

I tried with the documentation found in the Lazarus Wiki about Lazarus fpGUI Interface
I think that page is about changing interface (below LCL) for Lazarus IDE and my project to fpGUI from Win32/64 or GTK, or else.

If I understand all this topic, fpGUI is not ready to replace Win32/64, GTK or other interfaces in Lazarus IDE or any project, and fpGUI-toolkit is for applications that do not use the Lazarus GUI developer functionality, instead create GUI in code.
Windows 7 64 bit | openSuSE 12.3 32 bit
Lazarus 1.2.4 | fpc 2.6.4 | Win32/64 | Linux gtk2

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8884
  • FPC developer.
Re: fpGUI Toolkit v1.2 release
« Reply #14 on: August 22, 2014, 02:13:43 pm »
Well, you're a moderator, it's up to you how you deal with this. 

I try to avoid using moderation rights when I'm involved with the subject.
(even though the original post was actually flagged for moderator attention by some )

Quote
Should you be moving this thread to a more relevant sub-forum (or even creating that sub-forum)?   

There was a post in third party. IMHO posting here in widgetset is a severe stretch. Yes, there is LCL-fpgui, but
that doesn't really seem to be something alive.

One only sees it mentioned to justify general fpgui posts in Lazarus related boards.

Quote
I'm definitely not happy with fpGUI posts being regarded as spam, but I suspect you're just talking about this particular sub-forum.

Yes and no. In general I think the fpgui advocacy is a tad too aggressive(same for the random .INF posts in every topic about Lazarus help) I also think it is a bit too unfocussed, with too much effort going into pretending it is a substitute for Lazarus and not paying enough lipservice to its actual strengths.

Some of that is my opinion, but the posting in Lazarus list and forums with lcl-fpgui references irritates more people than just me.

Just read this thread, Graeme is happy to justify his posting with LCL-fpgui, but he doesn't support it.

 

TinyPortal © 2005-2018