LWUIT is inspired by Swing. At the API level it is almost identical to AWT. It allows to reuse the AWT code generated from Netbeans at LWUIT. I created a simple AWT form with just TextField and Label. The code is almost same that I can use the initComponent with minor adjustment. One issue is add function. At LWUIT there is not add function instead it has addComponent. So what I did is that a form is extended and add function is created with does nothing but call the addComponent.
public void add(Component component){
addComponent(component);
}
Now the initComponent function can be used directly in a LWUIT application.
Monday, March 16, 2009
Comparison between AWT and LWUIT
Friday, February 13, 2009
Visual Mobile Designer
I have started to work on mobile platform after some delay. From now on, I would be developing mobile application extensively. Since my early days of building UI using LCDUI has been replaced by new and more rich UI libraries. As always I am digging in to find out the similarities and possible convertion among different library.
The most productive path would be using the visual mobile designer from netbeans mobility pach. It creates an vmd file alone with class file. It is basically and XML file similar to the form file used in Matisse. Mostly populated with Component and Property tag. I am mainly interested in C#DisplayablesCategory, Cjavax.microedition.lcdui.Form, Cjavax.microedition.lcdui.TextField and
Cjavax.microedition.lcdui.ChoiceGroup
I don't know why there is a prefix C in typeID and in case of Property value a prefix V. It looks ugly! Also noticed some missing choiceType. There is V1 for EXCLUSIVE, V2 for MULTIPLE and V4 for POPUP. I wonder what V3 is for!
Anyway, I created a simple converter which takes vmd file and creates similar html form.
Thursday, January 1, 2009
Released HanoiME at sourceforge
It has been quite some time since I opened Open-source project HanoiME at sourceforge.net
Today I released the code at the subversion.
Tuesday, June 10, 2008
Internationalization and localization in Mobile
Internationalization is an important part of any software. Now all the modern software supports multiple languages. Recently I am playing with some language features for bangla. It is great that java has built in support for unicode with \u prefix notation. LWUIT has the support for bitmapped font in its resource editor.
When I use these tools to load font, the Sutonny font rendered nicely. But it doesn't display any unicode character. Some other true type unicode fonts also displayed with box at the preview and failed to display at the emulator. Although it is possible to display any bangla text in mobile without using canvas or custom rendering, I still have to figure out how to display the unicoded text properly. It may open-up localization projects in bangla.
Thursday, May 15, 2008
Netbeans templating features
While working for Code Editor I am observing how netbeans handle its features. It is quite a powerful tool and I started to discover many new things which I didn't used before. I guess all netbeans lover are already accustomed with it.
As I need to handle those features and implement them from scratch I had to look into more details. Netbeans stores its configurations at Documents and Settings/<user>
The modified templates codes can be found at Templates sub directory. The Code Template is at
Editors/text/<language>
Need to implement those features. I shall also create some utility to convert code templates of various editors.
Wednesday, May 14, 2008
UI world
Recently at javaOne another new UI library is introduced. It is Light Weight User Interface Toolkit (LWUIT). Well, there is already quite a few UI that each developer may be dealing with. The frustrating thing is that most of them has some short comings with their unique features. I wish there is a Universal API for all platform level UI development.
I have started to fill the missing parts. The idea is to use similar API (if not same) to the Abstract Window Toolkit (AWT). I have added Menu related classes using the LWUIT. Interesting tweaking to use tab as Menu and List as MenuItem.
At the CDC stack the awt is already supported. Here I am extending to add more features. For example, the AbsoluteLayout from netbeans works fine at CDC without any modification. After integration there is more flexibility now.
Next is to implement a FileDialog.
Wednesday, April 30, 2008
Yet Another Opensource project
:D
Things are moving fast for me with the opensource projects. Latest inclusion is ACodeEditor. Hey there is already a project CodeEditor. Well this new project has nothing to do with mobile. Infact this is a web based online code editing software. My vision is to create a similar development environment across all platforms. This is another initiative of that.
A preview can be viewed from here.