Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2014-04

Wanted: OpenGL gui framework supporting Windows, Linux, Mac, Android, etc.

7 messages · 7 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

J S

It would be great to have an OpenGL gui framework for Lazarus. I see the TOpenGLControl, but would like something more ambitious.

Specifically, it would be nice to have a "TOpenGLForm" (basically an OpenGL output framebuffer along with mouse/keyboard events) and special OpenGL controls (Menus, Buttons, Editboxes, Comboboxes, Memo, etc) that can be dropped on the form in the Lazarus designer. The only system specific code needed for porting to Windows, Linux, Mac, Android, etc. would be to obtain the OpenGL context and to hook the mouse/keyboard events. All control drawing/behaviour would be shared between systems (similar to the goal of the Custom Drawn Controls, but with an OpenGL specific scope).

To be sure, this OpenGL framework would probably require its own OpenGL specific custom controls and wouldn't support TForm and most of the current windowed controls.

I am unsure how to make Lazarus support a non TCustomForm-derived object ("TOpenGLForm"), and be able to drop controls onto it in the designer. Any opinions on the best way to do this?

Thanks,
-JT

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20140424/a14e5228/attachment.html>

Reply by email

Hans-Peter Diettrich
to J S: It would be great to have an OpenGL gui framework for Lazarus. I see the TOpenGLControl,…
It would be great to have an OpenGL gui framework for Lazarus. I see the TOpenGLControl, but would like something more ambitious.

[...]

To be sure, this OpenGL framework would probably require its own OpenGL specific custom controls and wouldn't support TForm and most of the current windowed controls.

I don't see how and why somebody would use such a framework, as long as no component library (like LCL) is implemented for it. Using the LCL requires that the components are of the basic types (TComponent, TControl, TCustomForm...).

I am unsure how to make Lazarus support a non TCustomForm-derived object ("TOpenGLForm"), and be able to drop controls onto it in the designer. Any opinions on the best way to do this?

Perhaps msegui/mseide are a better framework for your project.

DoDi

Reply by email

Michael Van Canneyt
to Hans-Peter Diettrich
Hans-Peter Diettrich wrote 12 lines
J S schrieb: > It would be great to have an OpenGL gui framework for Lazarus. I see the > TOpenGLControl, but would like something more ambitious. [...] > To be sure, this OpenGL framework would probably require its own OpenGL > specific custom controls and wouldn't support TForm and most of the current > windowed controls. I don't see how and why somebody would use such a framework, as long as no component library (like LCL) is implemented for it. Using the LCL requires that the components are of the basic types (TComponent, TControl, TCustomForm...).

This is not a correct answer. Having the full LCL with all it's needs doesn't make sense on all platforms.

Think web-browser for example.
The iOS controls by Joost Van der Sluis for example, work like this. So there are use-case.

Firemonkey started out like this as a Lazarus project.

The OP may check out the iOS controls by Joost van der sluis and use it as inspiration.

Michael.

Reply by email

Michael Schnell
to Hans-Peter Diettrich: [...] I don't see how and why somebody would use such a framework, as long as no…
Hans-Peter Diettrich wrote 6 lines
I don't see how and why somebody would use such a framework, as long as no component library (like LCL) is implemented for it. Using the LCL requires that the components are of the basic types (TComponent, TControl, TCustomForm...).

Using e.g. TTimer does make a lot of sense for - say - "headless" embedded projects, that don't use any form of TForm.

-Michael

Reply by email

Graeme Geldenhuys
to J S: It would be great to have an OpenGL gui framework for Lazarus. I see the TOpenGLControl,…
J S wrote
Specifically, it would be nice to have a "TOpenGLForm" (basically an OpenGL output framebuffer along with mouse/keyboard events) and special OpenGL controls (Menus, Buttons, Editboxes, Comboboxes, Memo,

For fpGUI Toolkit there is an experimental OpenGL backend. It was created by somebody else, but I'm sure I can track down the code for you if you want.

Regards,
- Graeme -

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

Reply by email

Felipe Monteiro de Carvalho
to Graeme Geldenhuys

The OpenGL in Android is OpenGL ES which very different from the desktop OpenGL.

Felipe Monteiro de Carvalho

Graeme Geldenhuys wrote 23 lines
On 2014-04-24 07:43, J S wrote: > Specifically, it would be nice to have a "TOpenGLForm" (basically an > OpenGL output framebuffer along with mouse/keyboard events) and > special OpenGL controls (Menus, Buttons, Editboxes, Comboboxes, Memo, For fpGUI Toolkit there is an experimental OpenGL backend. It was created by somebody else, but I'm sure I can track down the code for you if you want. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Felipe Monteiro de Carvalho

Reply by email