digitalmars.D - Cross Platform GUI Development
- Jeroen Bollen (4/4) Mar 23 2014 Are there any tools to do this at all in Digitalmars D? All
- Gary Willoughby (3/7) Mar 23 2014 See:
- Jeroen Bollen (3/10) Mar 23 2014 I noticed Derelict also has bindings, is there a difference?
- Gary Willoughby (5/16) Mar 23 2014 The only dependencies for my Tkd GUI framework is the Tcl/Tk
- Jeroen Bollen (2/21) Mar 23 2014 I think I'll be using that then, cheers. :D
- Denis Shelomovskij (24/27) Mar 23 2014 First, I don't understand what is the problem with GTK?
- Jeroen Bollen (4/32) Mar 23 2014 The main problem I have with GTK is that it's a mess to setup on
- Denis Shelomovskij (9/20) Mar 23 2014 And you shouldn't ever do it. Just bundle GTK with your program and be
- Gary Willoughby (3/9) Mar 24 2014 or do this ^ :)
- Gary Willoughby (8/10) Mar 24 2014 The only real problem is the actual installation of GTK onto the
- Denis Shelomovskij (8/17) Mar 24 2014 Note different programs may require different GTK versions and GTK isn't...
- Jacob Carlborg (12/29) Mar 24 2014 I looks ugly on both Windows and Mac OS X. It's also an extra
- "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= (3/4) Mar 24 2014 Ableton Live does not look like Cocoa, but is the most popular
- John Colvin (5/9) Mar 24 2014 Ableton is the sort of program that you make fullscreen and then
- Jacob Carlborg (5/7) Mar 24 2014 I was mostly referring to GTK+ not being acceptable.
- Jacob Carlborg (9/13) Mar 24 2014 DWT [1] is a native cross-platform GUI for Windows and Linux (OS
Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.
Mar 23 2014
On Sunday, 23 March 2014 at 12:34:10 UTC, Jeroen Bollen wrote:Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.See: http://forum.dlang.org/thread/twlshfdigsfkphyvrixz forum.dlang.org#post-zetmofrvhgdocnsmnxip:40forum.dlang.org
Mar 23 2014
On Sunday, 23 March 2014 at 16:43:31 UTC, Gary Willoughby wrote:On Sunday, 23 March 2014 at 12:34:10 UTC, Jeroen Bollen wrote:I noticed Derelict also has bindings, is there a difference? Also, what requirements are still required for every OS?Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.See: http://forum.dlang.org/thread/twlshfdigsfkphyvrixz forum.dlang.org#post-zetmofrvhgdocnsmnxip:40forum.dlang.org
Mar 23 2014
On Sunday, 23 March 2014 at 17:27:03 UTC, Jeroen Bollen wrote:On Sunday, 23 March 2014 at 16:43:31 UTC, Gary Willoughby wrote:The only dependencies for my Tkd GUI framework is the Tcl/Tk libraries on all platforms. What i want to do though is compile Tcl/Tk myself and provide DLL's so that dependency is removed for Windows. Posix OSes usually come with Tcl/Tk already installed.On Sunday, 23 March 2014 at 12:34:10 UTC, Jeroen Bollen wrote:I noticed Derelict also has bindings, is there a difference? Also, what requirements are still required for every OS?Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.See: http://forum.dlang.org/thread/twlshfdigsfkphyvrixz forum.dlang.org#post-zetmofrvhgdocnsmnxip:40forum.dlang.org
Mar 23 2014
On Sunday, 23 March 2014 at 19:03:54 UTC, Gary Willoughby wrote:On Sunday, 23 March 2014 at 17:27:03 UTC, Jeroen Bollen wrote:I think I'll be using that then, cheers. :DOn Sunday, 23 March 2014 at 16:43:31 UTC, Gary Willoughby wrote:The only dependencies for my Tkd GUI framework is the Tcl/Tk libraries on all platforms. What i want to do though is compile Tcl/Tk myself and provide DLL's so that dependency is removed for Windows. Posix OSes usually come with Tcl/Tk already installed.On Sunday, 23 March 2014 at 12:34:10 UTC, Jeroen Bollen wrote:I noticed Derelict also has bindings, is there a difference? Also, what requirements are still required for every OS?Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.See: http://forum.dlang.org/thread/twlshfdigsfkphyvrixz forum.dlang.org#post-zetmofrvhgdocnsmnxip:40forum.dlang.org
Mar 23 2014
23.03.2014 16:34, Jeroen Bollen пишет:Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.First, I don't understand what is the problem with GTK? Also there is DWT, but I already have spent some time on it and I'd like to suggest to not use it as its sources is a mess. As for cross-platform GUI app, I'd suggest to use own native GUI library for every platform as it looks like an easiest and the most convenient for the user of your program approach. The problem is it's too common to connect application login and GUI, so for my personal purposes I created MetaUI [1] which allow such intermediate layer and you only create native GUI elements, place it somewhere and connect with logic elements from MetaUI, see examples. As a native GUI I use GTK (mainly my own fast, correct and very usable bindings [2]) over MetaUI for now, but when I will have more time I will use DGui on Windows just to decrease program installation size. The only problem is a Mac OS X for which I don't know working GUI library (I don't target it for now, GTK may work but with PITA), but with MetaUI it shouldn't be a problem to use some C one as the only thing you need is a way to connect C widgets to D logic controls. [1] https://bitbucket.org/denis-sh/metaui [2] https://bitbucket.org/denis-sh/gtkd [3] https://bitbucket.org/dgui/dgui -- Денис В. Шеломовский Denis V. Shelomovskij
Mar 23 2014
On Sunday, 23 March 2014 at 19:56:47 UTC, Denis Shelomovskij wrote:23.03.2014 16:34, Jeroen Bollen пишет:The main problem I have with GTK is that it's a mess to setup on Windows for the end user.Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.First, I don't understand what is the problem with GTK? Also there is DWT, but I already have spent some time on it and I'd like to suggest to not use it as its sources is a mess. As for cross-platform GUI app, I'd suggest to use own native GUI library for every platform as it looks like an easiest and the most convenient for the user of your program approach. The problem is it's too common to connect application login and GUI, so for my personal purposes I created MetaUI [1] which allow such intermediate layer and you only create native GUI elements, place it somewhere and connect with logic elements from MetaUI, see examples. As a native GUI I use GTK (mainly my own fast, correct and very usable bindings [2]) over MetaUI for now, but when I will have more time I will use DGui on Windows just to decrease program installation size. The only problem is a Mac OS X for which I don't know working GUI library (I don't target it for now, GTK may work but with PITA), but with MetaUI it shouldn't be a problem to use some C one as the only thing you need is a way to connect C widgets to D logic controls. [1] https://bitbucket.org/denis-sh/metaui [2] https://bitbucket.org/denis-sh/gtkd [3] https://bitbucket.org/dgui/dgui
Mar 23 2014
24.03.2014 0:03, Jeroen Bollen пишет:On Sunday, 23 March 2014 at 19:56:47 UTC, Denis Shelomovskij wrote:And you shouldn't ever do it. Just bundle GTK with your program and be happy. Here is what I use (~4 MiB): http://deoma-cmd.ru/files/other/GTK-3-redist.7z (if you are OK with third GTK version) These files just should be in your target installation directory. -- Денис В. Шеломовский Denis V. Shelomovskij23.03.2014 16:34, Jeroen Bollen пишет:The main problem I have with GTK is that it's a mess to setup on Windows for the end user.Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.First, I don't understand what is the problem with GTK? ...
Mar 23 2014
On Sunday, 23 March 2014 at 20:23:01 UTC, Denis Shelomovskij wrote:Just bundle GTK with your program and be happy. Here is what I use (~4 MiB): http://deoma-cmd.ru/files/other/GTK-3-redist.7z (if you are OK with third GTK version) These files just should be in your target installation directory.or do this ^ :)
Mar 24 2014
On Sunday, 23 March 2014 at 20:04:00 UTC, Jeroen Bollen wrote:The main problem I have with GTK is that it's a mess to setup on Windows for the end user.The only real problem is the actual installation of GTK onto the Windows user's machine as some people ask "why do i need to install this weird GTK thing for this app to work?". But... you can 'hide' the installation of GTK on Windows as part of the main application's installer because the Windows version of GTK has a silent install options. http://gtk-win.sourceforge.net/home/index.php/Main/EmbeddingGTK
Mar 24 2014
24.03.2014 13:04, Gary Willoughby пишет:On Sunday, 23 March 2014 at 20:04:00 UTC, Jeroen Bollen wrote:Note different programs may require different GTK versions and GTK isn't backward compatible on Windows because of some bugs (e.g. 2.16 is the last one with working OpenGL using GtkGLExt from 2.x), so it's usually just copied in application's folder. -- Денис В. Шеломовский Denis V. ShelomovskijThe main problem I have with GTK is that it's a mess to setup on Windows for the end user.The only real problem is the actual installation of GTK onto the Windows user's machine as some people ask "why do i need to install this weird GTK thing for this app to work?". But... you can 'hide' the installation of GTK on Windows as part of the main application's installer because the Windows version of GTK has a silent install options. http://gtk-win.sourceforge.net/home/index.php/Main/EmbeddingGTK
Mar 24 2014
On Sunday, 23 March 2014 at 19:56:47 UTC, Denis Shelomovskij wrote:First, I don't understand what is the problem with GTK?I looks ugly on both Windows and Mac OS X. It's also an extra dependency.Also there is DWT, but I already have spent some time on it and I'd like to suggest to not use it as its sources is a mess.What's wrong with DWT?As for cross-platform GUI app, I'd suggest to use own native GUI library for every platform as it looks like an easiest and the most convenient for the user of your program approach.I think it's good to have a cross-platform GUI for the basic stuff that's available on all platforms. Like buttons, windows and so on. Then use the native GUI when platform specific widgets are needed.The problem is it's too common to connect application login and GUI, so for my personal purposes I created MetaUI [1] which allow such intermediate layer and you only create native GUI elements, place it somewhere and connect with logic elements from MetaUI, see examples. As a native GUI I use GTK (mainly my own fast, correct and very usable bindings [2]) over MetaUI for now, but when I will have more time I will use DGui on Windows just to decrease program installation size.The only problem is a Mac OS X for which I don't know working GUI library (I don't target it for now, GTK may work but with PITA)On OS X, anything that's not native Cocoa is not acceptable. -- /Jacob Carlborg
Mar 24 2014
On Monday, 24 March 2014 at 12:06:25 UTC, Jacob Carlborg wrote:On OS X, anything that's not native Cocoa is not acceptable.Ableton Live does not look like Cocoa, but is the most popular sequencer on OS-X.
Mar 24 2014
On Monday, 24 March 2014 at 12:42:46 UTC, Ola Fosheim Grøstad wrote:On Monday, 24 March 2014 at 12:06:25 UTC, Jacob Carlborg wrote:Ableton is the sort of program that you make fullscreen and then work fully inside of. You don't interact with the OS GUIs much. Most applications use a bit more integration.On OS X, anything that's not native Cocoa is not acceptable.Ableton Live does not look like Cocoa, but is the most popular sequencer on OS-X.
Mar 24 2014
On 24/03/14 13:42, "Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang gmail.com>" wrote:Ableton Live does not look like Cocoa, but is the most popular sequencer on OS-X.I was mostly referring to GTK+ not being acceptable. -- /Jacob Carlborg
Mar 24 2014
On Sunday, 23 March 2014 at 12:34:10 UTC, Jeroen Bollen wrote:Are there any tools to do this at all in Digitalmars D? All current libraries seem to be outdated, but GTKD. GTK on it's end is a pain to bundle which is enough to not consider it cross platform at all.DWT [1] is a native cross-platform GUI for Windows and Linux (OS X is being worked on). It's a port of the Java library SWT [2]. It doesn't have any dependencies except for the system libraries. On Linux GTK+ is used. [1] https://github.com/d-widget-toolkit/dwt [2] http://www.eclipse.org/swt/ -- /Jacob Carlborg
Mar 24 2014