Jump to page: 1 29  
Page
Thread overview
wanting to try a GUI toolkit: needing some advice on which one to choose
May 27, 2021
someone
May 27, 2021
Adam D. Ruppe
May 27, 2021
someone
May 27, 2021
Imperatorn
May 29, 2021
someone
May 30, 2021
Chris Piker
May 30, 2021
evilrat
May 30, 2021
Imperatorn
Jun 01, 2021
someone
Jun 01, 2021
Imperatorn
Jun 01, 2021
evilrat
Jun 01, 2021
someone
Jun 01, 2021
IGotD-
Jun 02, 2021
cc
Jun 01, 2021
someone
Jun 01, 2021
someone
Jun 01, 2021
Adam D. Ruppe
Jun 01, 2021
Adam D. Ruppe
Jun 01, 2021
someone
Jun 01, 2021
someone
Jun 02, 2021
someone
Jun 02, 2021
evilrat
Jun 02, 2021
evilrat
Jun 02, 2021
drug
Jun 02, 2021
drug
Jun 03, 2021
Patrick Schluter
Jun 01, 2021
someone
Jun 01, 2021
zjh
Jun 01, 2021
someone
Jun 01, 2021
someone
Jun 01, 2021
someone
Jun 01, 2021
Adam D. Ruppe
Jun 01, 2021
someone
May 29, 2021
someone
May 27, 2021
zjh
May 29, 2021
someone
May 30, 2021
zjh
May 27, 2021
btiffin
May 29, 2021
someone
May 27, 2021
Alain De Vos
May 29, 2021
someone
May 29, 2021
zjh
May 27, 2021
Dejan Lekic
May 27, 2021
Alain De Vos
May 27, 2021
Alain De Vos
May 28, 2021
Imperatorn
May 28, 2021
zjh
May 28, 2021
zjh
May 28, 2021
zjh
May 29, 2021
someone
May 29, 2021
zjh
May 29, 2021
someone
May 29, 2021
Alain De Vos
Jun 01, 2021
someone
May 29, 2021
someone
May 29, 2021
btiffin
May 29, 2021
Adam D. Ruppe
May 28, 2021
Vinod K Chandran
May 29, 2021
Marcone
May 29, 2021
Vinod K Chandran
May 29, 2021
someone
May 29, 2021
Marcone
May 29, 2021
someone
May 30, 2021
cc
Jun 01, 2021
someone
Jun 01, 2021
someone
May 30, 2021
Siemargl
May 31, 2021
dangbinghoo
Jun 01, 2021
someone
Jun 01, 2021
someone
Jun 01, 2021
Mike Parker
Jun 01, 2021
Adam D. Ruppe
Jun 01, 2021
someone
May 31, 2021
btiffin
May 27, 2021

Yes, I know this is a question lacking a straightforward answer.

Requirements:

  • desktop only: forget about support for mobile tablets whatever

  • wide cross-platform support not needed at all: linux and/or some BSD distro like FreeBSD/DragonFlyBSD and that's all; don't care at all for the Windows platform.

  • Wayland support will be a plus.

  • HiDPI support will be a plus.

