Lazarus

Programming => Widgetset => Other => Topic started by: dieselnutjob on April 08, 2014, 10:57:34 pm

Title: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 08, 2014, 10:57:34 pm
I have been developing a complex piece of software for some time, but the interesting thing is that the gui is not complex at all.  Basically it polls functions in another unit looking for text to slap into a memo or a gridlist, and it sends requests to functions if the user clicks on a button.

The other unit is actually in a different thread so that users can go mental on the gui and it won't stall the main logic of the software (it communicates with another device so I can't have it freeze up).

I haven't changed the gui for a long time, all my work these days is on the backend protocols in the non gui units.

Today I started having a play with fpgui.  I got it working on windows vista.  I got it working on Linux.  I'm quite impressed and I think it would be a good fit for my software as it only uses a few buttons, memos and comboboxes.

I like the fact that it doesn't need gtk or qt

However I don't own a Mac.  I will have to borrow a Mac to compile and test.  My current software worked on a mac last time I checked.

Is there anything that will be a problem about fpgui on a Mac?  My customers probably aren't that bothered what it looks like as long as it works.

Will a windows app compiled on Vista or 7 with fpgui also work if the .exe is given to a customer with Windows 98 ( I have some )?

thanks for any opinions, Philip
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Fred vS on April 08, 2014, 11:10:03 pm
Quote
Is there anything that will be a problem about fpgui on a Mac?  My customers probably aren't that bothered what it looks like as long as it works.

Will a windows app compiled on Vista or 7 with fpgui also work if the .exe is given to a customer with Windows 98 ( I have some )?

fpGUI:
Tested on OSX => no problem.
Tested compiled on Win7 and run on Win98/Vista/2000 =>  no problem.
Tested on Linux 32 and 64 bit => no problem.
Tested on FreeBSD => No problem:

fpGUIlib:
Tested with Java/Android => no problem.
Tested with Python => no problem.
Tested with CNet => no problem.
Tested with Delphi => no problem.
Tested with Basic => no problem.

 ;)
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 08, 2014, 11:19:03 pm
thanks, that is encouraging

another question

should I be looking at custom drawn controls?  I only first read about it 10 minutes ago. Seems to have similar advantages.

easier or harder to do than fpgui?
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Fred vS on April 08, 2014, 11:30:32 pm
Quote
should I be looking at custom drawn controls?  I only first read about it 10 minutes ago. Seems to have similar advantages.

fpGUI is totally independent and does not need LCL.
fpGUI is 100 % pure fpc from a to Z.
Once compiled, your application does not need any dependencies.
The size of your exe will be less than 1/2 the size of equivalent LCL application.

Quote
easier or harder to do than fpgui?

fpGUI is really easy.
Hum, Custom Draw maybe too, i do not know... :-X
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 08, 2014, 11:47:30 pm
will I still need "Apple Developer Tools" ?
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: CaptBill on April 09, 2014, 12:18:42 am
thanks, that is encouraging

another question

should I be looking at custom drawn controls?  I only first read about it 10 minutes ago. Seems to have similar advantages.

easier or harder to do than fpgui?

If my understanding is correct, FpGui/MseIde and 'custom drawn' are essentially doing the same thing. They both are 'LCL-less' drawing. The Custom Draw route is a more low level approach (no ide), where FpGui and MseIde are providing you with a custom ide with their own components.

 
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 09, 2014, 12:28:15 am
is MSEIDE using fpgui under the hood? or something else?

on the MSEIDE site says it only works in WIndows / Linux but if it is just fpgui underneath....
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: CaptBill on April 09, 2014, 01:03:22 am
is MSEIDE using fpgui under the hood? or something else?

on the MSEIDE site says it only works in WIndows / Linux but if it is just fpgui underneath....

No, MseIde and Fpgui are separate IDE's and implement their own 'custom drawn' implementation. MseIde is much is the more mature implementation and was here before Fpgui. MseIde is quite impressive. Industrial grade stuff.

Fpgui is an MseIde equivalent which is breaking new ground on the graphics side. Fpgui is using Aggpas as a backend for drawing, which does sub-pixel accuracy drawing. Stunning graphics like Photoshop quality. Sort of bare-metal, direct to X11 compositing. No heavy middle layers (Gtk/Qt).

Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Leledumbo on April 09, 2014, 05:54:39 am
Quote
is MSEIDE using fpgui under the hood? or something else?
No, AFAIK fpGUI takes a bit inspiration (or maybe some code) a long time ago from mseGUI, but today they're totally different.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 11, 2014, 03:05:00 pm
If my understanding is correct, FpGui/MseIde and 'custom drawn' are essentially doing the same thing. They both are 'LCL-less' drawing.
Yes and No.  fpGUI and MSEgui are independent projects with no dependencies on LCL. They both talk directly to low level OS API's, but have a developer friendly API hiding the need to learning the low level OS API's. They included a full set of widgets/controls to write advance applications too.

"Custom Drawn" (if I am referring to the same thing you are) is custom drawing using LCL's Canvas class - thus a dependency on LCL. There was an attempt to make a LCL-CustomDrawn widgetset (widgets/controls like buttons, comboboxes etc), but it didn't get very far, and last I checked, what was there was still very buggy and alpha state.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 11, 2014, 03:08:31 pm
is MSEIDE using fpgui under the hood? or something else?
No, MSEide uses its related MSEgui framework. The full project name is actually "MSEide+MSegui".

