View previous topic :: View next topic |
Author |
Message |
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Mon Mar 06, 2006 10:38 pm Post subject: Progress |
|
|
Progess has been faster then expected.
Duit demos is almost at the level of the old DUI demos
missing:
- lists with widgets (not just text)
- text view from Gtk demo
- editable list from Gtk demo
John has added a coupe of build scripts to built the library and the demos.
(needs to include new classes)
probably soon (really soon) Duit will be more complete then DUI ever was.
Ant |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Sun Mar 12, 2006 9:18 pm Post subject: Re: Progress |
|
|
Ant wrote: | Progess has been faster then expected |
ok, progress now slow down to expected speed (what ever you should call it).
this is due to dmd imaturity.
dmd does feel better then 2 years ago, and no doubt has more functionalities.
but still it is a pain to use.
We just have to hope we can influence Walter's priorities...
Ant |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Wed Mar 15, 2006 1:20 pm Post subject: |
|
|
Hard Drive failure
no data loss (so far), just no system...
Ant |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Sun Mar 19, 2006 1:47 am Post subject: |
|
|
Ant wrote: | Hard Drive failure
no data loss (so far), just no system...
Ant |
I'm back, all development data was saved.
I'm running Ubuntu 6.04 betaon my new hard drive.
Ant |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Sun Mar 19, 2006 5:31 pm Post subject: |
|
|
Good choice for linux, Ant. I tried compiling the latest duit release on windows. the TestWindow demo compiles but crashes on run now. It appears a lot of gtk symbols aren't loading from the dll's ("failed to load..." errors). It looks like the dynamic loader is trying to load the wrong symbols from the wrong libraries.
I believe I tested the same version out on linux too... some of the same symbols aren't loading there either, yet the linux version still manages to run.
-JJR |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Wed Mar 22, 2006 8:06 pm Post subject: |
|
|
Duit is now at the same level of DUI.
That means the functions I want to use do work.
Seems to be time to start converting leds to Duit.
Still todo on Duit:
- do not reinstanciate Duit object on know Gtk struct (keep an AA)
- openGL (next)
- need to do an example for ComboBox with more then text
- there is a problem with re-loading a table with new widgets.
- Dnd?
- cairo (test basic functionality)
- details (naming and such)
- better control on Gtk memory release (aka memory leaks - also found on DUI)
- many other facade and decorators (for sure I'll find the need when using new functionalities)
- many other tests
- many more problems will show up
- create an automatic procedure to release new versions
I want to convert leds because I want to correct some bugs and integrate gdb - just very simple basic functions - don't get too excited.
I'll keep a convertion log to help creating a "DUI to Duit" tutorial.
When that's done I'll anounce Duit beta 1.
Ant |
|
Back to top |
|
|
h3r3tic
Joined: 30 Mar 2004 Posts: 261 Location: Torun, Poland
|
Posted: Thu Mar 23, 2006 4:46 am Post subject: |
|
|
Congratulations, Ant ! I thought you'd give up on D after all these problems that you had to trudge through. It's great to have you and DUI back
I've been looking for a good linux IDE for D. Maybe Leds could fill this niche... |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Thu Mar 23, 2006 11:37 am Post subject: |
|
|
JJR wrote: | a lot of gtk symbols aren't loading from the dll's ("failed to load..." errors) |
I guess that symbols not found could be mapped to a function that would popup a warning to the user saying the program will fails and then exit nicelly.
Of course this is only for the testing phase, the programs should fail to start if the lib is not compatible.
(can that be done by the Loader? I guess it can. I'll check it)
Ant |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Mar 23, 2006 12:56 pm Post subject: |
|
|
Yes, some error-checking mechanism should be added to the Loader class for that to make it robust.
But that wasn't my point here. I meant to show that some of these functions are failing to load because they are being loaded from the incorrect shared library. The functions might actually exist in another *.dll or *.so, but the Loader is trying to get them out of the wrong one.
For example, on win32, DUIT is trying to load gdk_pixbuf_get_type (and whole bunch of other pixbuf functions) from libgdk-win32.*.dll when it should be loading that function from libgdk_pixbuf.*.dll. I'm not sure if that the same problem on linux; I'll have to check.
At any rate, the windows version won't run anymore, although that's likely only a temporary problem.
-JJR |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Mar 23, 2006 1:18 pm Post subject: |
|
|
Tested on linux, again. It is apparent that windows stores the functions across more shared libraries than the linux version. For example, linux appears to store all the gdk_pixbuf* functions within it's libgdk*.so. This is the reason it works on Linux.
I think in the original dyndui I had to weed out this problem by versioning the dynamic loader for windows and loading the extra functions for win32 by getting the appropriate dll loaded for the extra gdk functions. (this also applies to a few other libraries too... gobject, gthread, etc )
-JJR |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Thu Mar 23, 2006 5:57 pm Post subject: |
|
|
JJR wrote: | Tested on linux, again... |
One thing I didn't add to the list: test on windows...
I don't feel confortable on windows at all.
every thing is awkward - it's probably the same thing windows guys feel on linux.
The pixbuf lib contains just helper functions for the pixbuf found on gdk.
I'll find some time to test on windows (if nobody else picks it up )
Ant |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Mar 23, 2006 6:14 pm Post subject: |
|
|
I can probably fix it on win32, Ant. I'm pretty sure I had it figured out in dyndui. It will just take some additions to the source.
Unfortunately, if you are using scripts to build each new duit update for the libraries, any changes I make will be eliminated each time you update with the scripts. Do you have any suggestions on how that can be avoided?
-JJR |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Thu Mar 23, 2006 6:38 pm Post subject: |
|
|
JJR wrote: | ...if you are using scripts to build each new duit update for the libraries, any changes I make will be eliminated each time you update with the scripts. Do you have any suggestions on how that can be avoided?
-JJR |
Do you need to change the src/lib/Loader or the src/lib/gdk(pixbuf).d?
the Loader is a static file copied from the wrap directory every time the script runs - change that (wrap/Loader.d).
but you are probably talking about the src/lib/gdk.d
that's generated from the info at wrap/APILookupGdk.txt
and it's going to be more complex, and I didn't account for differences on linux and windows...
Ant |
|
Back to top |
|
|
JJR
Joined: 22 Feb 2004 Posts: 1104
|
Posted: Thu Mar 23, 2006 10:50 pm Post subject: |
|
|
Loader.d needs no changes for this situation (beyond improving its robustness in error detection).
I will need to modify lib/gdk.d to make it work on windows. Perhaps you could submit your conversion scripts to svn (or even email them to me directly)? Then I could modify them to support win32 as well...
In the case of Gdk, this just involves loading libgdk_pixbuf*.dll from within gdk.d (in the static this() ) and then loading in the appropriate functions.
Of course, since win32 is different in other areas as well, there probably are some other shared library differences too. In dyndui, I found some functions were not supported in win32 version of gtk, such that I versioned them out in the win32 case. This may change the as newer gtk versions are released on win32.
-JJR |
|
Back to top |
|
|
Ant
Joined: 06 Mar 2004 Posts: 306 Location: Canada
|
Posted: Fri Mar 24, 2006 9:36 pm Post subject: |
|
|
JJR wrote: | I will need to modify lib/gdk.d to make it work on windows. Perhaps you could submit your conversion scripts to svn |
they're already there, it's the wrap tree.
check the wrap/APILookup*.txt - those will have to be modified if the window lib struct is different.
To support that the programs on wrap/utils (probably wrap/utils/GtkWrapper.d) will have to be enhanced.
Or maybe not, maybe we should just keep different version of APIlookup for windows and linux.
(As always the windows version is wayting for leds for windows and leds cannot exits in windows before the windows version.)
Ant |
|
Back to top |
|
|
|