As I advance on the task of making the control example work, I keep coming accross new bugs. Now I discover that some controls inside the notebook page, do not update their state correctly, but I'll leave that problem for later.
Right now I'm learning how to capture the mouse events inside the notebook pages. I also fixed a crash produced by right mouse button being clicked inside the notebook window.
My work will slow down a little the next weeks for personal reasons.
Tuesday, August 4, 2009
Friday, July 31, 2009
Notebooks and more notebooks
I took a short vacation and I didn't work on the code at all. At that time I had the problem of double click on tabs would cause a redraw of the window. That problem was solved by not using the autosize flag on the creation of the tab.
Then came the problem of the size and position of the application window inside the tab. I did a lot of testing and finally I understood how to calculate the Y coordinate.
After that the problem was that the initial drawing of the top page didn't happen and that was solved by implementing the drawing on the WM_SIZE message. This also solved the resizing problem I was seeing in the Control examples from Eclipse.
Now on to implement the mouse operations. The Control example doesn't work at all because the notebook is not processing mouse events.
Also on the list should be the drawing of the text happens using os/2 coordinates and it should be using the SWT coordinates
That's all for now....
Then came the problem of the size and position of the application window inside the tab. I did a lot of testing and finally I understood how to calculate the Y coordinate.
After that the problem was that the initial drawing of the top page didn't happen and that was solved by implementing the drawing on the WM_SIZE message. This also solved the resizing problem I was seeing in the Control examples from Eclipse.
Now on to implement the mouse operations. The Control example doesn't work at all because the notebook is not processing mouse events.
Also on the list should be the drawing of the text happens using os/2 coordinates and it should be using the SWT coordinates
That's all for now....
Tuesday, July 14, 2009
Notebook fixing
After the suggestion of Martin I began to work on making an example work. I modified the SWT control example to leave out all the unimplemented classes and it did work,,,, well sort of.
I discover that my imlementation of the tabfolder class was incomplete to say the least. Actually the onky thing that did was to paint a very basic Tab. I set up to solve the problem and I did some good progress.
First I fixed the adding of new tabs issue, then I was able to color the tabs to make them look more like the rest of the platforms. I changed the testcase to include more functionality and the I found problems with the display of the controls inside the tab page.
After some tests I discover that I wasn't connecting the tab id with the window id. I realized that I'm so ignorant on some of the most basics things of PM programming. Well I guess that's the point of all this... to learn.
Probably today or tomorrow I'll finish the display issues and then I'll go into more little details.
Probably the implementations of scroll bars and menu's aren't that complete either so I'll go back and fix them as I go along.
I discover that my imlementation of the tabfolder class was incomplete to say the least. Actually the onky thing that did was to paint a very basic Tab. I set up to solve the problem and I did some good progress.
First I fixed the adding of new tabs issue, then I was able to color the tabs to make them look more like the rest of the platforms. I changed the testcase to include more functionality and the I found problems with the display of the controls inside the tab page.
After some tests I discover that I wasn't connecting the tab id with the window id. I realized that I'm so ignorant on some of the most basics things of PM programming. Well I guess that's the point of all this... to learn.
Probably today or tomorrow I'll finish the display issues and then I'll go into more little details.
Probably the implementations of scroll bars and menu's aren't that complete either so I'll go back and fix them as I go along.
Monday, July 6, 2009
Some work done
This weekend I had some work done on the code. First I added more needed stuff to create a progress bar example, this includes all the constants from the progress.h to OS.java, 4 APIs definition (only 2 are going to be tested), the JNI implementation of the main API in the swt.c
I was able to compile the C code and the Java code without many problems now I need to implement the second API to set the attributes of the bar. After that I only need to create a testcase and play with the progressbar class.
I also realized that there is a lot of work to do on the Program.java. First I need to understand it's use.
Finally, I tried to run the control example directly from the distribution and I came across a NoDef class exception as it was expected and I learned that there are a bunch of emulated controls, now I just need to compile them and work from there... in other words aa lot of work still.
I was able to compile the C code and the Java code without many problems now I need to implement the second API to set the attributes of the bar. After that I only need to create a testcase and play with the progressbar class.
I also realized that there is a lot of work to do on the Program.java. First I need to understand it's use.
Finally, I tried to run the control example directly from the distribution and I came across a NoDef class exception as it was expected and I learned that there are a bunch of emulated controls, now I just need to compile them and work from there... in other words aa lot of work still.
Friday, July 3, 2009
New ideas
Since I finished the Scale class I have been looking for my next move. I decided to use the eco software runtime and libraries to add support to the missing controls. The downside is that you would actually need the runtime installed before you can use the SWT port.
The other line of work has been to include in the trunk additional classes we need compile in order to make Eclipse port work. I added the boot.jar and the startup.jar to the tree. They both compile now using ant.cmd boot.jar or ant.cmd startup.jar. A lot of investigation needs to be done before moving forward in these tasks.
Finally the last line of work has been the creation of a working test that I can upload to the net and somehow demonstrate where I am with the SWT port. I'm going to use the control example from the eclipse distribution. Hopefully I'll have ready next week
The other line of work has been to include in the trunk additional classes we need compile in order to make Eclipse port work. I added the boot.jar and the startup.jar to the tree. They both compile now using ant.cmd boot.jar or ant.cmd startup.jar. A lot of investigation needs to be done before moving forward in these tasks.
Finally the last line of work has been the creation of a working test that I can upload to the net and somehow demonstrate where I am with the SWT port. I'm going to use the control example from the eclipse distribution. Hopefully I'll have ready next week
Wednesday, June 17, 2009
Scale class
I found some time to work on the proyect again and I decided to add the Scale class. The main new challenge was to include control data.
In order to do it I wrote a new WinCreateWindow implementation that took the SLDCDATA structure as parameter. I overwrote the constructor of the class using this call instead of using the Control call.
The rest was fairly easy. The only issue was that the result of painting the scale on diffrent systems gives different looks. I have to find out how to make it consistent.
In order to do it I wrote a new WinCreateWindow implementation that took the SLDCDATA structure as parameter. I overwrote the constructor of the class using this call instead of using the Control call.
The rest was fairly easy. The only issue was that the result of painting the scale on diffrent systems gives different looks. I have to find out how to make it consistent.
Friday, July 18, 2008
New job,,, less time
As July 7th, I began working as a development manager at an airline company (guess I'll be flying a lot more). As a result I'm focus on getting on track with the business and the new responsabilities. I'll be doing more of the same only on a different company with a bigger salary a key for the bathroom and a parking space.
Most of the development is done in J2EE, using the usual stuff. I'll be doing a lot less programming of course (that's why I keep this project alive, so my brain can be challenge and my neurons don't die of boredom).
Also, my computer at home has started to act up on me and sometimes I can't bring up the development environment or my wifi conection.
Also, I made myself the promise of finishing building my 1:6 scale radio controlled TA-152C airplane, before years end, and so that's keeping me from doing any work on the port on this past two weeks.
Most of the development is done in J2EE, using the usual stuff. I'll be doing a lot less programming of course (that's why I keep this project alive, so my brain can be challenge and my neurons don't die of boredom).
Also, my computer at home has started to act up on me and sometimes I can't bring up the development environment or my wifi conection.
Also, I made myself the promise of finishing building my 1:6 scale radio controlled TA-152C airplane, before years end, and so that's keeping me from doing any work on the port on this past two weeks.
Subscribe to:
Posts (Atom)