What I like/dislike:

  • like a simple classical UI: favored over any modern one:

    • eg: my daily-driver workstation is running the MATE desktop configured as unobtrusive and minimal as possible and I am quite happy with it; needless to say I hate modern gnome and KDE desktops not to mention unity and family.

    • eg: hate the dconf-editor controls styles (GTK).

    • eg: like ClawsMail [https://www.claws-mail.org/] classic style.

    • eg: currently using the xfe file manager [http://roland65.free.fr/xfe/] (which follows the early Windows File Explorer design) which is written in C++ and is built against the minimal Fox GUI toolkit [http://fox-toolkit.org/].

  • like fast native compiled fast responsive minimal apps; say, what used to be the common way back on the 90s; eg: Windows forms over COM ... fast instantly-opening windows (providing the program itself do not make them lag of course).

  • dislike the way modern toolkits like gnome/KDE rely on CSS to render the controls making the toolkits heavy on resources; prefer more traditional ones, but this is not a requirement, it is my preference.

What I know so far:

  • I assume using the FOX library will be more or less a straighforward process since it is written in C++; ie: no bindings needed at all ... am I correct ?

  • using the GTK toolkit within D requires the GTKD binding library.

Any comments are welcomed, even any comments regarding anyone experience with GUI development within D, no matter whether the answer would be relevant to my specific question seeking a choice or not.

May 27, 2021

On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:

>
  • like a simple classical UI: favored over any modern one:

My minigui is a thing of beauty. Behold:

http://arsdnet.net/minigui-linux.png
http://arsdnet.net/minigui-sprite.png

its docs:
http://dpldocs.info/experimental-docs/arsd.minigui.html

It is quick to open and quick to compile (the whole thing is contained in just three source file that build from scratch in about a quarter second).

Pity is sucks. More below.

>
  • using the GTK toolkit within D requires the GTKD binding library.

Well, you don't strictly have to use gtkd, you can always just extern(C) define the stuff yourself (or only use them from gtkd's generated files) and call them. But if you do use gtk, I'd suggest just sticking to the gtkd wrapper.

But I hate gtk so I made my own thing from scratch on nothing but X which might amuse you. (I loathe that useless wayland trash and will never support it. X is so much better.)

However my text edit widget sucks. It barely works. Really slow and buggy. I've been slowly trying to find the time to rewrite it but wow the text edit is harder than literally everything else combined and since I have so many other things to do it still sucks. I have been doing a bit of a 2.0 rewrite lately (recent blogs: http://dpldocs.info/this-week-in-d/Blog.Posted_2021_05_03.html and http://dpldocs.info/this-week-in-d/Blog.Posted_2021_05_17.html describe it, though the doc link from before has info too)

So I probably wouldn't seriously recommend my thing right now on Linux. (On Windows, it is fine - it just uses the OS-provided control. But you don't care about Windows so that's irrelevant... unless you wanna wine.)

Ironically the biggest thing I changed in the recent 2.0 work is a style delegate that makes it possible to do some kind of css thing. But since I also think css is bloated I'm just putting hooks in the core so it is an optional feature, just like the xml and script stuff. Turns out that was easier than fixing text bugs. And besides people love their dark modes lol.

Anyway if you can stand gtk, gtkd really isn't bad and its text widget works. Just don't use the file dialog lololol.

May 27, 2021

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

Well, you don't strictly have to use gtkd, you can always just extern(C) define the stuff yourself (or only use them from gtkd's generated files) and call them. But if you do use gtk, I'd suggest just sticking to the gtkd wrapper.

Crystal clear.

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

But I hate gtk so I made my own thing from scratch on nothing but X which might amuse you. (I loathe that useless wayland trash and will never support it. X is so much better.)

No. It doesn't amuse me at all. X11 was/is a wonder in many respects. The problem with X11 nowadays is that it is getting abandoned. I don't recall the name right now, but I read an extensive article the past year (or the other one) in which its primary maintainer claimed it lost interest in it (or whatever) and the project lacks the resources to get well maintained and so and so. So the writing is on the wall. I think Wayland started its project seeking tear-less windows but evolved a far-cry from there. But like it or not, for the worst or the better, everything will be Wayland-centric/dependent a few years from now, relegating X11 to a niche. That's my two cents, which can be far away from reality, of course.

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

But since I also think css is bloated I'm just putting hooks in the core so it is an optional feature, just like the xml and script stuff. Turns out that was easier than fixing text bugs. And besides people love their dark modes lol.

CSS was/is an excellent tech for rendering web pages while splitting data and style, at least, valid until CSS1. The latter CSS version are bloated to the bone. They were developed for the ad industry and not for viewing documents which is what the net was invented for to begin with. I think if early on the reference and commercial webs were developed separately we would end spared the XHMTL->HTML4 wars and everything related. CSS to render a desktop is overkill, no matter what. Gnome2 with all its shortcomings was snappy as hell.

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

Anyway if you can stand gtk, gtkd really isn't bad and its text widget works. Just don't use the file dialog lololol.

The file dialog is one of the worse things indeed.

Let me clarify a bit:

I am not against innovation and/or change, quite the opposite, I love things improving all the time; what I can't bear is change for the sake of change, change because the developer/s is/are bored and this/that is trendy and sooo cool right now, engineering has a de-facto motto: if it works, don't fixit !

