discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: a c++11 wrapper for gnustep libraries


From: H. Nikolaus Schaller
Subject: Re: a c++11 wrapper for gnustep libraries
Date: Mon, 31 May 2021 21:04:08 +0200

Hi Riccardo,


> Am 31.05.2021 um 20:23 schrieb Riccardo Mottola <riccardo.mottola@libero.it>:
> 
> Hello,
> 
> On 27/05/2021 09:42, أسامة مخزوم wrote:
>> once i write the wrapper, i will consider making GNUSTEP Ui more
>> attractive to widget-toolkit backend developers so they can target
>> GNUStep more easily, thank nikolaus for the purposal.
> 
> 
> as other write, I think you are down the wrong path. You could think as 
> GNUstep and wxWidgets actually being similar (grossly said). wx has a core 
> library  and a interface which target different "tookits" like windows, mac 
> and X11.

Cocoa and wxWidgets are actually similar (grossly said). Still people use 
wxWidgets on Cocoa for good reasons (one being that there is no Cocoa for Linux 
or Windows). This alone is IMHO proof that it makes sense. And I propose to 
make this wxCocoa backend compile against GNUstep GUI because it looks like a 
quick win to do (modify Makefiles and some minor code changes).

Yes, it may look weird to wrap (and hide) a lot of GNUstep GUI features in C++ 
- but there is a benefit for C++ programmers by doing so. And there is a 
benefit for GNUstep because it gets another option to be used.

> GNUstep does exactly the same thing.

But Obj-C isn't as attractive as C++ (unfortunately, but it is as it is).

> 
> On X11 things are slightly different, since wx uses GTK or Motif (did, at 
> least), but with some work i bet it could use directly a lower level. GNUstep 
> does that.

That won't help C++ programmers.

> 
> So you could offer "objective-c" support for wx... and offer the gnustep base 
> library, for wx. But GUI and BACK would make no sense.

Do wx users need another language? IMHO no. They are perfectly happy with C++.
Do they need anything from GNUstep baseI? I don't think so. There are other C++ 
libs for all aspects covered by GNUstep base.

> 
> Viceversa, it makes no sense for GNUstep to target WX, since it is already 
> highly portable at all levels.

Except for existing C++ applications using wxWidgets. Nobody can easily port 
them to GNUstep.

> At most, you could write a specific native "wxWidgets" theme to make 
> applications blend well. However, since GNUstep can have a native GTK theme 
> (there is an unmaintained one) and wxWidgets on X11 goes perferrably on GTK...

I do not know how well the GTK theme works, e.g. for drag&drop between 
applications or the About... menu. Or for example a color picker. And if it is 
possible to define system wide fonts for GTK and GNUstep apps running in 
parallel.
Mixing different GUI libs is technically the worst approach because as a user 
you will always find breaks between philosophies which are impossible to hide.

> what sense would it make to wrap GTK over wx for GNUstep? The only gain I 
> would see would consistency over different platforms, but I guess at expense 
> of features, bugs and performance.

Yes, and consistency on C++ source code level...

If performance, bugs or features would be an issue there wouldn't be wxCocoa. 
But we would not know unless someone tries to do it. So we need some 
entrepreneurial spirit to believe the best (and not the worst).

So IMHO the benfit of GNUstep desktop would be that these apps become available 
with a small recompile:
        https://wiki.wxwidgets.org/Project_List
        https://sourceforge.net/directory/os:mac/?q=wxwidgets

This is why I encourage Usama to think in this direction.

> 
> 
> Just my 2 cents of course.

Adding my 2 cents makes just 4 cents :)

BR,
Nikolaus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]