Jump to page: 1 2
Thread overview
UI Library
May 20
harakim
May 20
harakim
May 20
ryuukk_
May 28
Jack
May 28
Sergey
May 21
harakim
Jun 11
harakim
Jun 11
harakim
Jun 16
harakim
May 20
Tejas
May 20
zjh
May 20
drug
May 21
harakim
Jun 11
Marcone
Jun 11
Marcone
May 20

I need to write a piece of software to track and categorize some purchases. It's the kind of thing I could probably write in a couple of hours in C#/Java + html/css/javascript. However, something keeps drawing me to D and as this is a simple application, it would be a good one to get back in after almost a year hiatus.

For this, I need a UI library to use. I need text inputs, buttons and that sort of thing. My My order of preference is:

  1. Native component library that works on linux and windows
  2. Something like SDL
  3. Native component library that works on linux or windows
  4. vibe.d + web

I mostly value that it works over lots of functionality and stability over the way the UI looks. Is there an obvious native application component library to use? If not, is bindbc the best way to go for the sdl-like option? I think I can figure out option Vibe.d if there are no good non-web solutions.

PS I'm surprised the forum search didn't turn up topics about desktop applications or UI libraries because I know I've seen them.

May 20

On Friday, 20 May 2022 at 02:37:48 UTC, harakim wrote:

>

I need to write a piece of software to track and categorize some purchases. It's the kind of thing I could probably write in a couple of hours in C#/Java + html/css/javascript. However, something keeps drawing me to D and as this is a simple application, it would be a good one to get back in after almost a year hiatus.

[...]

Maybe you can use minigui from arsd

https://github.com/adamdruppe/arsd

May 20

On Friday, 20 May 2022 at 02:53:39 UTC, Craig Dillabaugh wrote:

>

On Friday, 20 May 2022 at 02:37:48 UTC, harakim wrote:

>

I need to write a piece of software to track and categorize some purchases. It's the kind of thing I could probably write in a couple of hours in C#/Java + html/css/javascript. However, something keeps drawing me to D and as this is a simple application, it would be a good one to get back in after almost a year hiatus.

[...]

Maybe you can use minigui from arsd

https://github.com/adamdruppe/arsd

Thank you. I will definitely give that a try.

May 20

On Friday, 20 May 2022 at 02:37:48 UTC, harakim wrote:

>

I need to write a piece of software to track and categorize some purchases. It's the kind of thing I could probably write in a couple of hours in C#/Java + html/css/javascript. However, something keeps drawing me to D and as this is a simple application, it would be a good one to get back in after almost a year hiatus.

[...]

Maybe gtkd?
https://code.dlang.org/packages/gtk-d

May 20

On Friday, 20 May 2022 at 02:37:48 UTC, harakim wrote:

>

winrt may be good.
but winrtd has many bugs.

May 20
On 20.05.2022 05:37, harakim wrote:
> I need to write a piece of software to track and categorize some purchases. It's the kind of thing I could probably write in a couple of hours in C#/Java + html/css/javascript. However, something keeps drawing me to D and as this is a simple application, it would be a good one to get back in after almost a year hiatus.
> 
> For this, I need a UI library to use. I need text inputs, buttons and that sort of thing. My My order of preference is:
> 1. Native component library that works on linux and windows
> 2. Something like SDL
> 3. Native component library that works on linux or windows
> 4. vibe.d + web
> 
> I mostly value that it works over lots of functionality and stability over the way the UI looks. Is there an obvious native application component library to use? If not, is bindbc the best way to go for the sdl-like option? I think I can figure out option Vibe.d if there are no good non-web solutions.

D port of minimalistic  gui library for OpenGL https://github.com/drug007/nanogui

> 
> PS I'm surprised the forum search didn't turn up topics about desktop applications or UI libraries because I know I've seen them.

You can select category in dub (code.dlang.org) to get something like this:
https://code.dlang.org/?sort=updated&limit=20&category=library.gui
May 20

On Friday, 20 May 2022 at 07:05:21 UTC, Tejas wrote:

>

Maybe gtkd?
https://code.dlang.org/packages/gtk-d

And some corresponding tutorials:

https://gtkdcoding.com/

May 20
On Friday, 20 May 2022 at 03:47:14 UTC, harakim wrote:
> Thank you. I will definitely give that a try.

My minigui uses the normal Windows controls so it works well there. On linux it uses a custom thing of my own design so your mileage may vary.

The docs don't have a lot of examples but hopefully one you do the first one the rest won't be too hard, the classes are relatively simple and the events are based on javascript so if you've used that before you can probably get to know it.

But just ask me if something comes up since I can push fixes to master p quickly.

The only files it needs from the repo are `minigui.d`, `simpledisplay.d` and `color.d`. There's other optional things in there that might be useful though. My recommended way to use it is to `git clone` the repo in your source dir then `dmd -i yourfile.d` so it is easy to update with a `git pull` and the compiler pulls what it needs (and nothing more) automatically when compiling.

But you can also do it yourself or use the dub packages etc.
May 20
Avoid GTK, it's bloated, GTK4 looks like a toolkit to design mobile apps, and you need runtime dependencies on windows

adam's gui library is very nice, 0 dependencies

I personally prefer IMGUI, 0 dependencies, you bring the windowing library of your choice, i pick GLFW since it's minimal

IMGUI is fully capable, someone made a Spotify client with it!

https://user-images.githubusercontent.com/3907907/81094458-d20d9200-8f03-11ea-81e0-e72c0063b3a7.png
May 21
On Friday, 20 May 2022 at 12:07:46 UTC, Adam D Ruppe wrote:
> The docs don't have a lot of examples but hopefully one you do the first one the rest won't be too hard, the classes are relatively simple and the events are based on javascript so if you've used that before you can probably get to know it.
>
> But just ask me if something comes up since I can push fixes to master p quickly.

Your libraries and code samples have always been really simple to understand. I'll let you know if I find anything that doesn't make sense.

On Friday, 20 May 2022 at 12:07:46 UTC, Adam D Ruppe wrote:
> My minigui uses the normal Windows controls so it works well there. On linux it uses a custom thing of my own design so your mileage may vary.

I will probably use this exclusively on Windows for a long time to
come, so I can cross that bridge when I get there.


« First   ‹ Prev
1 2