That being said, I think GUI design reached a climax between the Windows 95/98 and Windows XP era, everything that came afterward was, mainly, downhill. What Windows got right on that time-frame was the GUI, furthermore, the consistency of the GUI system-wide, all programs (errr, what now are called apps) behaved and looked the same way, that was the goal, you learned one app, you learned them all, nothing deviated from the GUI development guidelines, and what deviated was considered subpar. Even the documentation (excellent Microsoft manuals on dead-tree media, what-else) on GUI development, the what and what not to do was excellent. Microsoft got that right. After Windows XP came Vista, and from then on, it was primarily Microsoft that demolished all the advise published so far by itself -those were the Steve Ballmer years (developers ! developers ! developers !) and clearly marked a point of inflection.

The early 2000s brought us app skins, and with it, everything looked (and started to behave) differently, ending with monsters like Cannonical Unity GUI, and meanwhile, destroying perfectly working desktops such as gnome 2 (the epitome of user friendly design in linux in my view) with gnome 3, all justified on the basis that mobile/touch should be integrated to the same base instead of developing something specific for it. That left us with CSS rendering our desktops ala-browser-engines and everything evolved from snappy to quite-a-few-seconds-lag to open even a bare window.

End of rant. Excuse me. But I think the above clarifies what I am searching for for a GUI toolkit in D. After all, I landed on D for its speed besides its cleanliness/power/features.

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

My minigui is a thing of beauty. Behold:

I'll probably check it out tomorrow since I am going to bed right now.

Thanks for your detailed response and for taking your time to advise me. I really appreciate that 🙂 !

May 27, 2021

On Thursday, 27 May 2021 at 04:01:31 UTC, someone wrote:

>

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

[...]

Crystal clear.

On Thursday, 27 May 2021 at 02:55:14 UTC, Adam D. Ruppe wrote:

>

[...]

No. It doesn't amuse me at all. X11 was/is a wonder in many respects. The problem with X11 nowadays is that it is getting abandoned. I don't recall the name right now, but I read an extensive article the past year (or the other one) in which its primary maintainer claimed it lost interest in it (or whatever) and the project lacks the resources to get well maintained and so and so. So the writing is on the wall. I think Wayland started its project seeking tear-less windows but evolved a far-cry from there. But like it or not, for the worst or the better, everything will be Wayland-centric/dependent a few years from now, relegating X11 to a niche. That's my two cents, which can be far away from reality, of course.

[...]

I would like to recommend DlangUI [1], but we have tried now for months to get in contact with the owner of it (to take over development) and are getting no reponse.

  1. https://github.com/buggins/dlangui
May 27, 2021

On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:

>

Yes,

I have download FOX.and success compile.
I think it is very good.small and beauty.

May 27, 2021

On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:

>

Yes, I know this is a question lacking a straightforward answer.

I'm only on a third serious with D day, but I want to take a kick at wrapping libAgar now.

libagar is a nice little framework. But, it's C still (and Ada, Perl, COBOL), not D yet. Will see how it goes.

Very cross platform, the Uniike (unixlike, sans tm) systems, nintendo, c64, but that's microagar. Developed on a BSD system.

http://libagar.org/

May 27, 2021
On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:
> Yes, I know this is a question lacking a straightforward answer.
>
> Requirements:
>
> [...]

sciter, of course.  https://sciter.com/
Or write Dlang alternative.
May 27, 2021
I very succefully used tkd and gtkd, d binding to tk and gtk.

Can someone guide me to using fox or fltk ?
May 27, 2021

On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:

>

Yes, I know this is a question lacking a straightforward answer.

Requirements:

[...]

I humbly believe the most complete one is GtKD.

https://gtkdcoding.com/
https://gtkd.org

We all wish there was a STANDARD D GUI library out there, but that is a huge effort one or two individuals can't do by themselves (that is why all such efforts failed in the past)...

May 27, 2021

Let's also not forget other languages have problems with gui-toolkits.
For instance, gtk-ada binding has memory leaks. gtk-crystal binding is broken.
I would like to see a binding to wxwidgets which is a very cool toolkit.

« First   ‹ Prev
1 2 3 4 5 6 7 8 9