FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Dynamic DUI Example Compiles, Links, And Runs!

 
Post new topic   Reply to topic     Forum Index -> gtkD
View previous topic :: View next topic  
Author Message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Tue May 03, 2005 11:18 pm    Post subject: Dynamic DUI Example Compiles, Links, And Runs! Reply with quote

[WinXP version]

Well, persistance paid off. I succeeded in moving all imports externally in the dui widget modules. This took a fair bit of work, but wasn't as difficult as I expected. It seems that D has improved over the last year in regards to forward referencing. Local class imports should never need to be used. In fact they shouldn't be because they are very prone to add bugs.

Once all imports had been moved to module scope, I was able to repeatedly attempt builds. After adding imports to different files as required following build attempts, I was able to eliminate all outstanding missing definiton errors. It appears that local class imports made for some interesting hidden issues. Moving things out fixed all access violations up to this point. After dynamic DUI built without error, I immediately attempted to build the hello world demo app. It worked the first try!

Thanks Ant for bearing with me... and thanks Tom (aka H3r3tic) for the extra encouragement. I'll see if I can clean things up more, do more tests to eliminate any bugs I've added to the mix, then fix it up for opengl extensions.

Smile <-- happy face this time!

-JJR
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Wed May 04, 2005 3:06 am    Post subject: Reply with quote

Next demo application is fixed up and working with dynDUI: test\TestWindow.d. This test application is much more complicated and makes for a much more thorough test of whether dynDUI is functioning properly.

It seems to work fine, but some things like images don't seem to be showing up. Otherwise... at least no "Access Violations" are appearing.

I'm noticing that a few of the "Access Violations" are occuring because I've been working with an outdated version of DUI. It looks like I'm hunting down a few bugs that Ant already fixed in the most recent release: things like DUIType.PIXBUF. Heh! At least I'm able to reference the appropriate svn source as necessary. It makes debugging a little faster. So far I haven't found any more bugs in my dll loader system yet. Smile

I'm finding the "build" program a really fun tool to use for quick test builds of the DUI demos! All I have to do is type "build test\TestWindow.d", and a second or two later, I have an executable. Thanks, Derek!

-JJR
Back to top
View user's profile Send private message
Ant



Joined: 06 Mar 2004
Posts: 306
Location: Canada

PostPosted: Wed May 04, 2005 8:38 am    Post subject: Reply with quote

JJR wrote:
I'm noticing that a few of the "Access Violations" are occuring because I've been working with an outdated version of DUI. It looks like I'm hunting down a few bugs that Ant already fixed in the most recent release: things like DUIType.PIXBUF. Heh! At least I'm able to reference the appropriate svn source as necessary.


So are the changes applied to the latest svn version?
how easy is to merge it?
I'm guessin dynDUI is windows only (is it?) so do we need to wrap the changes on version(window) and the explicit extern on version(linux)?

DUIType.PIXBUF - as soon as DMD compiled ddi.Value with an import of Pixbuf I was able to debug it and figure what should be done with the Pixbuf.
leds preview release already shows icons on the TreeView
http://sourceforge.net/project/screenshots.php?group_id=97732

Ant
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Wed May 04, 2005 1:29 pm    Post subject: Reply with quote

I haven't merged with svn for a couple of reasons:

1) I don't have write access to the project. If you want to "okay" write access for me with Brad, that would be fine. Or I can just email you the completed zip file.

2) The source has been rearranged such that it would probably mess the current static DUI up.

It would probably be best to give it it's own DUI subdirectory in svn for now, until it can be figured out how to safely merge the two (if that should ever be done). For example I've modified def\Constants.d and def\Types.d significantly, and I've pulled all extern(C) statements out of all source files because they aren't needed anymore. I've also moved all imports out of the classes and added some imports as needed to the modules. Eventually it might be good to move the lib\loader.d tool into dool or something so it can be used for other purposes.

Currently DynDUI has only been tested on windows. I wrote the dynamic loader to work on both Windows and Linux. It should recompile immediately and work on Linux too. I just haven't test it yet. I'll do that next.

Concerning DUIType.PIXBUF, I probably have something wrong in there. It's probably no big deal to troubleshoot. At least nothing is currently crashing.

So what would you like me to do now? I haven't got opengl activated yet; that will take a little bit more time. Do you want me to email everything to you or do you want me to get svn write priviliges and upload to a new subdirectory of DUI?

-JJR
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Wed May 04, 2005 7:08 pm    Post subject: Reply with quote

Oops! Looks like the linux version will need some touchups after all. I didn't realize what I was missing until I actually tried compiling on Linux. Shouldn't be too much work.

-JJR
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Wed May 04, 2005 8:04 pm    Post subject: Reply with quote

Okay. Linux DynDUI is now working and up-to-date!

Now to work on enabling glext for both platforms. This may take a bit more time because there's a lot of opengl definitons to convert to the loader format.

After this is done, I'll start checking for any remaining changes to bring DynDUI in sync with the svn DUI.

-JJR
Back to top
View user's profile Send private message
Ant



Joined: 06 Mar 2004
Posts: 306
Location: Canada

PostPosted: Thu May 05, 2005 7:28 am    Post subject: Reply with quote

JJR wrote:

svn write priviliges and upload to a new subdirectory of DUI?


Seems the best solutions
(how? just e-mail Brad?)

You've done a log of work on DUI, thank you.
And is suppose to work on linux also? excelent!

Ant
Back to top
View user's profile Send private message
Ant



Joined: 06 Mar 2004
Posts: 306
Location: Canada

PostPosted: Thu May 05, 2005 7:47 am    Post subject: Reply with quote

Ant wrote:

(how? just e-mail Brad?)

You've done a log of work on DUI, thank you.
Ant


I PM'ed Brad.

of course I mean 'lot', not 'log'

Ant
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Thu May 05, 2005 12:41 pm    Post subject: Reply with quote

Ant wrote:
JJR wrote:

svn write priviliges and upload to a new subdirectory of DUI?


Seems the best solutions
(how? just e-mail Brad?)

You've done a log of work on DUI, thank you.
And is suppose to work on linux also? excelent!

Ant


No problem! I'm glad the I was successful; hopefully, my additions will be of some use. If not, oh well, at least I'm learning things in the process. If I had suffered too many failures, I probably wouldn't have kept at it.

Looks like I have svn access now, thanks! I'll see what I can do to get some it added in the next few days.

And yes, the current version works on both win32 and linux.

-JJR
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> gtkD All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group