digitalmars.D - moving wxd to github
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Aug 26 2011
- "Marco Leise" <Marco.Leise gmx.de> Aug 26 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Aug 26 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Aug 26 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Aug 26 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Aug 26 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Aug 26 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Aug 26 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Nov 21 2011
- dolive <dolive89 sina.com> Nov 22 2011
- "Marco Leise" <Marco.Leise gmx.de> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 26 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Aug 30 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 09 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 10 2011
- Gour <gour atmarama.net> Nov 21 2011
- Gour <gour atmarama.net> Nov 22 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 22 2011
- Sam Hu <samhudotsamhu gmail.com> Nov 22 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 22 2011
- Sam Hu <samhudotsamhu gmail.com> Nov 22 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Nov 24 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 24 2011
- Sam Hu <samhudotsamhu gmail.com> Nov 24 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Nov 24 2011
- Walter Bright <newshound2 digitalmars.com> Nov 24 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Nov 25 2011
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> Nov 25 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 25 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- Jacob Carlborg <doob me.com> Nov 28 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 28 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Nov 29 2011
- Jacob Carlborg <doob me.com> Dec 01 2011
- Jacob Carlborg <doob me.com> Dec 01 2011
- Timon Gehr <timon.gehr gmx.ch> Dec 01 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 29 2011
- =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> Nov 28 2011
- Gerrit Wichert <gwichert yahoo.com> Nov 28 2011
- "Marco Leise" <Marco.Leise gmx.de> Nov 29 2011
- "Marco Leise" <Marco.Leise gmx.de> Nov 29 2011
- "Marco Leise" <Marco.Leise gmx.de> Nov 29 2011
- Brad Anderson <eco gnuk.net> Nov 29 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 23 2011
- Brad Anderson <eco gnuk.net> Nov 23 2011
- Gour <gour atmarama.net> Nov 23 2011
- Gour <gour atmarama.net> Nov 24 2011
- Gour <gour atmarama.net> Nov 24 2011
- Gour <gour atmarama.net> Nov 24 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 24 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 24 2011
- Brad Anderson <eco gnuk.net> Nov 24 2011
- Gour <gour atmarama.net> Nov 24 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 24 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 25 2011
- Gour <gour atmarama.net> Nov 25 2011
- Gour <gour atmarama.net> Nov 25 2011
- Gour <gour atmarama.net> Nov 25 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 26 2011
- Brad Anderson <eco gnuk.net> Nov 27 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 27 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 27 2011
- Gour <gour atmarama.net> Nov 27 2011
- Gour <gour atmarama.net> Nov 28 2011
- Gour <gour atmarama.net> Nov 28 2011
- Gour <gour atmarama.net> Nov 28 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Nov 28 2011
- Gour <gour atmarama.net> Nov 28 2011
- Gour <gour atmarama.net> Nov 28 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- "Marco Leise" <Marco.Leise gmx.de> Nov 29 2011
- Johannes Pfau <spam example.com> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Nov 29 2011
- Gour <gour atmarama.net> Dec 01 2011
- Gour <gour atmarama.net> Dec 01 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Dec 02 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Dec 02 2011
- Andrej Mitrovic <andrej.mitrovich gmail.com> Dec 02 2011
As part of a necessary rewrite to better support wxWidgets 3.0 and D2, the wxD development is moving from SourceForge (cvs) to GitHub (git). As an interim step the existing source repository has been converted, the details at: http://sourceforge.net/scm/?type=git&group_id=133831 Besides updating the API, that currently follows wxWidgets 2.6 (ouch) even if you can link it with 2.8 and 2.9 as well if needed by system, if will change the current "struct" method of passing arrays to C++ into some kind of dual "size_t" and "void*" method as required by DMD. I am also stepping down as a maintainer, including the pre-built GDC distribution (gdcwin/gdcgnu/gdcmac) and the Code::Blocks support for D. Hopefully the new wxD project will have better luck of accomplishing a open-source cross-platform GUI and IDE for the D programming language ? --anders http://wxd.sourceforge.net/ http://www.codeblocks.org/ http://www.digitalmars.com/d/archives/digitalmars/D/wxD_GUI_and_Code_Blocks_IDE_46121.html
Aug 26 2011
Am 26.08.2011, 10:10 Uhr, schrieb Anders F Bj=C3=B6rklund <afb algonet.s= e>:I am also stepping down as a maintainer, including the pre-built GDC distribution (gdcwin/gdcgnu/gdcmac) and the Code::Blocks support for D=
Hopefully the new wxD project will have better luck of accomplishing a=
open-source cross-platform GUI and IDE for the D programming language =
--anders
That are some good projects you were working on. We've got the precompil= ed = DMD, Eclipse DDT and GtkD, but I would have tried wxWidgets in = Code::Blocks with D. And while building GDC from source is possible, the= = Windows folks probably preferred a binary (and some Mac and Linux users,= = too). I hope someone steps in and this is not another wave of dying = projects. - Marco
Aug 26 2011
Marco Leise wrote:I am also stepping down as a maintainer, including the pre-built GDC distribution (gdcwin/gdcgnu/gdcmac) and the Code::Blocks support for D. Hopefully the new wxD project will have better luck of accomplishing a open-source cross-platform GUI and IDE for the D programming language ?
That are some good projects you were working on. We've got the precompiled DMD, Eclipse DDT and GtkD, but I would have tried wxWidgets in Code::Blocks with D. And while building GDC from source is possible, the Windows folks probably preferred a binary (and some Mac and Linux users, too). I hope someone steps in and this is not another wave of dying projects.
Would have ? Well, you can still use the existing stuff* for D(1). It was mostly that focus has shifted to D2, since four years ago... I updated most of it for better 64-bit support last year, and there was a new Code::Blocks 10.05 but that was about it for development. * http://www.codeblocks.org/downloads/26 http://sourceforge.net/projects/gdcwin/files/gdc/r229/ http://sourceforge.net/projects/gdcgnu/files/gdc/r229/ http://sourceforge.net/projects/gdcmac/files/gdc/r229/ I guess you can also use QtD and Qt Creator, if you want something D2 ? --anders
Aug 26 2011
Marco Leise wrote:Would have ? Well, you can still use the existing stuff* for D(1). It was mostly that focus has shifted to D2, since four years ago... I updated most of it for better 64-bit support last year, and there was a new Code::Blocks 10.05 but that was about it for development.
When I started D2 was already advertised as the way to go so I restricted myself to projects that work with D2.
It does work with D2 (well, except for DMD 64-bit that is). I think the restriction was "the GUI must be written in", and it isn't - but in C++ and in D. And of course the IDE doesn't have real D support, only when it looks like C++ ? Anyway, the whole idea of moving it to github.com was so that development could continue. We'll see how that goes. The upstream project, wx.NET, has also been going through some changes. And wxWidgets 3.0 hasn't been released yet. --anders
Aug 26 2011
Andrej Mitrovic wrote:Do you mean you're stepping down as the maintainer of wxd, or just the GDC/CodeBlocks stuff?
All three. Mostly wxD, but also the others - not using. I'll leave it up as-is, but won't be adding D2 features. --anders
Aug 26 2011
Gour wrote:All three. Mostly wxD, but also the others - not using. I'll leave it up as-is, but won't be adding D2 features.
Sorry to found out (when we're reconsidering D) that you go/went away. :-(
Not sure if I was ever "on" D2, but left all the D1 stuff up. Including the GDC binaries, wxWidgets and Code::Blocks with D.Have you lost interest in working on wxD due to using some other GUI toolkit or no interest in GUI bindings in general?
No interest in general, the project is looking for a maintainer. Last time I heard, the QtD binding was the most popular one ? --anders
Nov 21 2011
Andrej Mitrovic wrote:I can see the problem now. The code uses CR followed by CRLF on every line. This was probably some kind of unix -> windows EOL conversion bug. Either CRLF or CR's should be killed (personally I'm ok with unix endlines).
The code uses CRLF, must be some kind of bug with your git setup - looks "OK" from here (with the ^M that is). --anders
Aug 26 2011
I can see the problem now. The code uses CR followed by CRLF on every line. This was probably some kind of unix -> windows EOL conversion bug. Either CRLF or CR's should be killed (personally I'm ok with unix endlines).
The code uses CRLF, must be some kind of bug with your git setup - looks "OK" from here (with the ^M that is).
Apparently you set core.autocrlf=false in your git config, (instead of "auto") to avoid it trying to convert things ? --anders
Aug 26 2011
Andrej Mitrovic wrote:When I try to build via DMC's make I get: D:\dev\projects\wxd>make cd wxc make Error on line 181: can't read makefile '/build/msw/config.dmc' I don't see a build folder anywhere. Are these build instructions outdated on http://wxd.sourceforge.net/#installation ?
If you build with DM make, you need to set $WXDIR env variable. It should say so, on that page. "set WXDIR=C:\wxWidgets-2.8.10" Normally tested with GNU make though, and should be 2.8.12 now. --anders
Aug 26 2011
On 2011-11-10 18.27, Andrej Mitrovic wrote:Btw, it would be great if you could move the repo to Github when you have the free time to do it. The samples need a few updates to work with D2, and I'd like to make a pull for that. I don't really know my way around sforge. :)
Missed a button, it's now at https://github.com/afb/wxd in addition to the usual http://wxd.git.sourceforge.net/ --anders
Nov 21 2011
Anders F Björklund Wrote:On 2011-11-10 18.27, Andrej Mitrovic wrote:Btw, it would be great if you could move the repo to Github when you have the free time to do it. The samples need a few updates to work with D2, and I'd like to make a pull for that. I don't really know my way around sforge. :)
Missed a button, it's now at https://github.com/afb/wxd in addition to the usual http://wxd.git.sourceforge.net/ --anders
please let wxd can be able to compile at the latest dmd2 for windows, but currently only compiled on dmd1.064 for windows . please ! thank you very much !!!
Nov 22 2011
Am 26.08.2011, 13:47 Uhr, schrieb Anders F Bj=C3=B6rklund <afb algonet.s= e>:Marco Leise wrote:That are some good projects you were working on. We've got the precompiled DMD, Eclipse DDT and GtkD, but I would have tried wxWidge=
in Code::Blocks with D. And while building GDC from source is possibl=
the Windows folks probably preferred a binary (and some Mac and Linux=
users, too). I hope someone steps in and this is not another wave of dying projects.
Would have ? Well, you can still use the existing stuff* for D(1). It was mostly that focus has shifted to D2, since four years ago... I updated most of it for better 64-bit support last year, and there was a new Code::Blocks 10.05 but that was about it for development. * http://www.codeblocks.org/downloads/26 http://sourceforge.net/projects/gdcwin/files/gdc/r229/ http://sourceforge.net/projects/gdcgnu/files/gdc/r229/ http://sourceforge.net/projects/gdcmac/files/gdc/r229/ I guess you can also use QtD and Qt Creator, if you want something D2 =
--anders
When I started D2 was already advertised as the way to go so I restricte= d = myself to projects that work with D2. (Btw. I do have that Code::Blocks version and wrote a little c++ editor = = plug-in for private use.)
Aug 26 2011
Do you mean you're stepping down as the maintainer of wxd, or just the GDC/CodeBlocks stuff? wxWidgets look very interesting to me, lots of documentation available from what I can tell. Plus it seems it's easy to grab a device context out of a wxWidget frame, so I could use Cairo with that (e.g. http://code.google.com/p/wxcairo/wiki/IntegratingWithCairo). I think I'll give wxd a try these days. Btw, what is up with the excessive blank lines in the example source files? After every statement there is a blank line, it almost seems like a result of some indenter script that screwed things up. This is easily fixable for my own needs, of course. :)
Aug 26 2011
*correction: It's not just the samples, it's the library code too. I don't understand, why the blank lines?
Aug 26 2011
I can see the problem now. The code uses CR followed by CRLF on every line. This was probably some kind of unix -> windows EOL conversion bug. Either CRLF or CR's should be killed (personally I'm ok with unix endlines).
Aug 26 2011
On 8/26/11, Anders F Bj=F6rklund <afb algonet.se> wrote:The code uses CRLF, must be some kind of bug with your git setup - looks "OK" from here (with the ^M that is).
Sorry I've downloaded the tarball, not the git repo. The git repo doesn't have these problems, thanks.
Aug 26 2011
s/tarball/zip file The zipped source has the duplicate newlines, but that probably doesn't show up based on what editor you use. But anyway, the git version works fine.
Aug 26 2011
When I try to build via DMC's make I get: D:\dev\projects\wxd>make cd wxc make Error on line 181: can't read makefile '/build/msw/config.dmc' I don't see a build folder anywhere. Are these build instructions outdated on http://wxd.sourceforge.net/#installation ?
Aug 26 2011
Well that kinda works now, thanks. I've tried building the Controls sample. I've had to make some modifications due to missing toString symbols and missing default switches. After that I've unfortunately hit this: http://www.digitalmars.com/ctg/optlink.html C:\wxMSW-2.8.12\lib\dmc_lib\wxexpatd.lib(xmlparse) Error 168: >64K Global Types Damn optlink.. I've re-built wxWidgets via GNU Make, then tried to build wxd with GNU Make but failed: D:\dev\projects\wxd>mingw32-make -f makefile.gcc mingw32-make -C wxc -f makefile.gcc WX_RELEASE The system cannot find the file specified. The system cannot find the file specified. The system cannot find the file specified. The system cannot find the file specified. process_begin: CreateProcess(NULL, wx-config --cxxflags, ...) failed. mingw32-make[1]: Entering directory `D:/dev/projects/wxd/wxc' g++ -D__GDC__ -O2 -Wall -c -o wx-release.o wx-release.cpp wx-release.cpp:6:21: fatal error: wx/defs.h: No such file or directory compilation terminated. mingw32-make[1]: *** [wx-release.o] Error 1 mingw32-make[1]: Leaving directory `D:/dev/projects/wxd/wxc' mingw32-make: *** [wxc/WX_RELEASE] Error 2 My WXDIR is set up properly: D:\dev\projects\wxd>echo %WXDIR% C:\wxMSW-2.8.12
Aug 30 2011
FWIW the samples compile fine with the latest changesets, using dmd make. Thanks for your work, Anders!
Nov 09 2011
Btw, it would be great if you could move the repo to Github when you have the free time to do it. The samples need a few updates to work with D2, and I'd like to make a pull for that. I don't really know my way around sforge. :)
Nov 10 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 26 Aug 2011 19:30:57 +0200 Anders F Bj=C3=B6rklund <afb algonet.se> wrote: Hello Anders,All three. Mostly wxD, but also the others - not using. I'll leave it up as-is, but won't be adding D2 features.
Sorry to found out (when we're reconsidering D) that you go/went away. :-( It looks that gtkD is in the best shape from all D-related projects with GUI bindings, but, otoh, it could be that wx-2.9/3.0 is providing the best native experience on non-Linux OS-es. (We would develop on Linux, but need good appearance of our desktop app both on Mac OS X & Windows.) Have you lost interest in working on wxD due to using some other GUI toolkit or no interest in GUI bindings in general? Sincerely, Gour --=20 The embodied soul may be restricted from sense enjoyment,=20 though the taste for sense objects remains. But, ceasing=20 such engagements by experiencing a higher taste,=20 he is fixed in consciousness. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 21 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 21 Nov 2011 23:13:21 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:Missed a button, it's now at https://github.com/afb/wxd
Thanks a lot. Hopefully it will get some followers since we hope D community is not like in Haskell: there are hundreds of Monad tutorials, plenty of libraries on Hackage, but hardly one nicely maintained GUI bindings project. Sincerely, Gour --=20 As the embodied soul continuously passes, in this body,=20 from boyhood to youth to old age, the soul similarly passes=20 into another body at death. A sober person is not bewildered=20 by such a change. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 22 2011
It compiles fine on DMD 2.056, but you need to compile wxWidgets via DMD make first. It's described on wxd's website. On 11/22/11, dolive <dolive89 sina.com> wrote:Anders F Bj=F6rklund Wrote:On 2011-11-10 18.27, Andrej Mitrovic wrote:Btw, it would be great if you could move the repo to Github when you have the free time to do it. The samples need a few updates to work with D2, and I'd like to make a pull for that. I don't really know my way around sforge. :)
Missed a button, it's now at https://github.com/afb/wxd in addition to the usual http://wxd.git.sourceforge.net/ --anders
please let wxd can be able to compile at the latest dmd2 for windows, bu=
currently only compiled on dmd1.064 for windows . please ! thank you very much !!!
Nov 22 2011
Andrej Mitrovic Wrote:It compiles fine on DMD 2.056, but you need to compile wxWidgets via DMD make first. It's described on wxd's website. On 11/22/11, dolive <dolive89 sina.com> wrote:Anders F Björklund Wrote:On 2011-11-10 18.27, Andrej Mitrovic wrote:Btw, it would be great if you could move the repo to Github when you have the free time to do it. The samples need a few updates to work with D2, and I'd like to make a pull for that. I don't really know my way around sforge. :)
Missed a button, it's now at https://github.com/afb/wxd in addition to the usual http://wxd.git.sourceforge.net/ --anders
please let wxd can be able to compile at the latest dmd2 for windows, but currently only compiled on dmd1.064 for windows . please ! thank you very much !!!
May I ask which version of wxWidget,2.8.12 or 2.9.? ?Thanks.
Nov 22 2011
On 11/23/11, Sam Hu <samhudotsamhu gmail.com> wrote:May I ask which version of wxWidget,2.8.12 or 2.9.? ?Thanks.
For windows, it's: http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.6.4.zip Find this string: "1. wxWidgets" here: http://wxd.sourceforge.net/ and follow the instructions for step 1 (DM), or if you're on Linux then I guess GCC. Compiling takes a while.. Then get the repo from github and run 'make' in the wxd directory. After a while, you can browse to 'samples' and run 'make'. The samples were recently updated to work with both D1 and D2.
Nov 22 2011
Andrej Mitrovic Wrote:On 11/23/11, Sam Hu <samhudotsamhu gmail.com> wrote:May I ask which version of wxWidget,2.8.12 or 2.9.? ?Thanks.
For windows, it's: http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.6.4.zip Find this string: "1. wxWidgets" here: http://wxd.sourceforge.net/ and follow the instructions for step 1 (DM), or if you're on Linux then I guess GCC. Compiling takes a while.. Then get the repo from github and run 'make' in the wxd directory. After a while, you can browse to 'samples' and run 'make'. The samples were recently updated to work with both D1 and D2.
Nov 22 2011
Sam Hu wrote:May I ask which version of wxWidget,2.8.12 or 2.9.? ?Thanks.
For windows, it's: http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.6.4.zip Find this string: "1. wxWidgets" here: http://wxd.sourceforge.net/ and follow the instructions for step 1 (DM), or if you're on Linux then I guess GCC. Compiling takes a while.. Then get the repo from github and run 'make' in the wxd directory. After a while, you can browse to 'samples' and run 'make'. The samples were recently updated to work with both D1 and D2.
Both wxWidgets 2.8 and 2.9 are supported, just that the API was originally exported from wx 2.6.4 so that's the lowest denominator and starting point, while 2.8.12 is the "stable". In 2011 (with 0.16), the code was updated to work with wx 2.9 and dmd 2.054 - in addition to previous wx 2.8 and dmd 1.030 (it "should" still work with wx 2.6 and dmd 1.020 too, afaik) If no other concerns, then pick 2.8.12 (the "Current Stable") Supporting 2.6 was mostly for DMC, and 2.9 was mostly for Cocoa. Maybe one would want to regenerate the D API for wxWidgets 3.0, but should work fine without - similar to "WXWIN_COMPATIBILITY_*" i.e. currently exported API: http://wxd.sourceforge.net/wxWidgets-2.6.4/docs/html/wx/wx_classref.html vs. the latest available API: http://docs.wxwidgets.org/trunk/page_class_cat.html (from the svn trunk) --anders
Nov 24 2011
Gour wrote:What do you think about providing wxWidgets 3.0 API using SWIG?
http://xkcd.com/224/I've asked for opinion Robin who is doing wxpython and has plenty of experience with both wx& SWIG...waiting for his reply.
Sounds like a good idea, though you probably want to use SWIG 2.0 for the improved D support - while wxPython uses SWIG 1.3 afaict ? I would drop support for wxWidgets 2.x and DMD 1.x - and go for wxWidgets 2.9.x and DMD 2.0xx directly. And pick one "make" (GNU). Trying to support two languages, two libraries, two+ compilers, two+ buildtools, and so on, was just no fun and not very workable ? It's easier to just use configure+make, and MSYS/MinGW on Windows, than trying to work with the DOS console (in C++) or DM's Make.exe. --anders
Nov 24 2011
Gour wrote:And pick one "make" (GNU).
That's not fully clear to me.
Instead of doing separate GNUmakefile and Makefile, and synching those ? There was even a build.brf and dsss.conf, while those were in fashion...Trying to support two languages, two libraries, two+ compilers, two+ buildtools, and so on, was just no fun and not very workable ?
Can you explain what do you think?
Drop D1, drop Tango, and make DMD the default compiler syntax (possibly using gdmd or ldmd behind the covers, where desired) Then do a standard build system, the suggestion was GNU make and GNU bash - rather than trying to cope with several systems.Cmake is not the most elegant tool, but it works and I got confirmation that it supports dmd& gdc. What do you think?
It would just generate a Makefile anyway ? But if it could generate the IDE projects, then maybe it's worth pursuing... If one used standard make and shell, then one could use the standard "wx-config" and friends and just be done with it: http://wxwidgets.blogspot.com/2011/06/choosing-gcc-for-building-wxwidgets.html --anders
Nov 25 2011
Anders F Björklund Wrote:Sam Hu wrote:May I ask which version of wxWidget,2.8.12 or 2.9.? ?Thanks.
For windows, it's: http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.6.4.zip Find this string: "1. wxWidgets" here: http://wxd.sourceforge.net/ and follow the instructions for step 1 (DM), or if you're on Linux then I guess GCC. Compiling takes a while.. Then get the repo from github and run 'make' in the wxd directory. After a while, you can browse to 'samples' and run 'make'. The samples were recently updated to work with both D1 and D2.
Both wxWidgets 2.8 and 2.9 are supported, just that the API was originally exported from wx 2.6.4 so that's the lowest denominator and starting point, while 2.8.12 is the "stable". In 2011 (with 0.16), the code was updated to work with wx 2.9 and dmd 2.054 - in addition to previous wx 2.8 and dmd 1.030 (it "should" still work with wx 2.6 and dmd 1.020 too, afaik) If no other concerns, then pick 2.8.12 (the "Current Stable") Supporting 2.6 was mostly for DMC, and 2.9 was mostly for Cocoa. Maybe one would want to regenerate the D API for wxWidgets 3.0, but should work fine without - similar to "WXWIN_COMPATIBILITY_*" i.e. currently exported API: http://wxd.sourceforge.net/wxWidgets-2.6.4/docs/html/wx/wx_classref.html vs. the latest available API: http://docs.wxwidgets.org/trunk/page_class_cat.html (from the svn trunk) --anders
GUI library in D(2) like DFL,DWT,gtkD and QtD all these I have tried to build turns out it is not so difficult.However wxD is the one I never ever build successfully under windows,yes,maybe this is not so difficult to others here. It would be grateful for someone to write a step by step guideline for build wxD under different platform,the one I would like see is dmd2.056/dmc/mingw under windows with wx2.9.3 as it has wxWebView.It would be nice as well if somebody would like to share his build package.With 7-zip I think it won't be too big to transfer on the web. Regards, Sam
Nov 24 2011
Andrej Mitrovic wrote:I'm guessing what needs to be done is to update the wxc wrapper, and recreate the D wrapper based on the C# port.
There were two main tracks to generating the wrappers, one was using a patched SWIG and the other was a custom Perl script... http://wxnet.cvs.sourceforge.net/viewvc/wxnet/wx.NET/Src/SWIG/ http://wxnet.cvs.sourceforge.net/viewvc/wxnet/wx.NET/Src/wx-c-gen/ But the requirements are a bit different between C# and D, so the generated C libraries are _not_ identical between the two (even if they then use the same wx C++ libraries to link with) There's also some language differences for the native libs API. Now that DMD has broken the ABI on x86_64, the string handling needs to be redone (to use wxStringCharType* and size_t pairs?) The Unicode handling is also done differently in wxWidgets 3.0: http://docs.wxwidgets.org/trunk/overview_string.html (wxString)I've heard something about wx3.0 being in plans, if it's a significant change from the 2.x series then maybe it would be a good idea to wait for that release before attempting to update the wrappers.
One might also drop the D and Tango support, and go D2 only ? --anders
Nov 24 2011
On 11/24/2011 4:15 AM, Anders F Björklund wrote:Now that DMD has broken the ABI on x86_64,
??
Nov 24 2011
Walter Bright wrote:Now that DMD has broken the ABI on x86_64,
??
... compared with GDC, that was. Think we discussed this earlier, it's about the passing of structs as parameters compared with C++. The code is passing a D "string" to the C++ side, and then interpreting this C argument as a struct: /// length-prefixed string in UTF-8 format struct dstr { size_t length; const char* data; }; This only works in 32-bit code, and not in 64-bit. Need to use two separate .length and .ptr pairs. It should probably pass around wxString() objects instead, even if that's slightly less convenient... So instead of: static extern (C) void wxApp_SetAppName(IntPtr self, string name); static extern (C) IntPtr wxApp_GetAppName(IntPtr self); public string AppName() { return cast(string) new wxString(wxApp_GetAppName(wxobj), true); } public void AppName(string name) { wxApp_SetAppName(wxobj, name); } It should do: static extern (C) void wxApp_SetAppName(IntPtr self, IntPtr name); static extern (C) IntPtr wxApp_GetAppName(IntPtr self); public wxString AppName() { return wxApp_GetAppName(wxobj); } public void AppName(wxString name) { wxApp_SetAppName(wxobj, name); } Then it will be more explicit *when* strings are created, especially if any UTF conversion needs to be done by it. --anders
Nov 25 2011
Andrej Mitrovic wrote:Well the cool thing is I can use wxGlide to generate C++ code, and convert that to D. I tried it just now and it seems to work, but converting everything by hand is a bit of a chore.
So don't generate code, use XRC resources instead ?However even though D is C++ inspired, I just have a much easier time converting python code instead. I think this is because wxGlide puts everything into header+implementation files, and this is a chore to convert to D, whereas the equivalent python code is in one file and much shorter.
Supposedly you could patch it to generate D code... https://bitbucket.org/agriggio/wxglade/src/default/codegen/ Then you wouldn't have to convert it later at all. --anders
Nov 25 2011
Gour wrote:So don't generate code, use XRC resources instead ?
wxD can use XRC files? It would be great, then we can use some of the builders like DialogBlocks/wxForms...
See the "Xrc" demo in Samples, for some example code. http://docs.wxwidgets.org/stable/wx_xrcoverview.html --anders
Nov 25 2011
Gour wrote:I haven't build wxD yet, but just curious...you say that the sample depends on wxc\display.cpp, but I thought that wxc stuff belonged to wx.NET port, while the wxD site says: "Newer wxD version (0.10) has been updated to wxWidgets 2.6.4 and linkable with wxWidgets 2.8.4 as well, and is now based directly on the original wx classes since the previously used wx.NET was not being maintained anymore." Please advise?
You'll need to read the entire thing. http://wxd.sourceforge.net/#libraries "wxD is not a D port of wxWidgets, so it uses the C++ libraries. It is composed of two parts: (2 static libraries) * wxc is a C++ library which exposes the wxWidgets API as a collection of D-friendly functions (extern "C"). * wxd is a library written in D which parallels the wxWidgets (C++) classes, ported over from wx.NET (C#). It's then linked to the regular wx libraries from wxWidgets, [...]" So wxD (the project) consists of two sub-libraries: wxc and wxd. Whether it's libwxc.a or wxc.lib depends on the platform/compiler. wx.NET is sorta/kinda maintained again now, much like wxD itself... It changed name to "WX.Net", in some attempt to make it more .NET (probably a really bad idea, as it hinders porting from wxWidgets) Fortunately D has the "alias" keyword, instead of such renamings. http://wxnet.sourceforge.net/Edit: Now I see that wxC is/was project meant to provide basis for wxEiffel (& wxHaskell) bindings...but seeing it's not really maintained it seems to be dead end. My proposition is research about the possibility to do wxD straight from the SWIG and its D support since present approaches does not, I'm afraid, promise bright future.
If you were to use SWIG, you would still have the same two libraries ? Just that files would be: example.d + example_im.d, example_wrap.cxx (as generated by SWIG from your example.i source file and the headers) whereas they are currently called: wx/Example.d and wxc/example.cpp http://www.swig.org/Doc2.0/SWIGPlus.html You would also get all the function-pointer fun (like in Derelict), why there is the extra intermediary module to hide the dlopen junk. The wxD code uses regular bindings, so it would just link directly. But one could probably move the extern(C) declarations, if desired. http://svn.dsource.org/projects/derelict/trunk/docs/derelictify.htmlMorever, I believe there are not so many wxD-2.8.x applications written and it's reasonable to start working on 2.9/3.0 not caring much about older releases.
You could always put it in some namespace, like Derelict/Deimos does ? The classes already grow an annoying filename addition to their name anyway, unless you add all the classes to the main wx.d file directly. So it probably doesn't matter if wxApp is called "deity.wx_.app.App", as long as you have a top module to import and some reasonable aliases. When you do the SWIG interface files, you should not use the includes directly since those have a *lot* of platform/implementation details: http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk/include/wx/ (1561) Instead it's better to use the Doxygen interfaces as the basis for .i Those should focus more on the actual wx API you want to export to D: http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk/interface/wx/ (350) --anders
Nov 28 2011
Gour wrote:If you were to use SWIG, you would still have the same two libraries ? Just that files would be: example.d + example_im.d, example_wrap.cxx (as generated by SWIG from your example.i source file and the headers) whereas they are currently called: wx/Example.d and wxc/example.cpp
OK; but do you consider it would be better not to depend on wx.NET?
At this point in time it doesn't matter, the generated files are different even if the scripts to generate them are somewhat similar. The API is also different, from the different languages used and from this recent push to rename things to be more like rest of .NET. So it's not really dependent on wx.NET now, even if the wx-c-gen.pl script and a few other translation details were reused and adapted ? Other bindings, for instance for SDL and for OpenGL, were generated by similar perl scripts operating on the original C/C++ header files.The classes already grow an annoying filename addition to their name anyway, unless you add all the classes to the main wx.d file directly. So it probably doesn't matter if wxApp is called "deity.wx_.app.App", as long as you have a top module to import and some reasonable aliases.
Right. My main concern is just whether it is more feasible to provide wxD directly using SWIG'S D capability.
Easiest way to tell is to start wrapping a couple of classes, to see ? %module object %{ #include "include/wx/object.h" %} %include "interface/wx/object.h" And then use `swig -d -d2 -c++ -outcurrentdir wx/object.i` to generate. Probably need some kind of namespace workaround to create the modules as "wx.object" rather than just "object" or to convert the "wxObject". Eventually it should use <wx/object.h> and copy/fix the interface, but. Here's a more complete example of what it would look like in the end: http://svn.wxwidgets.org/svn/wx/wxPython/trunk/src/ http://wxruby.rubyforge.org/svn/trunk/wxruby/swig/classes/ Even using SWIG, there's a whole lot of code that needs to be written.When you do the SWIG interface files, you should not use the includes directly since those have a *lot* of platform/implementation details:
I believe that those things should be taken care of by e.g. cmake.
Linking is a whole other issue, this was "just" for determining the interface files for SWIG (the .i). Probably by combining both wx/*.h ?Instead it's better to use the Doxygen interfaces as the basis for .i Those should focus more on the actual wx API you want to export to D:
Yes. WxPython will also use info from Doxygen.
I think it would be needed to translate it to DDoc for it to be allowed, but wxD also makes use of Doxygen as can be seen from the API reference.So, is wxD going to continue like now, or do you envision some change how to proceed for wx-2.9/3.=?
I don't plan to do anything with it, I put it up on github so that it could be forked and maintained if there are any bugfixes etc needed... Both wxWidgets and Code::Blocks are Open Source, so if you want to continue to base the GUI and IDE for the D programming language on those there's plenty of things that could be improved for either... The same goes for GCC (and LDC), of course. Maybe even for DMD too. The wxWidgets roadmap says "We hope to make 3.0 in the spring of 2012." But as mentioned earlier, using 2.9 should be just fine before that ? It's perfectly doable to continue to use the current wxd.sourceforge.net even with wx 3.0 and D 2.0, so I think I will just leave that up as-is. Ditto for the GDC binaries there, that probably need updating both for 64-bit and for D 2 as well as for newer versions of GCC and of the OS. When starting up the "wxD2" or "$deity" - or whatever the new project would be named, it could probably do more changes than just use SWIG ? --anders
Nov 28 2011
Gour wrote:Here's a more complete example of what it would look like in the end: http://svn.wxwidgets.org/svn/wx/wxPython/trunk/src/ http://wxruby.rubyforge.org/svn/trunk/wxruby/swig/classes/
Thank you.
Of course, you don't *have* to wrap all the classes or methods ? One could start with the ones that are likely to be used from D.Even using SWIG, there's a whole lot of code that needs to be written.
Sure. We just wonder if using route will be more effective in the long run?
Automation is surely the way to go, the only question is whether it should be a custom script or if a (patched?) SWIG would be better. BTW: If it helps, there's a Doxygen parser (for the XML output) in the docs/doxygen/scripts directory that could be used to start it off: cd docs/doxygen ./regen.sh xml python scripts/make_bindings.py --swig --output_dir=bindings \ out/xml/classwx_app.xml The generated SWIG bindings are for wxPython, but I suppose you could adopt the swig_tools.SWIGBuilder to generate some D SWIG ? python scripts/doxymlparser.py --report out/xml/classwx_app.xmlI don't plan to do anything with it, I put it up on github so that it could be forked and maintained if there are any bugfixes etc needed...
OK.It's perfectly doable to continue to use the current wxd.sourceforge.net even with wx 3.0 and D 2.0, so I think I will just leave that up as-is.
OK.
Just that I won't have much time to actually maintain it, myself.When starting up the "wxD2" or "$deity" - or whatever the new project would be named, it could probably do more changes than just use SWIG ?
Thank you for making it clear. ;)
Whether it's about hosting or organization, or something different. --anders
Nov 28 2011
Gour wrote:Just that I won't have much time to actually maintain it, myself.
I'm also not capable to lead such project and would have to take that into consideration when deciding which GUI toolkit to use with D. In any case, for now, I plan to learn more D, master some CMake and start playing with SWIG in order to provide bindings for 3rd party C library which we'll use.
I'm no fan of either, and prefer plain import modules and libs over function pointers and complex tools. But I guess that was obvious.Then, in the meantime, maybe there will be more clear which toolkit is optimal to use when writing desktop app in D *today*.
Well, I believe you had the officially supported DWT and QtD plus the also available GtkD and wxD. Didn't seem like a bad selection ? All four of those are well supported toolkits, _upstream_ that is. Either GUI should do the trick for writing a desktop application. But even if Phobos/Deimos would have something like Tk (or FLTK) integrated, it probably wouldn't be accepted as a real solution. That is, just for being too ugly or too grey or something similar. Something like "MinWin" or Lucid seemed like a good idea to have in the standard D library, just a small native wrapper for GUI... But before that happens, you're stuck with the third party efforts. Now, why would you want to use D as your language(s) rather than C, Python, Java ? Or even C++. That was the real question for me. There has to be enough advantages to overcome the shortcomings, which in the end wasn't true when making desktop apps (or games). --anders
Nov 28 2011
On 2011-11-29 07:37, Gour wrote:On Mon, 28 Nov 2011 22:55:10 +0100 Anders F Björklund<afb algonet.se> wrote:I'm no fan of either, and prefer plain import modules and libs over function pointers and complex tools.
Well, my belief is that tools can help when maintaining bindings, iow. when one has to keep the API up-to-date. Of course, my experience was with c2hs (Haskell) where it was easy to notice change in the upstream's API. However, we'll try with SWIG.But I guess that was obvious.
It is.Well, I believe you had the officially supported DWT
I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
DWT is not officially supported. A couple of years ago Walter announced that DWT was going to be the official GUI library for D but that was one of the previous attempts to port SWT to D. When that happened the development of DWT stopped. I guess it was just bad timing but since that Walter has been very reluctant in doing something similar again. -- /Jacob Carlborg
Nov 28 2011
Jacob Carlborg wrote:Well, I believe you had the officially supported DWT
I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
DWT is not officially supported. A couple of years ago Walter announced that DWT was going to be the official GUI library for D but that was one of the previous attempts to port SWT to D. When that happened the development of DWT stopped. I guess it was just bad timing but since that Walter has been very reluctant in doing something similar again.
Right, that was the DWT version I meant (the non-Tango variant) Guess it happened again with QtD, after recommended by Andrei ? --anders * In "The Case for D": http://drdobbs.com/high-performance-computing/217801225
Nov 28 2011
On 2011-11-29 08:57, Anders F Björklund wrote:Jacob Carlborg wrote:Well, I believe you had the officially supported DWT
I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
DWT is not officially supported. A couple of years ago Walter announced that DWT was going to be the official GUI library for D but that was one of the previous attempts to port SWT to D. When that happened the development of DWT stopped. I guess it was just bad timing but since that Walter has been very reluctant in doing something similar again.
Right, that was the DWT version I meant (the non-Tango variant) Guess it happened again with QtD, after recommended by Andrei ? --anders * In "The Case for D": http://drdobbs.com/high-performance-computing/217801225
Hehe, D and GUI libraries don't seem to agree. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 07:37, Gour wrote:On Mon, 28 Nov 2011 22:55:10 +0100 Anders F Björklund<afb algonet.se> wrote:I'm no fan of either, and prefer plain import modules and libs over function pointers and complex tools.
Well, my belief is that tools can help when maintaining bindings, iow. when one has to keep the API up-to-date. Of course, my experience was with c2hs (Haskell) where it was easy to notice change in the upstream's API. However, we'll try with SWIG.But I guess that was obvious.
It is.Well, I believe you had the officially supported DWT
I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
BTW, I don't understand what people has against DWT/SWT. In my experience it's the toolkit that offers best native look and feeling. Note that I have no experience with wx but the screenshots on the site looks really bad. -- /Jacob Carlborg
Nov 28 2011
Jacob Carlborg wrote:I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
BTW, I don't understand what people has against DWT/SWT. In my experience it's the toolkit that offers best native look and feeling.
One advantage of DWT is/was that it linked directly with the system. With wxWidgets (in wxD), there is the C++ framework layer inbetween. But other than that, the two should be rather similar in look/feel ? At least when compared to GTK+ or Qt, using their own custom widgets.Note that I have no experience with wx but the screenshots on the site looks really bad.
What site is that ? Is it one of these: http://www.wxwidgets.org/about/screensh.htm http://wxd.sourceforge.net/screenshot.html http://wxd.sourceforge.net/#screenshots It's not supposed to look much different, from other native apps. The easiest way to see is trying the wxWidgets binaries yourself: http://wxd.sourceforge.net/#demo --anders
Nov 29 2011
On 2011-11-29 09:09, Anders F Björklund wrote:Jacob Carlborg wrote:I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...
BTW, I don't understand what people has against DWT/SWT. In my experience it's the toolkit that offers best native look and feeling.
One advantage of DWT is/was that it linked directly with the system. With wxWidgets (in wxD), there is the C++ framework layer inbetween. But other than that, the two should be rather similar in look/feel ? At least when compared to GTK+ or Qt, using their own custom widgets.Note that I have no experience with wx but the screenshots on the site looks really bad.
What site is that ? Is it one of these: http://www.wxwidgets.org/about/screensh.htm http://wxd.sourceforge.net/screenshot.html http://wxd.sourceforge.net/#screenshots It's not supposed to look much different, from other native apps. The easiest way to see is trying the wxWidgets binaries yourself: http://wxd.sourceforge.net/#demo --anders
All the Mac OS X images on this site look horrible: http://www.wxwidgets.org/about/screensh.htm But that might be a problem with the applications and not the toolkit. And the images are so horrible outdated. What version of Mac OS X is that, 10.3? BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like: * Dialog sheets * Unified toolbar * Adding menu items to the dock icon * Adding menu items to the application menu (or what it's called) I tried to run the demo, it requires Rosetta, that was a couple of versions ago of Mac OS X. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 14:35, Gour wrote:On Tue, 29 Nov 2011 13:39:42 +0100 Jacob Carlborg<doob me.com> wrote:BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like:
No idea. I know only that wxOSX port supporting Cocoa is a new one.
Then I would guess no. It's the same thing with SWT/DWT. When SWT 3.4 was developed the Cocoa port was started and it didn't get all these widgets until 3.7. Eclipse still doesn't use the native toolbar for example. -- /Jacob Carlborg
Nov 29 2011
Jacob Carlborg wrote:All the Mac OS X images on this site look horrible: http://www.wxwidgets.org/about/screensh.htm But that might be a problem with the applications and not the toolkit. And the images are so horrible outdated. What version of Mac OS X is that, 10.3?
Okay, so "horrible" was more about outdated than broken or anything. Most of the wxD screenshots are from Mac OS X 10.4 "Tiger" (2006).BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like: * Dialog sheets * Unified toolbar * Adding menu items to the dock icon * Adding menu items to the application menu (or what it's called)
It's in the nature of cross-platform toolkits to poorly support such. The sheets and toolbars should work in wxOSX/Cocoa (but not in wxMac)I tried to run the demo, it requires Rosetta, that was a couple of versions ago of Mac OS X.
All but the latest should run it OK, but I guess you need to compile. It looks like: http://www.algonet.se/~afb/wx/WidgetsDemo-MacOSX.png # 10.4 has wxWidgets 2.5.3 # 10.5 has wxWidgets 2.8.4 # 10.6 has wxWidgets 2.8.8 # 10.7 does not ship with wxWidgets. --anders
Nov 29 2011
On 2011-11-29 18:06, Anders F Björklund wrote:Jacob Carlborg wrote:All the Mac OS X images on this site look horrible: http://www.wxwidgets.org/about/screensh.htm But that might be a problem with the applications and not the toolkit. And the images are so horrible outdated. What version of Mac OS X is that, 10.3?
Okay, so "horrible" was more about outdated than broken or anything.
Well, yes. But that's the whole point, otherwise GTK+ would be an option.Most of the wxD screenshots are from Mac OS X 10.4 "Tiger" (2006).
Yeah, they look a bit better.BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like: * Dialog sheets * Unified toolbar * Adding menu items to the dock icon * Adding menu items to the application menu (or what it's called)
It's in the nature of cross-platform toolkits to poorly support such.
Unfortunately yes. But I see know reason why there can't be a corss-platform toolkit with additional platform specific widgets or similar. This is something I would like to see in a cross-platform toolkit. http://mschrag.blogspot.com/2008/06/maclipse.html When a widget is emulated, provide look and feel that would fit for the specific platform.The sheets and toolbars should work in wxOSX/Cocoa (but not in wxMac)
Ok, I see.I tried to run the demo, it requires Rosetta, that was a couple of versions ago of Mac OS X.
All but the latest should run it OK, but I guess you need to compile. It looks like: http://www.algonet.se/~afb/wx/WidgetsDemo-MacOSX.png # 10.4 has wxWidgets 2.5.3 # 10.5 has wxWidgets 2.8.4 # 10.6 has wxWidgets 2.8.8 # 10.7 does not ship with wxWidgets. --anders
Yeah, I've tried it out now, looks pretty Ok. But comparing that widget demo to SWT is basically no difference. SWT looks a bit more polished, but that might be the widget demo and not the toolkit. Does wxWdiget support: * Internationalization * Accessibility * Date widget * Validation of input fields -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 22:24, Brad Anderson wrote:On Tue, Nov 29, 2011 at 1:58 PM, Jacob Carlborg <doob me.com <mailto:doob me.com>> wrote: On 2011-11-29 18:06, Anders F Björklund wrote: Jacob Carlborg wrote: All the Mac OS X images on this site look horrible: http://www.wxwidgets.org/__about/screensh.htm <http://www.wxwidgets.org/about/screensh.htm> But that might be a problem with the applications and not the toolkit. And the images are so horrible outdated. What version of Mac OS X is that, 10.3? Okay, so "horrible" was more about outdated than broken or anything. Well, yes. But that's the whole point, otherwise GTK+ would be an option. Most of the wxD screenshots are from Mac OS X 10.4 "Tiger" (2006). Yeah, they look a bit better. BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like: * Dialog sheets * Unified toolbar * Adding menu items to the dock icon * Adding menu items to the application menu (or what it's called) It's in the nature of cross-platform toolkits to poorly support such. Unfortunately yes. But I see know reason why there can't be a corss-platform toolkit with additional platform specific widgets or similar. This is something I would like to see in a cross-platform toolkit. http://mschrag.blogspot.com/__2008/06/maclipse.html <http://mschrag.blogspot.com/2008/06/maclipse.html> When a widget is emulated, provide look and feel that would fit for the specific platform. wxWidgets tries to do just that. It is done by programmers though so sometimes they don't quite capture the look. The sheets and toolbars should work in wxOSX/Cocoa (but not in wxMac) Ok, I see. I tried to run the demo, it requires Rosetta, that was a couple of versions ago of Mac OS X. All but the latest should run it OK, but I guess you need to compile. It looks like: http://www.algonet.se/~afb/wx/__WidgetsDemo-MacOSX.png <http://www.algonet.se/~afb/wx/WidgetsDemo-MacOSX.png> # 10.4 has wxWidgets 2.5.3 # 10.5 has wxWidgets 2.8.4 # 10.6 has wxWidgets 2.8.8 # 10.7 does not ship with wxWidgets. --anders Yeah, I've tried it out now, looks pretty Ok. But comparing that widget demo to SWT is basically no difference. SWT looks a bit more polished, but that might be the widget demo and not the toolkit. Does wxWdiget support: * Internationalization Yes. * Accessibility I would imagine this is more of an OS level function so...probably? * Date widget Yes. * Validation of input fields Yes. -- /Jacob Carlborg
That's good to hear. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 09:16, Marco Leise wrote:Am 29.11.2011, 08:47 Uhr, schrieb Jacob Carlborg <doob me.com>:Note that I have no experience with wx but the screenshots on the site looks really bad.
Take a look at Code::Blocks for an example. I think it is one of the most sophisticated applications written with wxWidgets. I used to have trouble with the XML GUI definitions though. Somehow they took ages for me to load and generate the UI on Linux, but not on Windows. So I am biased slightly against wx with XML or XRC or what they are called.
I'll have a look at Code::Blocks.The images to the right http://eclipse.org/swt/ remind me of some discussion we had here. Anyway I'm fine with SWT, too and used gtkD previously. I think it looks good and is small by itself, relying mostly on functionality from the Java library where C++ libraries like QT tend to build up a large general purpose code base.
I know these images are not the best but at least they look better than wxWidget's. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 09:16, Marco Leise wrote:Am 29.11.2011, 08:47 Uhr, schrieb Jacob Carlborg <doob me.com>:Note that I have no experience with wx but the screenshots on the site looks really bad.
Take a look at Code::Blocks for an example. I think it is one of the most sophisticated applications written with wxWidgets. I used to have trouble with the XML GUI definitions though. Somehow they took ages for me to load and generate the UI on Linux, but not on Windows. So I am biased slightly against wx with XML or XRC or what they are called.
I took a quick look at Code::Blocks and it doesn't look very good (on Mac OS X), but again, it might be the application and not the toolkit. But what I can see is that it doesn't have a unified toolbar. On the other hand neither does Eclipse, but at least SWT supports unified toolbars. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 09:19, Gour wrote:I don't understand - if wxWidgets use native widgets on Windows, Linux and Mac OS X what can be bad then?
These multi-platform toolkits seems to be usually targeted to Windows or Linux and are often missing "widgets" that are only available on Mac OS X, like unified toolbars and dialog sheets. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 10:25, Marco Leise wrote:Your are practically merging two isolated worlds in your comparison: Java platform vs. the rest; [AWT, Swing, SWT] vs. [GTK+, QT, wxWidgets, ...]
But since DWT is a port of SWT (completely written in D) I think it's fair to compare SWT/DWT to gtk, qt and wxwidgets.It's probably comparable to the acceptance of D in a forum for embedded developers. I'm just thinking, that whatever toolkit has the fewest dependencies while offering the most used widgets has the best chances to make it into Phobos one day - if that is still desired.
As far as I know DWT is the only toolkit that does not require any external dependencies (except the functions provided by the OS). -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 16:50, Gour wrote:On Tue, 29 Nov 2011 15:28:56 +0100 Jacob Carlborg<doob me.com> wrote:But since DWT is a port of SWT (completely written in D) I think it's fair to compare SWT/DWT to gtk, qt and wxwidgets.
I tend to agreei, but wonder how much of the binding process can be automated or it could be done by hand only?
There's a project at dsource.org called Tioport, that tried to automated the process of port SWT to D. But the author gave up that project and started to manually port SWT instead. It turned out that you would need to port a large part of the Java standard library. There's also a C++ port of SWT available. It uses NewJ which implements the core Java API in C++. http://www.pure-native.com/swtcpp/index.html If you have basically the whole Java standard library (or the core APIs) ported to D it would be a lot easier to automate the port.As far as I know DWT is the only toolkit that does not require any external dependencies (except the functions provided by the OS).
That's strong point...Maybe I should, at least, try to compile it and check how it looks...
I recommend you give it a try. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 17:07, Gour wrote:On Tue, 29 Nov 2011 17:04:16 +0100 Jacob Carlborg<doob me.com> wrote:There's a project at dsource.org called Tioport, that tried to automated the process of port SWT to D. But the author gave up that project and started to manually port SWT instead. It turned out that you would need to port a large part of the Java standard library.
Ahh, that's not awesome.That's strong point...Maybe I should, at least, try to compile it and check how it looks...
I recommend you give it a try.
It seems it needs dsss?
No, it currently uses rake to build the project. Which means you need both ruby and rake to build DWT. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 18:25, Jacob Carlborg wrote:On 2011-11-29 17:07, Gour wrote:On Tue, 29 Nov 2011 17:04:16 +0100 Jacob Carlborg<doob me.com> wrote:There's a project at dsource.org called Tioport, that tried to automated the process of port SWT to D. But the author gave up that project and started to manually port SWT instead. It turned out that you would need to port a large part of the Java standard library.
Ahh, that's not awesome.That's strong point...Maybe I should, at least, try to compile it and check how it looks...
I recommend you give it a try.
It seems it needs dsss?
No, it currently uses rake to build the project. Which means you need both ruby and rake to build DWT.
For various reason, it's actually easier to build DWT by just compiling the an application that uses DWT using rdmd or similar. -- /Jacob Carlborg
Nov 29 2011
On 2011-11-29 19:47, Gour wrote:On Tue, 29 Nov 2011 18:27:01 +0100 Jacob Carlborg<doob me.com> wrote:For various reason, it's actually easier to build DWT by just compiling the an application that uses DWT using rdmd or similar.
Heh, but I don't have any. ;)
You can compile the snippets with this command: "rake base swt snippets" If I recall correctly. You can run "rake -T" to see what build targets are available. To build DWT you need these system libraries: http://dsource.org/projects/dwt/wiki/ImportLibraries -- /Jacob Carlborg
Nov 29 2011
On 2011-12-01 11:05, Gour wrote:On Tue, 29 Nov 2011 22:03:27 +0100 Jacob Carlborg<doob me.com> wrote:"rake base swt snippets" If I recall correctly. You can run "rake -T" to see what build targets are available. To build DWT you need these system libraries:
No experience at all with Java/SWT...downloaded hg repo and tried: [gour atmarama dwt2-c43718956f21] rake swt /home/gour/tmp/dwt/dwt2-c43718956f21/rakefile:19: Use RbConfig instead of obsolete and deprecated Config. Building org.eclipse.swt.gtk.linux.x86 workdir=>/home/gour/tmp/dwt/dwt2-c43718956f21/org.eclipse.swt.gtk.linux.x86/src org/eclipse/swt/internal/Compatibility.d(15): Error: module all is in file 'java/lang/all.d' which cannot be read import path[0] = /home/gour/tmp/dwt/dwt2-c43718956f21/org.eclipse.swt.gtk.linux.x86/src import path[1] = /home/gour/tmp/dwt/dwt2-c43718956f21/imp import path[2] = /usr/include/d import path[3] = /usr/include/d/druntime/import rake aborted! compile error Tasks: TOP => swt (See full trace by running task with --trace) Any idea?
You need to build the "base" library as well, run "rake base swt". The "base" library contains a port of a small part of the Java core API's, this makes it easier to port SWT. You can build the and try snippets as well. -- /Jacob Carlborg
Dec 01 2011
On 2011-12-01 15:09, Gour wrote:On Thu, 01 Dec 2011 13:29:41 +0100 Jacob Carlborg<doob me.com> wrote:You need to build the "base" library as well, run "rake base swt". The "base" library contains a port of a small part of the Java core API's, this makes it easier to port SWT.
[gour atmarama dwt2-c43718956f21] rake base swt /home/gour/tmp/dwt/dwt2-c43718956f21/rakefile:19: Use RbConfig instead of obsolete and deprecated Config. Building dwt-base workdir=>/home/gour/tmp/dwt/dwt2-c43718956f21/base/src java/nonstandard/RuntimeTraits.d(86): do-while statement requires terminating ; rake aborted! compile error
Ok, apparently later versions of the compiler have become better and catches this miss. -- /Jacob Carlborg
Dec 01 2011
On 12/01/2011 04:45 PM, Jacob Carlborg wrote:On 2011-12-01 15:09, Gour wrote:On Thu, 01 Dec 2011 13:29:41 +0100 Jacob Carlborg<doob me.com> wrote:You need to build the "base" library as well, run "rake base swt". The "base" library contains a port of a small part of the Java core API's, this makes it easier to port SWT.
[gour atmarama dwt2-c43718956f21] rake base swt /home/gour/tmp/dwt/dwt2-c43718956f21/rakefile:19: Use RbConfig instead of obsolete and deprecated Config. Building dwt-base workdir=>/home/gour/tmp/dwt/dwt2-c43718956f21/base/src java/nonstandard/RuntimeTraits.d(86): do-while statement requires terminating ; rake aborted! compile error
Ok, apparently later versions of the compiler have become better and catches this miss.
Blame me. :o) https://github.com/D-Programming-Language/dmd/pull/372 It actually still will compile with the -d flag enabled. Or you could add the ';'.
Dec 01 2011
Gour wrote:All four of those are well supported toolkits, _upstream_ that is. Either GUI should do the trick for writing a desktop application.
Upstream was never meant as part of the problem which is on the D-side. :-)
True that. I suppose that part of the problem is that C++ doesn't link with anything else, unless you bother to do an extern "C" interface ?But even if Phobos/Deimos would have something like Tk (or FLTK) integrated, it probably wouldn't be accepted as a real solution.
Right.That is, just for being too ugly or too grey or something similar.
Or too light perhaps. ;)
That part I'm not so sure about, both toolkits have tons of widgets. At least when compared to something homegrown and language-specific ?Now, why would you want to use D as your language(s) rather than C, Python, Java ? Or even C++. That was the real question for me.
Because I want to work on open-source project in my spare time and that should have some component of 'fun'...C& C++ are not falling into that category, I don't know nor like Java, not inspired about Lisp-languages, Haskell is too-theoretical...which leaves me with the Python, but I find D as sweet spot between scripting languages& C(++). Moreover, it will be bigger project which would need longer maintainance and we believe that although D is not maybe completely ready today, it will be soon enough, so we can start working by writing non-GUI libs for the project.
Right. I guess some of that sweetness faded with moving to D1/Tango and then to D2/Phobos. Or when the GDC project needed more maintenance. Both problems were fixable (and fixed), just added to the resistance. And if there's too much effort in practice, then it stops being fun... But I think that the effort _was_ successful, there was an open source DMD (GDC), GUI (wxWidgets) and IDE (Code::Blocks) released for D(1) ? Something more is needed, but what it would be and what it will look like I don't know. Probably something more close to the new language.There has to be enough advantages to overcome the shortcomings, which in the end wasn't true when making desktop apps (or games).
"De gustibus non est disputandum..."
Or maybe it just doesn't have the same shine that it did, 5 years ago. --anders
Nov 29 2011
Gour wrote:Something more is needed, but what it would be and what it will look like I don't know. Probably something more close to the new language.
Some more organization and collective effort. DMD/Phobos looks OK now.
I'm sticking with the original business plan: 1. Move to github.com 2. ? 3. Profit!Probably something more close to the new language.
I bet it's too early for that. D community cannot even properly maintaint bindings, what to speak of native GUI lib. However, having, at least, one bindings with higher-level D-ish API would be very welcome.
I think the original plan was to build that on top of something. So you have a straight porting of some general API, and then another layer on top of that with a more highlevel approach ? But using all those wrappers-on-wrappers do get a bit "oniony".Or maybe it just doesn't have the same shine that it did, 5 years ago.
What?
Using a new shiny language, tends to naturally fade after a while. --anders
Nov 29 2011
Gerrit Wichert wrote:So, is wxD going to continue like now, or do you envision some change how to proceed for wx-2.9/3.=?
I don't plan to do anything with it, I put it up on github so that it could be forked and maintained if there are any bugfixes etc needed...
repository and continue it as an independent project ?
The way to keep the project alive was to contribute to SourceForge, moving the repository to github is to connect with the D community. Either way, to keep it alive you just need to use it. By using git, it doesn't matter to which repository the commits are actually done. --anders
Nov 28 2011
Gour wrote:The way to keep the project alive was to contribute to SourceForge, moving the repository to github is to connect with the D community.
Have you read http://zbowling.github.com/blog/2011/11/25/github/ ? Github& forks are not panacea if there are not people ready to work together on the project.
Apparently CVS was getting in the way. I was fine with either myself. Main repo is at http://sourceforge.net/scm/?type=git&group_id=133831Moreover, your announcement to step down set the tone for the project...
It's been drifting for a year, I don't think there's any announcement. All I said was that I don't have the energy to start over with wx3/D2. The project should be fine for wxWidgets 2.8.12, maybe I just didn't emphasize that fact enough. It even "works" with 2.9.2 and DMD 2.054, although not using any of the newer features. That's not too shabby ? It's been 5 years. http://www.algonet.se/~afb/wx/wxWidgets-Minimal.html --anders
Nov 29 2011
Gour wrote:It's been drifting for a year, I don't think there's any announcement.
Well, on 26th of August you wrote: "I am also stepping down as a maintainer, including the pre-built GDC distribution (gdcwin/gdcgnu/gdcmac) and the Code::Blocks support for D." and after being questioned by Andrej: "Do you mean you're stepping down as the maintainer of wxd, or just the GDC/CodeBlocks stuff?" your answer was: "All three. Mostly wxD, but also the others - not using." and your firt message cited above when all this wxD-thingie has started for me. :-)
Ah, right :-) I do think it would make more sense if it was maintained by someone actually using the software on a daily basis, but if nobody steps up I suppose it could also be left (in the current state) for a while ? Either would be fine: starting over with SWIG, or keeping Status Quo.All I said was that I don't have the energy to start over with wx3/D2.
I understand you.The project should be fine for wxWidgets 2.8.12, maybe I just didn't emphasize that fact enough. It even "works" with 2.9.2 and DMD 2.054, although not using any of the newer features. That's not too shabby ?
Not at all, but considering wx-3.0 is the future, the project is stalled at the moment.
Right, I guess it's "in maintenance" (without ever leaving Alpha stage). If the 3.0 release would include a C version, that would change things since that would mean that some of the SWIG code could be shared with other language bindings (such as C# or Java, or perhaps Python or Ruby). Currently each extra language has their own set of SWIG interface files. --anders
Nov 29 2011
So, is wxD going to continue like now, or do you envision some change how to proceed for wx-2.9/3.=?
I don't plan to do anything with it, I put it up on github so that it could be forked and maintained if there are any bugfixes etc needed...
repository and continue it as an independent project ?
Nov 28 2011
Am 29.11.2011, 10:19 Uhr, schrieb Gour <gour atmarama.net>:On Tue, 29 Nov 2011 09:58:36 +0100 "Marco Leise" <Marco.Leise gmx.de> wrote:Precisely this: http://forums.codeblocks.org/index.php/topic,13660.0.html And debugging this lead me to the line where the XRC is parsed. It may after all have been an issue with my system / the xml library / gtk / compiz / etc... The experience just left a bad taste for me.
I can understand there is bad taste, but isn't it the problem of Code:Blocks? Have you tried using e.g. DialogBlocks and see how it behaves? Sincerely, Gour
Since the time was spent in the call to the XRC parser and it works fast on Windows and other people's Linux boxes, I think it is a problem outside of Code::Blocks. I haven't looked into any other wxWidgets applications, no. I think it is a good library in general though from what I've heard, so keep the arguments coming :)
Nov 29 2011
Am 29.11.2011, 09:26 Uhr, schrieb Gour <gour atmarama.net>:On Tue, 29 Nov 2011 09:16:09 +0100 "Marco Leise" <Marco.Leise gmx.de> wrote:Take a look at Code::Blocks for an example. I think it is one of the most sophisticated applications written with wxWidgets. I used to have trouble with the XML GUI definitions though. Somehow they took ages for me to load and generate the UI on Linux, but not on Windows.
That's strange and it is the first time I heard something like that. Two days ago I also asked on wxWidgets list if using XRC is kind of idiomatic within wxWidgets community and Vadim Zeitlin (one of the core devs) replied: "Personally I've never really understood the appeal of compiling into code and whenever I use XRC I load it during run-time. Perhaps you can gain some minor performance advantage from compiling it into code (although I don't know if anybody has ever really measured this) but using XRC is much more flexible as you can tweak it without recompiling/rebuilding and often even without restarting the program so I'd definitely recommend using it as is, at least in the beginning."So I am biased slightly against wx with XML or XRC or what they are called.
I'd say your experience is probably not the accurate representation. Was your problem with slow loading when using C++ or wxD? Sincerely, Gour
Precisely this: http://forums.codeblocks.org/index.php/topic,13660.0.html And debugging this lead me to the line where the XRC is parsed. It may after all have been an issue with my system / the xml library / gtk / compiz / etc... The experience just left a bad taste for me.
Nov 29 2011
Am 29.11.2011, 08:47 Uhr, schrieb Jacob Carlborg <doob me.com>:Note that I have no experience with wx but the screenshots on the site looks really bad.
Take a look at Code::Blocks for an example. I think it is one of the most sophisticated applications written with wxWidgets. I used to have trouble with the XML GUI definitions though. Somehow they took ages for me to load and generate the UI on Linux, but not on Windows. So I am biased slightly against wx with XML or XRC or what they are called. The images to the right http://eclipse.org/swt/ remind me of some discussion we had here. Anyway I'm fine with SWT, too and used gtkD previously. I think it looks good and is small by itself, relying mostly on functionality from the Java library where C++ libraries like QT tend to build up a large general purpose code base.
Nov 29 2011
--f46d04083f4b3f6c1304b2e63f66 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Tue, Nov 29, 2011 at 1:58 PM, Jacob Carlborg <doob me.com> wrote:On 2011-11-29 18:06, Anders F Bj=F6rklund wrote:Jacob Carlborg wrote:All the Mac OS X images on this site look horrible: http://www.wxwidgets.org/**about/screensh.htm<http://www.wxwidgets.org/=
But that might be a problem with the applications and not the toolkit. And the images are so horrible outdated. What version of Mac OS X is that, 10.3?
Okay, so "horrible" was more about outdated than broken or anything.
Well, yes. But that's the whole point, otherwise GTK+ would be an option. Most of the wxD screenshots are from Mac OS X 10.4 "Tiger" (2006).
Yeah, they look a bit better. BTW, how is the support for Mac OS X specific "widgets" that are usuallynot available on other platforms, like: * Dialog sheets * Unified toolbar * Adding menu items to the dock icon * Adding menu items to the application menu (or what it's called)
It's in the nature of cross-platform toolkits to poorly support such.
Unfortunately yes. But I see know reason why there can't be a corss-platform toolkit with additional platform specific widgets or simil=
This is something I would like to see in a cross-platform toolkit. http://mschrag.blogspot.com/**2008/06/maclipse.html<http://mschrag.blogsp=
When a widget is emulated, provide look and feel that would fit for the specific platform.
sometimes they don't quite capture the look.The sheets and toolbars should work in wxOSX/Cocoa (but not in wxMac)
Ok, I see. I tried to run the demo, it requires Rosetta, that was a couple ofversions ago of Mac OS X.
All but the latest should run it OK, but I guess you need to compile. It looks like: http://www.algonet.se/~afb/wx/**WidgetsDemo-MacOSX.png<ht=
# 10.4 has wxWidgets 2.5.3 # 10.5 has wxWidgets 2.8.4 # 10.6 has wxWidgets 2.8.8 # 10.7 does not ship with wxWidgets. --anders
Yeah, I've tried it out now, looks pretty Ok. But comparing that widget demo to SWT is basically no difference. SWT looks a bit more polished, bu=
that might be the widget demo and not the toolkit. Does wxWdiget support: * Internationalization
Yes.* Accessibility
I would imagine this is more of an OS level function so...probably?* Date widget
Yes.* Validation of input fields
Yes.-- /Jacob Carlborg
--f46d04083f4b3f6c1304b2e63f66 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Tue, Nov 29, 2011 at 1:58 PM, Jacob Carlborg <span dir=3D"ltr"><<a hr= ef=3D"mailto:doob me.com">doob me.com</a>></span> wrote:<br><div class= =3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8= ex;border-left:1px #ccc solid;padding-left:1ex;"> <div class=3D"im">On 2011-11-29 18:06, Anders F Bj=F6rklund wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> Jacob Carlborg wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> All the Mac OS X images on this site look horrible:<br> <a href=3D"http://www.wxwidgets.org/about/screensh.htm" target=3D"_blank">h= ttp://www.wxwidgets.org/<u></u>about/screensh.htm</a><br> <br> But that might be a problem with the applications and not the toolkit.<br> And the images are so horrible outdated. What version of Mac OS X is<br> that, 10.3?<br> </blockquote> <br> Okay, so "horrible" was more about outdated than broken or anythi= ng.<br> </blockquote> <br></div> Well, yes. But that's the whole point, otherwise GTK+ would be an optio= n.<div class=3D"im"><br> <br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> Most of the wxD screenshots are from Mac OS X 10.4 "Tiger" (2006)= .<br> </blockquote> <br></div> Yeah, they look a bit better.<div class=3D"im"><br> <br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><blockquote class=3D"gmail_quote" style=3D"m= argin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> BTW, how is the support for Mac OS X specific "widgets" that are = usually<br> not available on other platforms, like:<br> <br> * Dialog sheets<br> * Unified toolbar<br> * Adding menu items to the dock icon<br> * Adding menu items to the application menu (or what it's called)<br> </blockquote> <br> It's in the nature of cross-platform toolkits to poorly support such.<b= r> </blockquote> <br></div> Unfortunately yes. But I see know reason why there can't be a corss-pla= tform toolkit with additional platform specific widgets or similar.<br> <br> This is something I would like to see in a cross-platform toolkit.<br> <br> <a href=3D"http://mschrag.blogspot.com/2008/06/maclipse.html" target=3D"_bl= ank">http://mschrag.blogspot.com/<u></u>2008/06/maclipse.html</a><br> <br> When a widget is emulated, provide look and feel that would fit for the spe= cific platform.<div class=3D"im"><br></div></blockquote><div><br></div><div=wxWidgets tries to do just that. =A0It is done by programmers though so so=
<div>=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;= border-left:1px #ccc solid;padding-left:1ex;"><div class=3D"im"> <br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> The sheets and toolbars should work in wxOSX/Cocoa (but not in wxMac)<br> </blockquote> <br></div> Ok, I see.<div class=3D"im"><br> <br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><blockquote class=3D"gmail_quote" style=3D"m= argin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> I tried to run the demo, it requires Rosetta, that was a couple of<br> versions ago of Mac OS X.<br> </blockquote> <br> All but the latest should run it OK, but I guess you need to compile.<br> <br> It looks like: <a href=3D"http://www.algonet.se/~afb/wx/WidgetsDemo-MacOSX.= png" target=3D"_blank">http://www.algonet.se/~afb/wx/<u></u>WidgetsDemo-Mac= OSX.png</a><br> <br> # 10.4 has wxWidgets 2.5.3<br> # 10.5 has wxWidgets 2.8.4<br> # 10.6 has wxWidgets 2.8.8<br> # 10.7 does not ship with wxWidgets.<br> <br> --anders<br> </blockquote> <br></div> Yeah, I've tried it out now, looks pretty Ok. But comparing that widget= demo to SWT is basically no difference. SWT looks a bit more polished, but= that might be the widget demo and not the toolkit.<br> <br> Does wxWdiget support:<br> <br> * Internationalization<br></blockquote><div><br></div><div>Yes.</div><div>= =A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde= r-left:1px #ccc solid;padding-left:1ex;"> * Accessibility<br></blockquote><div><br></div><div>I would imagine this is= more of an OS level function so...probably?</div><div>=A0</div><blockquote= class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc soli= d;padding-left:1ex;"> * Date widget<br></blockquote><div><br></div><div>Yes.</div><div>=A0</div><= blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px= #ccc solid;padding-left:1ex;"> * Validation of input fields</blockquote><div><br></div><div>Yes.=A0</div><= div><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;= border-left:1px #ccc solid;padding-left:1ex;"><span class=3D"HOEnZb"><font = color=3D"#888888"><br> <br> -- <br> /Jacob Carlborg<br> </font></span></blockquote></div><br> --f46d04083f4b3f6c1304b2e63f66--
Nov 29 2011
You'll have to ask Anders that. I'm guessing what needs to be done is to update the wxc wrapper, and recreate the D wrapper based on the C# port. I've heard something about wx3.0 being in plans, if it's a significant change from the 2.x series then maybe it would be a good idea to wait for that release before attempting to update the wrappers.
Nov 23 2011
--f46d042f96cc16bac604b26ae52f Content-Type: text/plain; charset=ISO-8859-1 On Wed, Nov 23, 2011 at 10:19 AM, Andrej Mitrovic < andrej.mitrovich gmail.com> wrote:You'll have to ask Anders that. I'm guessing what needs to be done is to update the wxc wrapper, and recreate the D wrapper based on the C# port. I've heard something about wx3.0 being in plans, if it's a significant change from the 2.x series then maybe it would be a good idea to wait for that release before attempting to update the wrappers.
2.9 is very close to what 3.0 will be (it is the development version for the 3.0 release). All the major changes are done. It'd be fine to work against 2.9 in anticipation of 3.0 support. Regards, Brad Anderson --f46d042f96cc16bac604b26ae52f Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Wed, Nov 23, 2011 at 10:19 AM, Andrej Mitrovic <span dir=3D"ltr"><<a = href=3D"mailto:andrej.mitrovich gmail.com">andrej.mitrovich gmail.com</a>&g= t;</span> wrote:<br><div class=3D"gmail_quote"><blockquote class=3D"gmail_q= uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e= x;"> You'll have to ask Anders that.<br> <br> I'm guessing what needs to be done is to update the wxc wrapper, and<br=
<br> I've heard something about wx3.0 being in plans, if it's a signific= ant<br> change from the 2.x series then maybe it would be a good idea to wait<br> for that release before attempting to update the wrappers.<br> </blockquote></div><br><div>2.9 is very close to what 3.0 will be (it is th= e development version for the 3.0 release). =A0All the major changes are do= ne. =A0It'd be fine to work against 2.9 in anticipation of 3.0 support.= </div> <div><br></div><div>Regards,</div><div>Brad Anderson</div> --f46d042f96cc16bac604b26ae52f--
Nov 23 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Wed, 23 Nov 2011 11:14:46 -0700 Brad Anderson <eco gnuk.net> wrote:2.9 is very close to what 3.0 will be (it is the development version for the 3.0 release). All the major changes are done. It'd be fine to work against 2.9 in anticipation of 3.0 support.
+1 Btw, on wxwidgets list I've heard about "C target language backend" and asked on swig list about its status... See http://swig.svn.sourceforge.net/viewvc/swig/branches/gsoc2008-maciekd/D= oc/Manual/C.html Sincerely, Gour --=20 One who is able to withdraw his senses from sense objects,=20 as the tortoise draws its limbs within the shell,=20 is firmly fixed in perfect consciousness. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 23 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 24 Nov 2011 12:01:46 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:Maybe one would want to regenerate the D API for wxWidgets 3.0, but should work fine without - similar to "WXWIN_COMPATIBILITY_*"
I'm reading SWIG docs and there is says: "...SWIG is quite capable in supporting most of C++. Some of the major features include: * Full C99 preprocessing. * All ANSI C and C++ datatypes. * Functions, variables, and constants. * Classes. * Single and multiple inheritance. * Overloaded functions and methods. * Overloaded operators. * C++ templates (including member templates, specialization, and partial sp= ecialization). * Namespaces. * Variable length arguments. * C++ smart pointers.=20 Currently, the only major C++ feature not supported is nested classes--a limitation that should be removed in a future release, but has some workarounds for the moment. It is important to stress that SWIG is not a simplistic C++ lexing tool like several apparently similar wrapper generation tools. SWIG not only parses C++, it implements the full C++ type system and it is able to understand C++ semantics. SWIG generates its wrappers with full knowledge of this information. As a result, you will find SWIG to be just as capable of dealing with nasty corner cases as it is in wrapping simple C++ code. In fact, SWIG is able handle C++ code that stresses the very limits of many C++ compilers." What do you think about providing wxWidgets 3.0 API using SWIG? I've asked for opinion Robin who is doing wxpython and has plenty of experience with both wx & SWIG...waiting for his reply. Sincerely, Gour --=20 As a strong wind sweeps away a boat on the water,=20 even one of the roaming senses on which the mind=20 focuses can carry away a man's intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 24 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 24 Nov 2011 13:15:49 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:One might also drop the D and Tango support, and go D2 only ?
+1 and do wx-3.0 only. Sincerely, Gour --=20 Those who are on this path are resolute in purpose,=20 and their aim is one. O beloved child of the Kurus,=20 the intelligence of those who are irresolute is many-branched. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 24 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Thu, 24 Nov 2011 13:55:23 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:http://xkcd.com/224/
LOL.Sounds like a good idea, though you probably want to use SWIG 2.0 for the improved D support - while wxPython uses SWIG 1.3 afaict ?
I do not know about wxPython, but, yes, SWIG 2.0 which has support for D.I would drop support for wxWidgets 2.x and DMD 1.x - and go for wxWidgets 2.9.x and DMD 2.0xx directly.=20
I fully agree,And pick one "make" (GNU).
That's not fully clear to me.Trying to support two languages, two libraries, two+ compilers, two+ buildtools, and so on, was just no fun and not very workable ?
Can you explain what do you think?It's easier to just use configure+make, and MSYS/MinGW on Windows, than trying to work with the DOS console (in C++) or DM's Make.exe.
I'm also thinking about cmake and will try to help Jens to prepare cmaked2 to be included in the upstream. Cmake is not the most elegant tool, but it works and I got confirmation that it supports dmd & gdc. What do you think? Sincerely, Gour --=20 As a strong wind sweeps away a boat on the water,=20 even one of the roaming senses on which the mind=20 focuses can carry away a man's intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 24 2011
Well the cool thing is I can use wxGlide to generate C++ code, and convert that to D. I tried it just now and it seems to work, but converting everything by hand is a bit of a chore. The biggest problem by far are the enums, since wxWidgets enums don't have a "tag" while the wxd enums do. This might be fixable via some quick shell scripts. However even though D is C++ inspired, I just have a much easier time converting python code instead. I think this is because wxGlide puts everything into header+implementation files, and this is a chore to convert to D, whereas the equivalent python code is in one file and much shorter. I definitely think I'll start using wxd from now on. :)
Nov 24 2011
I'm just a little confused about that wxWindows license. So basically, if I release my sources then they have to be GPL, but if I don't then I can distribute only the binaries freely? IOW, I can't license my sources with Boost or similar if I use wxd?
Nov 24 2011
--f46d040712a7182af704b288bc65 Content-Type: text/plain; charset=ISO-8859-1 On Thu, Nov 24, 2011 at 9:52 PM, Andrej Mitrovic <andrej.mitrovich gmail.comwrote:
I'm just a little confused about that wxWindows license. So basically, if I release my sources then they have to be GPL, but if I don't then I can distribute only the binaries freely? IOW, I can't license my sources with Boost or similar if I use wxd?
It's just LGPL unless you are writing something closed source, then you are free to distribute on your own terms. Kind of a weird license but not too complicated if you already know how to work with LGPL libraries. --f46d040712a7182af704b288bc65 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Thu, Nov 24, 2011 at 9:52 PM, Andrej Mitrovic <span dir=3D"ltr"><<a h= ref=3D"mailto:andrej.mitrovich gmail.com">andrej.mitrovich gmail.com</a>>= ;</span> wrote:<br><div class=3D"gmail_quote"><blockquote class=3D"gmail_qu= ote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex= ;"> I'm just a little confused about that wxWindows license. So basically,<= br> if I release my sources then they have to be GPL, but if I don't then<b= r> I can distribute only the binaries freely? IOW, I can't license my<br> sources with Boost or similar if I use wxd?<br> </blockquote></div><br><div>It's just LGPL unless you are writing somet= hing closed source, then you are free to distribute on your own terms. =A0K= ind of a weird license but not too complicated if you already know how to w= ork with LGPL libraries.</div> --f46d040712a7182af704b288bc65--
Nov 24 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Fri, 25 Nov 2011 05:35:52 +0100 Andrej Mitrovic <andrej.mitrovich gmail.com> wrote:Well the cool thing is I can use wxGlide to generate C++ code, and convert that to D. I tried it just now and it seems to work, but converting everything by hand is a bit of a chore.
Huh, does it fall in the category of 'language bindings' ? :-)I definitely think I'll start using wxd from now on. :)
Great! Sincerely, Gour --=20 The senses are so strong and impetuous, O Arjuna,=20 that they forcibly carry away the mind even of a man=20 of discrimination who is endeavoring to control them. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 24 2011
On 11/25/11, Gour <gour atmarama.net> wrote:Huh, does it fall in the category of 'language bindings' ? :-)
It's a GUI builder with code generation: http://wxglade.sourceforge.net/ Or maybe I didn't get the joke? Hehe
Nov 24 2011
On 11/25/11, Anders F Bj=F6rklund <afb algonet.se> wrote:Andrej Mitrovic wrote:Well the cool thing is I can use wxGlide to generate C++ code, and convert that to D. I tried it just now and it seems to work, but converting everything by hand is a bit of a chore.
So don't generate code, use XRC resources instead ?
I haven't thought of that! I'm very new to wxWidgets, thanks for the tip.
Nov 25 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 25 Nov 2011 11:07:45 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:So don't generate code, use XRC resources instead ?
wxD can use XRC files? It would be great, then we can use some of the builders like DialogBlocks/wxForms... Sincerely, Gour --=20 One who restrains his senses, keeping them under full control,=20 and fixes his consciousness upon Me, is known as a man of=20 steady intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 25 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Fri, 25 Nov 2011 08:51:19 +0100 Andrej Mitrovic <andrej.mitrovich gmail.com> wrote:On 11/25/11, Gour <gour atmarama.net> wrote:Huh, does it fall in the category of 'language bindings' ? :-)
Or maybe I didn't get the joke? Hehe
;) Sincerely, Gour --=20 As the embodied soul continuously passes, in this body,=20 from boyhood to youth to old age, the soul similarly passes=20 into another body at death. A sober person is not bewildered=20 by such a change. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 25 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Fri, 25 Nov 2011 11:24:02 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:Drop D1, drop Tango, and make DMD the default compiler syntax (possibly using gdmd or ldmd behind the covers, where desired)
+1It would just generate a Makefile anyway ? But if it could generate the IDE projects, then maybe it's worth pursuing...
Here is the list of gnerators available in cmake: Borland Makefiles MSYS Makefiles MinGW Makefiles NMake Makefiles Unix Makefiles Visual Studio 6 Visual Studio 7 Visual Studio 7 .NET 2003 Visual Studio 8 2005 Visual Studio 8 2005 Win64 Visual Studio 9 2008 Visual Studio 9 2008 Win64 Watcom WMake CodeBlocks - MinGW Makefiles CodeBlocks - Unix Makefiles Eclipse CDT4 - MinGW Makefiles Eclipse CDT4 - NMake Makefiles Eclipse CDT4 - Unix Makefiles check: http://www.cmake.org/cmake/help/cmake2.6docs.html#section_Generators btw, I'm going to help Jens to push cmake2d upstream to be included in the official release. Sincerely, Gour --=20
Nov 25 2011
I've managed to get StyledTextCtrl compiled and working. I had to add a few missing .obj/.cpp file entries in the DMC makefile for the StyledTextCtrl contrib tree (just a couple of lexer files), but there was also a cyclic import problem in wxd between wx.StyledTextCtrl's and wx.TaskBarIcon's module ctors. So as a temporary workaround I've merged STC's ctor into TaskBarIcon.d. Btw, how can I figure out what "int style" means for STC? The docs I've found only don't say anything about what that option is in the ctor. I'm trying to make STC autoexpand in a tab widget. But STC stays the same size when I resize the window: http://paste.pocoo.org/show/513430/ Maybe I need to use events on size changes?
Nov 26 2011
--f46d042dfdb5daea5c04b2b591b8 Content-Type: text/plain; charset=ISO-8859-1 On Sat, Nov 26, 2011 at 11:27 PM, Andrej Mitrovic < andrej.mitrovich gmail.com> wrote:I've managed to get StyledTextCtrl compiled and working. I had to add a few missing .obj/.cpp file entries in the DMC makefile for the StyledTextCtrl contrib tree (just a couple of lexer files), but there was also a cyclic import problem in wxd between wx.StyledTextCtrl's and wx.TaskBarIcon's module ctors. So as a temporary workaround I've merged STC's ctor into TaskBarIcon.d. Btw, how can I figure out what "int style" means for STC? The docs I've found only don't say anything about what that option is in the ctor. I'm trying to make STC autoexpand in a tab widget. But STC stays the same size when I resize the window: http://paste.pocoo.org/show/513430/ Maybe I need to use events on size changes?
The style int is a bitfield with stuff like border options and sometimes control specific settings. Check wxWindow's documentation for the basic styles. You use sizers for pretty much all layout work in wxWidgets. To do what you want you could make a vertical box sizer, add the STC with a proportion of 1 (expand vertically) and wxEXPAND flag (expand horizontally), and set it as the sizer of the parent window. This short tutorial is helpful for learning to use sizers: http://neume.sourceforge.net/sizerdemo/ Regards, Brad Anderson --f46d042dfdb5daea5c04b2b591b8 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Sat, Nov 26, 2011 at 11:27 PM, Andrej Mitrovic <span dir=3D"ltr"><<a = href=3D"mailto:andrej.mitrovich gmail.com">andrej.mitrovich gmail.com</a>&g= t;</span> wrote:<br><div class=3D"gmail_quote"><blockquote class=3D"gmail_q= uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e= x;"> I've managed to get StyledTextCtrl compiled and working. I had to add<b= r> a few missing .obj/.cpp file entries in the DMC makefile for the<br> StyledTextCtrl contrib tree (just a couple of lexer files), but there<br> was also a cyclic import problem in wxd between wx.StyledTextCtrl's<br> and wx.TaskBarIcon's module ctors.<br> <br> So as a temporary workaround I've merged STC's ctor into TaskBarIco= n.d.<br> <br> Btw, how can I figure out what "int style" means for STC? The doc= s<br> I've found only don't say anything about what that option is in the= <br> ctor. I'm trying to make STC autoexpand in a =A0tab widget. But STC<br> stays the same size when I resize the window:<br> <a href=3D"http://paste.pocoo.org/show/513430/" target=3D"_blank">http://pa= ste.pocoo.org/show/513430/</a><br> <br> Maybe I need to use events on size changes?<br> </blockquote></div><div><br></div><div>The style int is a bitfield with stu= ff like border options and sometimes control specific settings. =A0Check wx= Window's documentation for the basic styles.</div><br><div>You use size= rs for pretty much all layout work in wxWidgets. =A0To do what you want you= could make a vertical box sizer, add the STC with a proportion of 1 (expan= d vertically) and wxEXPAND flag (expand horizontally), and set it as the si= zer of the parent window.</div> <div><br></div><div>This short tutorial is helpful for learning to use size= rs:=A0<a href=3D"http://neume.sourceforge.net/sizerdemo/">http://neume.sour= ceforge.net/sizerdemo/</a></div><div><br></div><div>Regards,</div><div>Brad= Anderson</div> --f46d042dfdb5daea5c04b2b591b8--
Nov 27 2011
Ah right, sizers. I forgot to set a sizer for the tab. Now it works: http://codepad.org/Kc5TxXjU Thanks!
Nov 27 2011
FWIW I've got the StyledText sample fixed for D2 (it wasn't compiling for D1 either). It has a dependency on the Display class, and it seems wxd is compiled with this class but you can't use it because it depends on wxc\display.cpp, which has a whole section idfef'd out (via #if wxUSE_DISPLAY). So naturally there's linker errors. I tried but I couldn't compile the wxc\display.cpp file when I defined wxUSE_DISPLAY, I kept getting weird DMC errors. Anywho the sample only used it for priting so I just disabled that functionality.
Nov 27 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 28 Nov 2011 02:11:24 +0100 Andrej Mitrovic <andrej.mitrovich gmail.com> wrote:It has a dependency on the Display class, and it seems wxd is compiled with this class but you can't use it because it depends on wxc\display.cpp, which has a whole section idfef'd out (via #if wxUSE_DISPLAY). So naturally there's linker errors.
I haven't build wxD yet, but just curious...you say that the sample depends on wxc\display.cpp, but I thought that wxc stuff belonged to wx.NET port, while the wxD site says: "Newer wxD version (0.10) has been updated to wxWidgets 2.6.4 and linkable with wxWidgets 2.8.4 as well, and is now based directly on the original wx classes since the previously used wx.NET was not being maintained anymore." Please advise? Edit: Now I see that wxC is/was project meant to provide basis for wxEiffel (& wxHaskell) bindings...but seeing it's not really maintained it seems to be dead end. My proposition is research about the possibility to do wxD straight from the SWIG and its D support since present approaches does not, I'm afraid, promise bright future. Morever, I believe there are not so many wxD-2.8.x applications written and it's reasonable to start working on 2.9/3.0 not caring much about older releases. Sincerely, Gour --=20 A person who is not disturbed by the incessant flow of=20 desires =E2=80=94 that enter like rivers into the ocean, which is=20 ever being filled but is always still =E2=80=94 can alone achieve=20 peace, and not the man who strives to satisfy such desires. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 27 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 28 Nov 2011 12:20:27 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:You'll need to read the entire thing. http://wxd.sourceforge.net/#libraries
Ahh, thank you. Somehow I did miss it. :-(So wxD (the project) consists of two sub-libraries: wxc and wxd. Whether it's libwxc.a or wxc.lib depends on the platform/compiler.
OK.If you were to use SWIG, you would still have the same two libraries ? Just that files would be: example.d + example_im.d, example_wrap.cxx (as generated by SWIG from your example.i source file and the headers) whereas they are currently called: wx/Example.d and wxc/example.cpp
OK; but do you consider it would be better not to depend on wx.NET?The classes already grow an annoying filename addition to their name anyway, unless you add all the classes to the main wx.d file directly. So it probably doesn't matter if wxApp is called "deity.wx_.app.App", as long as you have a top module to import and some reasonable aliases.
Right. My main concern is just whether it is more feasible to provide wxD directly using SWIG'S D capability.When you do the SWIG interface files, you should not use the includes directly since those have a *lot* of platform/implementation details:
I believe that those things should be taken care of by e.g. cmake.Instead it's better to use the Doxygen interfaces as the basis for .i Those should focus more on the actual wx API you want to export to D:
Yes. WxPython will also use info from Doxygen. So, is wxD going to continue like now, or do you envision some change how to proceed for wx-2.9/3.=3D? Sincerely, Gour --=20 A person who is not disturbed by the incessant flow of=20 desires =E2=80=94 that enter like rivers into the ocean, which is=20 ever being filled but is always still =E2=80=94 can alone achieve=20 peace, and not the man who strives to satisfy such desires. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 28 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 28 Nov 2011 16:18:33 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:At this point in time it doesn't matter, the generated files are different even if the scripts to generate them are somewhat similar. The API is also different, from the different languages used and from this recent push to rename things to be more like rest of .NET.
OK.Easiest way to tell is to start wrapping a couple of classes, to see ?
[...]Here's a more complete example of what it would look like in the end: =20 http://svn.wxwidgets.org/svn/wx/wxPython/trunk/src/ http://wxruby.rubyforge.org/svn/trunk/wxruby/swig/classes/
Thank you.Even using SWIG, there's a whole lot of code that needs to be written.
Sure. We just wonder if using route will be more effective in the long run?I don't plan to do anything with it, I put it up on github so that it could be forked and maintained if there are any bugfixes etc needed...
OK.Both wxWidgets and Code::Blocks are Open Source, so if you want to continue to base the GUI and IDE for the D programming language on those there's plenty of things that could be improved for either...
Well, for IDE, I'll probably use Geany. As far as GUI-part is concerned, depending on the toolkit we choose. we'd just use some GUI builder (each toolkit has some.)The wxWidgets roadmap says "We hope to make 3.0 in the spring of 2012." But as mentioned earlier, using 2.9 should be just fine before that ?
Yes. Afaik, the major part of new wx-3.0 stuff is already in 2.9.It's perfectly doable to continue to use the current wxd.sourceforge.net even with wx 3.0 and D 2.0, so I think I will just leave that up as-is.=20
OK.When starting up the "wxD2" or "$deity" - or whatever the new project would be named, it could probably do more changes than just use SWIG ?
Thank you for making it clear. ;) Sincerely, Gour --=20 When your intelligence has passed out of the dense forest=20 of delusion, you shall become indifferent to all that has=20 been heard and all that is to be heard. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 28 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 28 Nov 2011 21:01:38 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:Of course, you don't *have* to wrap all the classes or methods ? One could start with the ones that are likely to be used from D.
Well, it is still big project and not so easy to say what needed. In any case, substantial part has to be bound in order to get into writing multi-platform desktop app.Automation is surely the way to go, the only question is whether it should be a custom script or if a (patched?) SWIG would be better.
That's hard for me to say.If it helps, there's a Doxygen parser (for the XML output) in the docs/doxygen/scripts directory that could be used to start it off: =20 cd docs/doxygen ./regen.sh xml python scripts/make_bindings.py --swig --output_dir=3Dbindings \ out/xml/classwx_app.xml =20 The generated SWIG bindings are for wxPython, but I suppose you could adopt the swig_tools.SWIGBuilder to generate some D SWIG ?
I'll take a look to see if it makes sense to me. :)Just that I won't have much time to actually maintain it, myself.
I'm also not capable to lead such project and would have to take that into consideration when deciding which GUI toolkit to use with D. In any case, for now, I plan to learn more D, master some CMake and start playing with SWIG in order to provide bindings for 3rd party C library which we'll use. Then, in the meantime, maybe there will be more clear which toolkit is optimal to use when writing desktop app in D *today*. Sincerely, Gour --=20 One who restrains his senses, keeping them under full control,=20 and fixes his consciousness upon Me, is known as a man of=20 steady intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 28 2011
Honestly I can't even get a simple SWIG project working (the demo from
klickverbot's announcement on his blog). Apparently there's some
const-related issues.
Building the examples that come with swig windows binary doesn't work,
tried it via mingw32-make and via MSYS. Apparently there's a missing
"Makefile" in the root dir. Building SWIG from source doesn't work on
Windows anymore either. ("Swig/misc.c:1119:18: fatal error: pcre.h: No
such file or directory"). So you have a project that is only
maintained on some platforms. (this is the swig-2.0.4 release).
Funnily enough the SVN version from a year ago worked perfectly, but
now an official release doesn't work.
The question is, what if you end up finding a bug in the generated
code? Worst case scenario - you have to fix SWIG itself.
Btw, Johannes Pfau wrapped most of TagLib with SWIG and said the
wrapping process was frustrating.
I quite like the 'wxc' wrapper library, if you screw something up it
doesn't look like too much work to fix it. Obviously you have to write
everything by hand, so it's repetitive work. But at least you get a
readable codebase + you get to statically link with the library.
Nov 28 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Mon, 28 Nov 2011 22:55:10 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:I'm no fan of either, and prefer plain import modules and libs over function pointers and complex tools.=20
Well, my belief is that tools can help when maintaining bindings, iow. when one has to keep the API up-to-date. Of course, my experience was with c2hs (Haskell) where it was easy to notice change in the upstream's API. However, we'll try with SWIG.But I guess that was obvious.
It is.Well, I believe you had the officially supported DWT=20
I'm not so sure DWT is either officially supported or in the same league as other toolkits. World of SWT is not thrilling...and QtD plus the also available GtkD and wxD. Didn't seem like a bad selection ?
I already wrote about that in another thread...nice selection, but not so great support.All four of those are well supported toolkits, _upstream_ that is. Either GUI should do the trick for writing a desktop application.
Upstream was never meant as part of the problem which is on the D-side. :-)But even if Phobos/Deimos would have something like Tk (or FLTK) integrated, it probably wouldn't be accepted as a real solution.
Right.That is, just for being too ugly or too grey or something similar.
Or too light perhaps. ;)Now, why would you want to use D as your language(s) rather than C, Python, Java ? Or even C++. That was the real question for me.
Because I want to work on open-source project in my spare time and that should have some component of 'fun'...C & C++ are not falling into that category, I don't know nor like Java, not inspired about Lisp-languages, Haskell is too-theoretical...which leaves me with the Python, but I find D as sweet spot between scripting languages & C(++). Moreover, it will be bigger project which would need longer maintainance and we believe that although D is not maybe completely ready today, it will be soon enough, so we can start working by writing non-GUI libs for the project.There has to be enough advantages to overcome the shortcomings, which in the end wasn't true when making desktop apps (or games).
"De gustibus non est disputandum..." Sincerely, Gour --=20 One who is able to withdraw his senses from sense objects,=20 as the tortoise draws its limbs within the shell,=20 is firmly fixed in perfect consciousness. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 28 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 00:53:20 +0100 Andrej Mitrovic <andrej.mitrovich gmail.com> wrote:Honestly I can't even get a simple SWIG project working (the demo from klickverbot's announcement on his blog). Apparently there's some const-related issues.
Hmm...have you reported the issue to klickverbot?Building the examples that come with swig windows binary doesn't work, tried it via mingw32-make and via MSYS. Apparently there's a missing "Makefile" in the root dir. Building SWIG from source doesn't work on Windows anymore either. ("Swig/misc.c:1119:18: fatal error: pcre.h: No such file or directory").=20
Have you submitted report to SWIG devs?So you have a project that is only maintained on some platforms. (this is the swig-2.0.4 release).
I'll install dev env on my Windows under vbox to check it out.The question is, what if you end up finding a bug in the generated code? Worst case scenario - you have to fix SWIG itself.
What's the difference if you find bug in DMD?Btw, Johannes Pfau wrapped most of TagLib with SWIG and said the wrapping process was frustrating.
Well, I'd like to hear more about his experiences...Which version of SWIG he used? Otoh, is there better tool for providing bindings which can automate (some of) the work?I quite like the 'wxc' wrapper library, if you screw something up it doesn't look like too much work to fix it. Obviously you have to write everything by hand, so it's repetitive work.=20
wxC also has to be maintained...As I wrote in another thread, it would be nice to have stable wxC project so that all language bindings can profit from it.But at least you get a readable codebase + you get to statically link with the library.
Let's hope something will change in regard to the linking process. At the end, the purpose of my posting was to find out what's the status of current GUI-bindings-related projects in terms of current & near-future support, so, this is something which one has to take into consideration despite of upstream status which is OK for the main 3 toolkits (somehow, I do not count much on SWT/DWT.) Moreover, although wxWidgets has some advantage over the other two related to offering native look, seeing there is not much initiative to push wxD forward in the short-term, this thread is closed for me (except if I don't get signal that using wxWidgets is optimal toolkit for our use in the *longer-term*.) Thank you to all for your input. Sincerely, Gour --=20 You have a right to perform your prescribed duty,=20 but you are not entitled to the fruits of action.=20 Never consider yourself the cause of the results=20 of your activities, and never be attached to not doing your duty. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 28 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 09:01:30 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:True that. I suppose that part of the problem is that C++ doesn't link with anything else, unless you bother to do an extern "C" interface ?
Whatever...Or too light perhaps. ;)
That part I'm not so sure about, both toolkits have tons of widgets. At least when compared to something homegrown and language-specific ?
Tk is, well, ugly. Otoh, FOX is C++ with, iirc, Windows-like non-native look, so what is its advantage over e.g. GTK+?Right. I guess some of that sweetness faded with moving to D1/Tango and then to D2/Phobos. Or when the GDC project needed more maintenance.
Fortunately, I don't have experience with D1 --> D2 issue.Something more is needed, but what it would be and what it will look like I don't know. Probably something more close to the new language.
Some more organization and collective effort. DMD/Phobos looks OK now.Probably something more close to the new language.
I bet it's too early for that. D community cannot even properly maintaint bindings, what to speak of native GUI lib. However, having, at least, one bindings with higher-level D-ish API would be very welcome.Or maybe it just doesn't have the same shine that it did, 5 years ago.
What? Sincerely, Gour --=20 A person who has given up all desires for sense gratification,=20 who lives free from desires, who has given up all sense of=20 proprietorship and is devoid of false ego =E2=80=94 he alone can=20 attain real peace. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 08:47:01 +0100 Jacob Carlborg <doob me.com> wrote:BTW, I don't understand what people has against DWT/SWT.=20
First of all, I don't have any experience and as I wrote in another thread, looking at http://www.eclipse.org/swt/community.php - Ports section does not boost enthusiasm: - Fox port last news dated Sep 16, 2005 - Swing port - 2007-08-20=20 - D port based on 3.4 while 3.8 is in active development. Moreover, list of SWT-based apps tends to be quite short.In my experience it's the toolkit that offers best native look and feeling.=20
It could be, but it is, somehow, not very well accepted.Note that I have no experience with wx but the screenshots on the site looks really bad.
I don't understand - if wxWidgets use native widgets on Windows, Linux and Mac OS X what can be bad then? SWT does support, afaik, same toolkits on every platform as wxWidgets? Sincerely, Gour --=20 Never was there a time when I did not exist,=20 nor you, nor all these kings; nor in the future=20 shall any of us cease to be. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 09:16:09 +0100 "Marco Leise" <Marco.Leise gmx.de> wrote:Take a look at Code::Blocks for an example. I think it is one of the most sophisticated applications written with wxWidgets. I used to have trouble with the XML GUI definitions though. Somehow they took ages for me to load and generate the UI on Linux, but not on Windows.
That's strange and it is the first time I heard something like that. Two days ago I also asked on wxWidgets list if using XRC is kind of idiomatic within wxWidgets community and Vadim Zeitlin (one of the core devs) replied:=20 "Personally I've never really understood the appeal of compiling into code and whenever I use XRC I load it during run-time. Perhaps you can gain some minor performance advantage from compiling it into code (although I don't know if anybody has ever really measured this) but using XRC is much more flexible as you can tweak it without recompiling/rebuilding and often even without restarting the program so I'd definitely recommend using it as is, at least in the beginning."So I am biased slightly against wx with XML or XRC or what they are called.
I'd say your experience is probably not the accurate representation. Was your problem with slow loading when using C++ or wxD? Sincerely, Gour --=20 In the material world, one who is unaffected by whatever good=20 or evil he may obtain, neither praising it nor despising it,=20 is firmly fixed in perfect knowledge. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 07:56:34 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:The way to keep the project alive was to contribute to SourceForge, moving the repository to github is to connect with the D community.
Have you read http://zbowling.github.com/blog/2011/11/25/github/ ? Github & forks are not panacea if there are not people ready to work together on the project. Moreover, your announcement to step down set the tone for the project... Sincerely, Gour --=20
Nov 29 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 09:54:40 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:It's been drifting for a year, I don't think there's any announcement.
Well, on 26th of August you wrote: "I am also stepping down as a maintainer, including the pre-built GDC distribution (gdcwin/gdcgnu/gdcmac) and the Code::Blocks support for D." and after being questioned by Andrej: "Do you mean you're stepping down as the maintainer of wxd, or just the GDC/CodeBlocks stuff?" your answer was: "All three. Mostly wxD, but also the others - not using." and your firt message cited above when all this wxD-thingie has started for me. :-)All I said was that I don't have the energy to start over with wx3/D2.
I understand you.The project should be fine for wxWidgets 2.8.12, maybe I just didn't emphasize that fact enough. It even "works" with 2.9.2 and DMD 2.054, although not using any of the newer features. That's not too shabby ?
Not at all, but considering wx-3.0 is the future, the project is stalled at the moment.It's been 5 years. http://www.algonet.se/~afb/wx/wxWidgets-Minimal.html
Congratulations! I was not aware you took care so long for the project. Too bad I was not around earlier since for me it does not make sense to start developing wxD application now with 2.8.x. So, I can only say: "Thank you" for pushing so long alone without proper support of other members within D community. Let's hope there will be more interest for GUI in D in the future if D wants to sell itself on 'practicality' ("D is a multi-paradigm programming language that combines a principled approach with a focus on practi=C2=ADcality.") Sincerely, Gour --=20 =46rom anger, complete delusion arises, and from delusion=20 bewilderment of memory. When memory is bewildered,=20 intelligence is lost, and when intelligence is lost=20 one falls down again into the material pool. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 09:34:27 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:I'm sticking with the original business plan: 1. Move to github.com 2. ? 3. Profit!
It's a bit puzzling, but I won't beat it further.=20I think the original plan was to build that on top of something. =20 So you have a straight porting of some general API, and then another layer on top of that with a more highlevel approach ?
Yes, that's logical approach if one approaches from higher-level language, otherwise, just having a wrapper over C(++) is loss. That's what I likes in gtk2hs & wxhaskell bindings.But using all those wrappers-on-wrappers do get a bit "oniony".
gtk2hs provides direct higher-level API.Using a new shiny language, tends to naturally fade after a while.
Ahh...That's probably the main problem then since "When there is a will, there is a way." I spent sufficient time with Haskell that I can appreciate D's blend of functionality with its elegance and higher-level features, but we need some spark of functionality as well in the form of GUI, databases etc. Sincerely, Gour --=20 But a person free from all attachment and aversion and able=20 to control his senses through regulative principles of=20 freedom can obtain the complete mercy of the Lord. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 09:58:36 +0100 "Marco Leise" <Marco.Leise gmx.de> wrote:Precisely this: http://forums.codeblocks.org/index.php/topic,13660.0.html And debugging this lead me to the line where the XRC is parsed. It may after all have been an issue with my system / the xml library / gtk / compiz / etc... The experience just left a bad taste for me.
I can understand there is bad taste, but isn't it the problem of Code:Blocks? Have you tried using e.g. DialogBlocks and see how it behaves? Sincerely, Gour --=20 While contemplating the objects of the senses, a person=20 develops attachment for them, and from such attachment lust=20 develops, and from lust anger arises. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Am 29.11.2011, 09:19 Uhr, schrieb Gour <gour atmarama.net>:On Tue, 29 Nov 2011 08:47:01 +0100 Jacob Carlborg <doob me.com> wrote:BTW, I don't understand what people has against DWT/SWT.
First of all, I don't have any experience and as I wrote in another thread, looking at http://www.eclipse.org/swt/community.php - Ports section does not boost enthusiasm: - Fox port last news dated Sep 16, 2005 - Swing port - 2007-08-20 - D port based on 3.4 while 3.8 is in active development. Moreover, list of SWT-based apps tends to be quite short.In my experience it's the toolkit that offers best native look and feeling.
It could be, but it is, somehow, not very well accepted.
I have two ideas why: 1. It is written in Java instead of C, which makes it impossible to write bindings for Python or C++. 2. Java started with AWT. Later Swing was introduced as an alternative, which satisfied those who found AWT lacking in some aspects. So today you'd really have to read something like this http://www.ibm.com/developerworks/grid/library/os-swingswt/ to learn about the key differences between the three and eventually decide to move on to SWT. Your are practically merging two isolated worlds in your comparison: Java platform vs. the rest; [AWT, Swing, SWT] vs. [GTK+, QT, wxWidgets, ...] It's probably comparable to the acceptance of D in a forum for embedded developers. I'm just thinking, that whatever toolkit has the fewest dependencies while offering the most used widgets has the best chances to make it into Phobos one day - if that is still desired.
Nov 29 2011
Gour wrote:Btw, Johannes Pfau wrapped most of TagLib with SWIG and said the wrapping process was frustrating.
Well, I'd like to hear more about his experiences...Which version of SWIG he used?
I think the last version I used was a svn snapshot after the 2.0.2 release. It's not that using swig was especially frustrating, but the TagLib C++ API offers little over the much simpler C API. So I thought wrapping the complete C++ API just wasn't worth it. Some problems I had with swig: As I was new to swig I had no idea how to organize a big project consisting of multiple C++ headers. There are questions like include vs. import; simply editing the C++ headers vs. including the headers and placing rename directives etc. into own files; how to organize the project, so that changes to the c++ library can be merged easily... The swig manual is *huge* and works well as a reference, but a simple introduction tutorial doesn't exist AFAIK. It took me some time to get template instances working, somehow I didn't understand the syntax or whatever. And there are some 'cosmetic issues' that don't matter for functionality, but I found these to be annoying: * IIRC free functions or variables/properties always go into the main file and it's not possible to place those into a specific namespace * I think it's the same for template instances and hand written code, but I'm not sure * Namespace duplication: Namespaces look like this: "TagLib.APE.APE". This is needed to support some corner cases where C++ namespaces wouldn't map well to D namespaces otherwise. But for simple namespaces I'd like to have proper namespaces ("TagLib.APE") * swig always generates a main module, and IIRC it even has to be a toplevel module (TagLibBase, not TagLib.Base). And as D doesn't allow packages and modules to have the same name, it wasn't possible to simply name this main module "TagLib", so I named it "TagLibD" instead. But this still sucks, as your namespaces then look like this: TagLibD TagLib.TagLib TagLib.APE.APE TagLib.ID3v2.ID3v2 Having two different toplevel namespaces especially annoyed me. However, I'd nevertheless say swig is the best solution to wrap a C++ project unless there's a manually written, well supported C API. Also, in case you're interested, the source for that TagLib swig wrapper is here: https://github.com/jpf91/TagLibD/ -- Johannes Pfau
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 11:05:15 +0100 "Marco Leise" <Marco.Leise gmx.de> wrote:I think it is a good library in general though from what I've heard, so keep the arguments coming :)
It's definitely nice library, mature, owned by open-source community, with license suitable for commercial projects, supporting native widgets...but that's not the problem - wxD is too big for me to work on it and therefore no need for further arguments. ;) Sincerely, Gour --=20 One who is able to withdraw his senses from sense objects,=20 as the tortoise draws its limbs within the shell,=20 is firmly fixed in perfect consciousness. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 13:39:42 +0100 Jacob Carlborg <doob me.com> wrote:BTW, how is the support for Mac OS X specific "widgets" that are usually not available on other platforms, like:
No idea. I know only that wxOSX port supporting Cocoa is a new one. Sincerely, Gour --=20 One who restrains his senses, keeping them under full control,=20 and fixes his consciousness upon Me, is known as a man of=20 steady intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 12:09:02 +0100 Anders F Bj=C3=B6rklund <afb algonet.se> wrote:I do think it would make more sense if it was maintained by someone actually using the software on a daily basis, but if nobody steps up I suppose it could also be left (in the current state) for a while ?
It can even stay eternally so. :-)Either would be fine: starting over with SWIG, or keeping Status Quo.
My vote is for former...klickverbot told me that SWIG cannot handle Qz by itself since it is too complex beast, but wx is possible.If the 3.0 release would include a C version, that would change things since that would mean that some of the SWIG code could be shared with other language bindings (such as C# or Java, or perhaps Python or Ruby). Currently each extra language has their own set of SWIG interface files.
I'll ask in wxwidgets if there is plan for something like that. Sincerely, Gour --=20 As a strong wind sweeps away a boat on the water,=20 even one of the roaming senses on which the mind=20 focuses can carry away a man's intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 15:28:56 +0100 Jacob Carlborg <doob me.com> wrote:But since DWT is a port of SWT (completely written in D) I think it's=20 fair to compare SWT/DWT to gtk, qt and wxwidgets.
I tend to agreei, but wonder how much of the binding process can be automated or it could be done by hand only?As far as I know DWT is the only toolkit that does not require any=20 external dependencies (except the functions provided by the OS).
That's strong point...Maybe I should, at least, try to compile it and check how it looks... Sincerely, Gour --=20 In this endeavor there is no loss or diminution,=20 and a little advancement on this path can protect=20 one from the most dangerous type of fear. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 17:04:16 +0100 Jacob Carlborg <doob me.com> wrote:There's a project at dsource.org called Tioport, that tried to automated the process of port SWT to D. But the author gave up that project and started to manually port SWT instead. It turned out that you would need to port a large part of the Java standard library.
Ahh, that's not awesome.That's strong point...Maybe I should, at least, try to compile it and check how it looks...
I recommend you give it a try.
It seems it needs dsss? Sincerely, Gour --=20 =46rom anger, complete delusion arises, and from delusion=20 bewilderment of memory. When memory is bewildered,=20 intelligence is lost, and when intelligence is lost=20 one falls down again into the material pool. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 18:27:01 +0100 Jacob Carlborg <doob me.com> wrote:For various reason, it's actually easier to build DWT by just compiling the an application that uses DWT using rdmd or similar.
Heh, but I don't have any. ;) Sincerely, Gour --=20 One who restrains his senses, keeping them under full control,=20 and fixes his consciousness upon Me, is known as a man of=20 steady intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Nov 29 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Tue, 29 Nov 2011 22:03:27 +0100 Jacob Carlborg <doob me.com> wrote:"rake base swt snippets" =20 If I recall correctly. You can run "rake -T" to see what build targets are available. To build DWT you need these system libraries:
No experience at all with Java/SWT...downloaded hg repo and tried: [gour atmarama dwt2-c43718956f21] rake swt=20 /home/gour/tmp/dwt/dwt2-c43718956f21/rakefile:19: Use RbConfig instead of o= bsolete and deprecated Config. Building org.eclipse.swt.gtk.linux.x86 workdir=3D>/home/gour/tmp/dwt/dwt2-c43718956f21/org.eclipse.swt.gtk.linux.x= 86/src org/eclipse/swt/internal/Compatibility.d(15): Error: module all is in file = 'java/lang/all.d' which cannot be read import path[0] =3D /home/gour/tmp/dwt/dwt2-c43718956f21/org.eclipse.swt.gtk= .linux.x86/src import path[1] =3D /home/gour/tmp/dwt/dwt2-c43718956f21/imp import path[2] =3D /usr/include/d import path[3] =3D /usr/include/d/druntime/import rake aborted! compile error Tasks: TOP =3D> swt (See full trace by running task with --trace) Any idea? Sincerely, Gour --=20 The senses are so strong and impetuous, O Arjuna,=20 that they forcibly carry away the mind even of a man=20 of discrimination who is endeavoring to control them. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Dec 01 2011
Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable On Thu, 01 Dec 2011 13:29:41 +0100 Jacob Carlborg <doob me.com> wrote:You need to build the "base" library as well, run "rake base swt". The "base" library contains a port of a small part of the Java core API's, this makes it easier to port SWT.
[gour atmarama dwt2-c43718956f21] rake base swt /home/gour/tmp/dwt/dwt2-c43718956f21/rakefile:19: Use RbConfig instead of o= bsolete and deprecated Config. Building dwt-base workdir=3D>/home/gour/tmp/dwt/dwt2-c43718956f21/base/src java/nonstandard/RuntimeTraits.d(86): do-while statement requires terminati= ng ; rake aborted! compile error Tasks: TOP =3D> base (See full trace by running task with --trace) Sincerely, Gour --=20 Never was there a time when I did not exist,=20 nor you, nor all these kings; nor in the future=20 shall any of us cease to be. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Dec 01 2011
How do I build wx28 in release mode? I've tried BUILD=release but that didn't help. The issue I'm having is that Optlink can't link due to a >64k global symbols error.
Dec 02 2011
ulink works fine though. It's great that I have to rely on third-party linkers like that. -_- Anders, if I want to edit the wxc bindings to add wx28+ support do I have to wrap new functions in #ifdef sections to preserve wx26 support? Or should I just disregard wx26 alltogether and leave that as an old branch?
Dec 02 2011
I just tried wrapping some new functions and they seem to work. I think if wx28 isn't too different from wx26 I could do a diff of the two include directories and implement wxc wrapper functions to get wx28 support in wxd.
Dec 02 2011









=?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> 