d-widget-toolkit / dwt

A library for creating cross-platform GUI applications.
141 stars 33 forks source link

Mac OSX support missing #20

Open SerialVelocity opened 9 years ago

SerialVelocity commented 9 years ago

Hey,

I was wondering what is the status of Mac OSX support? I can see a repo that hasn't been updated for over a year and a repo called "jport" that is to do with automatic porting. Is the plan to make "jport" able to convert the OSX portions of the framework as well? Is there anything that I can help with to make OSX support possible?

Best, SerialVelocity

extrawurst commented 9 years ago

+1 for osx support

jacob-carlborg commented 9 years ago

I was wondering what is the status of Mac OSX support? I can see a repo that hasn't been updated for over a year

Yes, I got tired of the manual porting. The status of that repository is that the code is written in D1 and compiles. But it does not behave properly at runtime, so I've made some mistakes in the porting phase. My idea was to finish the port in D1 before translating it to D2.

a repo called "jport" that is to do with automatic porting. Is the plan to make "jport" able to convert the OSX portions of the framework as well

Yes, the idea is that this tool will support Linux, OS X and Windows, both 32 and 64bit versions. This should also allow to port later versions of SWT. The current ports are based on a very old version of SWT.

Is there anything that I can help with to make OSX support possible?

I guess either you can try and finish the OS X port or help out with JPort. It's written in Scala since it uses Eclipse JDT library to parse the Java code. I'm currently working in the "dev" branch to be able to freely change history.

etcimon commented 9 years ago

How far in completion % do you think JPort stands?

jacob-carlborg commented 9 years ago

How far in completion % do you think JPort stands?

It's very hard to say. I would guess less than 25%. If you look at the tests [1] you might get a better picture of what's implemented. Most things are pretty straight forward, just a bit tedious to type all code. So far the most difficult part is to figure out the JDT API's. But then I haven't got to the more difficult parts yet, like interacting with native code.

Here's a list of all language constructs I have tests for so far:

[1] https://github.com/d-widget-toolkit/jport/tree/dev/src/test/scala

jacob-carlborg commented 9 years ago

@SerialVelocity @etcimon @Extrawurst if anyone is interested, I think I could use some help now with JPort. I've come quite far with the translation, but so far I've only translated the syntax of Java to D. I could use some help with translating the semantics, i.e. if there is some language construct that has the same syntax but have different semantic behavior. I'm mostly thinking of the order of evaluation and similar semantic differences.

extrawurst commented 9 years ago

@jacob-carlborg if you are talking about https://github.com/d-widget-toolkit/jport then i am not help, I have no experience in scala

jacob-carlborg commented 9 years ago

Me neither :smiley:, not before JPort.

etcimon commented 9 years ago

I'm a little busy for the next few months but when I've finished what I have to do I'll take a look !

junjiexing commented 8 years ago

+1 for osx support

mengu commented 6 years ago

@jacob-carlborg how may i be of help?

jacob-carlborg commented 6 years ago

@mengu do you prefer to work on JPort to automatically convert the Java code or to manually port the Java code?

jacob-carlborg commented 6 years ago

@mengu I prefer you have a look at JPort for the automatic translation. The dev branch is the most up to date branch. I think most of the syntactic translations are done. What's left is the semantic translations. For example, in Java floats and double are default initialized to 0.0 while in D they're initialized to NaN.