Wednesday, October 31, 2007

Group almost done

I finished the basic stuff on this class and now I have a testcase working swt009_07. I found some problems setting empty strings (group0.setText("")) but I'll solve that soon. I only need to implement the getClientArea method.

I'll commit the changes soon. The problem is that I don't have an open Internet connection.

Tuesday, October 30, 2007

Group class

I just finish the basic implementation of the Group class. Using the WC_STATIC + SS_GROUPBOX style. So far the basic stuff works and I hope I can commit the changes today or tomorrow.

I found a problem common to all Composite classes. The background of the controls are not repainted after gaining focus. You can see this on the List, Group and TabFolder classes. There is a new ticket I need to add.

Friday, October 26, 2007

Lot of work and I'm stuck with TabFolder

Well, I'm stuck. After believing for a second that the C program was almost complete I realized that there was a lot of things that I was leaving out.
I came to understand (not completly) the way the messages are handle, and with it I came across a lot of code that I need to write in order to complete the C program. Specially the WM_PAINT message in the Composite class.

Each child of Control has it's own msg proc method and it implements the necessary messages through methods MRESULT WM_*whatever*(msg, mp1,mp2).

Since, until I get a better understanding of all these things I won't be able to solve the problem I have with the Notebook control (TabFolder class,,, see testcase swt009_06). I decided to go ahead and finish easier classes, like Group.

I could really get some help at this stage. I don't have enough time to investigate and to program. I can do just one thing.

Tuesday, October 23, 2007

C

I have been working on creating a C program that follows the API calls that are made in the SWT code. So far so good.
Today I was able to complete the swt002 testscase using C. Of course that there are missing calls but the idea is to concentrate on the basic stuff. I'm still having problems with the refresh of the created window. It doesn't repaint.

I'll post the code on a newsgroup so I can get some help on this.

My idea is to work on to the swt009_06 testcase to find out why I can't add notetab pages. Also this effort will serve as a testing and debugging tool in the future.

Wednesday, October 10, 2007

Some progress

I commited the sources and began to work on the TabFolder class again. I finished bringing the code to the same state of before the lost of my HD.

Still I have the same problem when I try to add a notebook page and when the window losses focus and it is brought back to the front (the clipping doesn't work). One problem is solved though. The testcase doesn't crash when I click on the window, like it used to.

After I tried everything, I decided to go back to basics and start from scratch. I went over the documentation to try to really understand what was done and how PM is being used. I created a C program which will follow the flow of the API calls in the hope that I'll be able to reproduce the behaviour of the SWT classes. I believe this will be a good tool to understand what is going on under the hood.