www.digitalmars.com         C & C++   DMDScript  

D.gnu - DIG

reply Brad Beveridge <brad clear.net.nz> writes:
Hi, where can I find information on the goals of DIG?  At the moment it 
is just a wrapper for WIN32 graphics calls right? Are there plans to 
make it a cross-platform library?  Is it possible?  I figure that 
porting DIG to gnome or kde (doubt this as it is C++?) or pure X so that 
it can be used with Win32 & Linux might be a good way to learn D.
Any comments, suggestions, links, etc :)

Cheers
Brad
Jan 17 2003
next sibling parent reply Burton Radons <loth users.sourceforge.net> writes:
Brad Beveridge wrote:
 Hi, where can I find information on the goals of DIG?  At the moment it 
 is just a wrapper for WIN32 graphics calls right? Are there plans to 
 make it a cross-platform library?  Is it possible?  I figure that 
 porting DIG to gnome or kde (doubt this as it is C++?) or pure X so that 
 it can be used with Win32 & Linux might be a good way to learn D.
 Any comments, suggestions, links, etc :)

It's intended to become portable; I fully expect that API changes will be needed to bring them together. I don't think I use any newer DMD features in the library, although the lack of a GC will eventually cause problems. If you want to try it, you should start by commenting everything out but for the bare bones: Control, Frame, and Label. Then comment stuff out from there (much utility code for Control, Font). You can create environment-specific code by using version: version (Gnome) { /* Your code. */ } else version (Win32) { /* My original code. */ } Then add "-version=Gnome" to your compile flags. I don't forsee any big problems, it's just a lot of work.
Jan 17 2003
parent Ilya Minkov <midiclub 8ung.at> writes:
wxWindows has a valuable experience of creating a real cross-platform 
GUI libary. Its goal is to be as rich as possible, and when possible to 
interface the native widgets directly. It supports:
  - Win32 natively;
  - Unix thorough GTK+;
  - Unix through Motif/Lesstif;
  - MacOS natively;
  - more is promised.

Bisically, it provides a superset of OS widgets, and the rest gets 
emulated where not natively available.
http://www.wxwindows.org/

Similar idea, plus it shows how to make a non-bloated GUI library:
http://www.fltk.org/

Another interesting project is OpenAmulet:
http://www.openip.org/oa_overview.html
which fails to be native to any system, but implements some *very* 
interesting features, which would give *any* GUI libarary a lot of 
additional value. Definately worth a look.

And finally, there are lots of cross-platform C libraries. Maybe some 
can be chosen as a back-end to DIG, because GTK+ is not necessarily the 
best for all systems.
http://www.atai.org/guitool/
I'll take a thorough look at them later and make a list of usable ones.

Has a decision been made, whether DIG should develop towards mega-safe 
and warm bloatware (Delphi) or a fat-free library (FLTK)? I really can't 
say what i'd favor.

-i.

Burton Radons wrote:
 Brad Beveridge wrote:
 
 Hi, where can I find information on the goals of DIG?  At the moment 
 it is just a wrapper for WIN32 graphics calls right? Are there plans 
 to make it a cross-platform library?  Is it possible?  I figure that 
 porting DIG to gnome or kde (doubt this as it is C++?) or pure X so 
 that it can be used with Win32 & Linux might be a good way to learn D.
 Any comments, suggestions, links, etc :)

It's intended to become portable; I fully expect that API changes will be needed to bring them together. I don't think I use any newer DMD features in the library, although the lack of a GC will eventually cause problems. If you want to try it, you should start by commenting everything out but for the bare bones: Control, Frame, and Label. Then comment stuff out from there (much utility code for Control, Font). You can create environment-specific code by using version: version (Gnome) { /* Your code. */ } else version (Win32) { /* My original code. */ } Then add "-version=Gnome" to your compile flags. I don't forsee any big problems, it's just a lot of work.

Feb 13 2003
prev sibling next sibling parent Theodore Reed <rizen surreality.us> writes:
On Fri, 17 Jan 2003 15:10:39 -0800
Burton Radons <loth users.sourceforge.net> wrote:

 Brad Beveridge wrote:
 Hi, where can I find information on the goals of DIG?  At the moment
 it is just a wrapper for WIN32 graphics calls right? Are there plans
 to make it a cross-platform library?  Is it possible?  I figure that
 
 porting DIG to gnome or kde (doubt this as it is C++?) or pure X so
 that it can be used with Win32 & Linux might be a good way to learn
 D. Any comments, suggestions, links, etc :)

It's intended to become portable; I fully expect that API changes will

I looked at the source to maybe add some basic GTK functionality and I'm pretty sure there will be API changes needed. I think the sooner this is done, the better for all concerned. I might be able to help out with such a project (But I will *not* be working with GTK 1.x) if I could figure out how to manage to compile D on linux. -- Theodore Reed (rizen/bancus) -==- http://www.surreality.us/ ~OpenPGP Signed/Encrypted Mail Preferred; Finger me for my public key!~ "Those who hammer their guns into plowshares will plow for those who do not." -- Thomas Jefferson
Jan 17 2003
prev sibling parent reply Theodore Reed <rizen surreality.us> writes:
On Fri, 14 Feb 2003 02:33:41 +0100
Ilya Minkov <midiclub 8ung.at> wrote:

 wxWindows has a valuable experience of creating a real cross-platform 
 GUI libary. Its goal is to be as rich as possible, and when possible
 to interface the native widgets directly. It supports:
   - Win32 natively;
   - Unix thorough GTK+;
   - Unix through Motif/Lesstif;
   - MacOS natively;
   - more is promised.

If you go to http://wxnet.sf.net/ you'll find a project to make .NET/Mono bindings for wxWindows. In order to more easily accomplish this, they have a C wrapper library, which is then wrapped by wxnet. Perhaps we cauld use this C wrapper library to facilitate a D wrapper? -- Theodore Reed (rizen/bancus) -==- http://www.surreality.us/ ~OpenPGP Signed/Encrypted Mail Preferred; Finger me for my public key!~ "I hold it to be the inalienable right of anybody to go to hell in his own way." -- Robert Frost
Feb 14 2003
parent "Charles Sanders" <sanders-consulting comcast.net> writes:
Id be really intereseted this and will lend a hand if needed, I've used
wxWindows alot and like it.

Charles
"Theodore Reed" <rizen surreality.us> wrote in message
news:20030214075030.6caa337d.rizen surreality.us...
 On Fri, 14 Feb 2003 02:33:41 +0100
 Ilya Minkov <midiclub 8ung.at> wrote:

 wxWindows has a valuable experience of creating a real cross-platform
 GUI libary. Its goal is to be as rich as possible, and when possible
 to interface the native widgets directly. It supports:
   - Win32 natively;
   - Unix thorough GTK+;
   - Unix through Motif/Lesstif;
   - MacOS natively;
   - more is promised.

If you go to http://wxnet.sf.net/ you'll find a project to make .NET/Mono bindings for wxWindows. In order to more easily accomplish this, they have a C wrapper library, which is then wrapped by wxnet. Perhaps we cauld use this C wrapper library to facilitate a D wrapper? -- Theodore Reed (rizen/bancus) -==- http://www.surreality.us/ ~OpenPGP Signed/Encrypted Mail Preferred; Finger me for my public key!~ "I hold it to be the inalienable right of anybody to go to hell in his own way." -- Robert Frost

Sep 04 2003