Quote
on the MSEIDE site says it only works in WIndows / Linux but if it is just fpgui underneath....
MSEide+MSEgui only targets 32-bit Windows and Linux as the official supported platforms. FreeBSD, MacOSX and 64-bit are not supported.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 11, 2014, 03:17:45 pm
MseIde and Fpgui are separate IDE's and implement their own 'custom drawn' implementation.
This is not correct.

MSEide is an IDE. MSEgui and fpGUI are graphics/widgetset frameworks that are 100% implemented in Object Pascal and supply a full range of custom drawn widgets/controls. fpGUI also includes a customised AggPas backend, which gives advanced 2D graphics capabilities and can completely bypass the graphics painting requirements of X11 or GDI.

fpGUI doesn't force dependency on any specific IDE - that is one of its design goals. You can develop your fpGUI-based applications using Lazarus IDE, MSEide, Geany, Notepad, gEdit, vi etc. Your choice!  Yes, fpGUI includes an IDE application, but that is more of an "advanced demo application" - meant to demonstrate more complex usage of fpGUI (because I can't share my commercial work with the public). Maybe someday the demo IDE application will become a fully functioning IDE, but that is not its current intent. fpGUI also includes other handy applications like DocView (help file viewer) and UIDesigner (visual forms designer) - but again, you are not forced to use these.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 11, 2014, 03:20:10 pm
No, AFAIK fpGUI takes a bit inspiration (or maybe some code) a long time ago from mseGUI, but today they're totally different.
No not at all. I worked on fpGUI for about 2 years before I even heard of MSEide+MSEgui.  I take my fpGUI inspiration from many places, but mostly from Qt and Java.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: mse on April 11, 2014, 03:22:40 pm
MSEide+MSEgui officially supports Linux X86-64 since version 3.0.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 11, 2014, 03:24:48 pm
MSEide+MSEgui officially supports Linux X86-64 since version 3.0.
Good to know, thanks for clarifying that.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: marcov on April 11, 2014, 04:54:02 pm
Note that the FPC 2.6.x series formally isn't supported for win98 (though afaik there are 3rd party builds that are)
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 12, 2014, 10:52:30 am
I don't need the compiler or an IDE to work on Windows 98.  I'm currently developing on a Vista laptop.  If I can compile on Vista or 7 and give the exe to a customer running 98 then that will be fine.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: FPK on April 12, 2014, 10:59:09 am
Quote
is MSEIDE using fpgui under the hood? or something else?
No, AFAIK fpGUI takes a bit inspiration (or maybe some code) a long time ago from mseGUI,

I think this is unlikely: fpGUI has a long history even before Graeme started to work on it. Its roots go back to the KCL being developed in 1999/2000 (?).
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: marcov on April 12, 2014, 11:17:33 am
I think this is unlikely: fpGUI has a long history even before Graeme started to work on it. Its roots go back to the KCL being developed in 1999/2000 (?).

IIRC KCL (and Kassandra the IDE) was more VCL/LCL like. Sebastian then wanted something he could bring quicker to market and was frustrated with time that it took to do somewhat useful VCL emulation and first created fpgtk. Later he generalized that a bit and added windows support and that became fpgui. That was 2000-2001 I think and kcl-kassandra before 2000.

After 2003-2004 (win32 port was added by Micha in that period) he thought Lazarus was making good progress and dropped maintaining the fp* stuff.  I don't know if fpde has been used for the main docs by Michael, or only for other projects.

fpgtk is still in the FPC tree because it was used for a few GUI utils in the FPC tree, like FPDE, the fpdoc editor. Hasn't seen any action except minimal changes to keep them running. FPDE is still in utils/fpdoc/fpde. I'm not sure if there is a package still using it, a doc editor has been integrated with Lazarus now.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: Graeme on April 12, 2014, 08:15:12 pm
I don't need the compiler or an IDE to work on Windows 98.  I'm currently developing on a Vista laptop.  If I can compile on Vista or 7 and give the exe to a customer running 98 then that will be fine.
I do exactly that, and my applications run without problems.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 12, 2014, 10:42:11 pm
after a few days of solid coding (and no divorce by some miracle) I have now converted my entire project to fpgui.
this is a project with I think over 10,000 lines of code and four different threads

one is a gui
one polls the gui to make it poll the backend and update the gui
one talks to a car (so numerous proprietary protocol stacks for different car ECUs)
one talks to the interface box between the pc and the car

so far it works fine on windows and Linux, and yes the exe is a lot smaller

I think I'm going to stick with this.  Thanks fpgui guys!

Interestingly a bug has disappeared as well.  With the normal Lazarus stuff I was getting random clicks on the first column of a stringgrid as rows were added (at least I think that is what was happening).  With fpgui the problem has disappeared.
Title: Re: fpgui on Mac OSX ? windows 98 ?
Post by: dieselnutjob on April 13, 2014, 08:51:01 pm
another mac os x question

to compile my program on Mac OS X,
I guess I install lazarus and fpc first using mac installers as normal
then open my lpi file
then I have to do "Package" then "Add Package File"
for Windows I have been opening fpgui\src\corelib\gdi\fpggui_tookit.lpk
for Linux I have been opening fpgui\src\corelib\x11\fpggui_tookit.lpk

what do I do in Mac OS Lazarus IDE?

thanks
TinyPortal © 2005-2018