Based on our last Simple Table component, I have put together a Nested Table as well. The main features are:
-Each row can be rendered like an irregular table
-Each row is backed by an object
-Possibility to add a popup to row click
These classes demonstrate how to use the component:
SampleApplication.java
SampleRowBackingBean.java
SampleBean.java
You would need the following classes to make this work:
BNestedTable.java
BMultiRowBackingBean.java
BGenericTableCallback.java
BAbstractRowRenderer
BNestedRowRenderer.java
BSimplePopupScreen.java
FieldCreatorUtility.java
UiProperties.java
Possible improvements:
-implementing varying row heights
-implement table header, table footer and column header
Thursday, February 4, 2010
Nested Table Component for Blackberry
Wednesday, February 3, 2010
A Simple Table Component for Blackberry
Just worked on making a J2ME based prototype for a Blackberry (JDE 4.7+). The documentation, the website and the API are horrible, to say the least. We are using the Eclipse Plugin for development. One of the prime difficulties we faced was the absence of a well-defined table component. "ListField" is horribly designed and the example that is given in their documentation does needs serious improvement. Moreover, to make a flexible component that renders a list of messages (like the SMS message list) with each composite row selectable as a whole, no example could really help. So, I have made two components that you can improve upon and use as you please.
The first one, that is given in this post, is a simple table. It takes a 2-D array of fields and converts it into a visual table. It simply improves upon ListField. You would need the following three classes:
BSimpleTable.javaBSimpleTableCallback.java
BSimpleRowRenderer.java
Then in you code, use a similar code snippet to make and add a table (here we use it to create the title of the screen):
Field[][] titleContent = new Field[1][];
titleContent[0] = new Field[3];
titleContent[0][0] = new LabelField("S.No.",
DrawStyle.ELLIPSIS);
titleContent[0][1] = new LabelField("Message",
DrawStyle.ELLIPSIS);
titleContent[0][2] = new LabelField("Time",
DrawStyle.ELLIPSIS);
int[] widthPercent = {10,63,27};
int[] paddings = { 5, 0, 0 };
setTitle(new BSimpleTable(titleContent,
widthPercent, paddings,
Field.NON_FOCUSABLE));
If you don't want to sign the application, hard code the total screen width instead of using Display.getWidth()
Also, see: Version Specific Developmnet Guides (3.6 to 5.0 beta)
Wednesday, December 16, 2009
Marketing Triumphs Technology?
Thursday, September 10, 2009
Speeding Up Technology: Thinking People
Tuesday, September 1, 2009
Speeding Up Technology: Cultivating Leaders
Monday, August 17, 2009
Speeding Up Technology: Ambition with Vision
- poor choice of technology
- poor choice of development methodology
- lack of focus on long-term vision with complete focus on speed
- A small company does not have any use for too many leaders. This would generally translate into a senior rung of management with a big vacuum beneath. This can blow in the company's face in time
- Lack of growth will ultimately frustrate ambitious & able executives and employees alike, who may ultimately leave for better avenues. This is especially true for the Sales force
- A "family" atmosphere and nepotism can take roots more easily in a family run enterprise, seriously affecting the company's long-term future
- Ultimately competition will come calling, and if they are growth oriented, it will prove disastrous for the parent company
- it will give you the opportunity to interact with and witness all aspects of business. This may prove critical in your growth as a leader who has a strong general awareness
- you get to see the whole product development lifecycle very closely, again adding to your leadership potential
- if (a big if) you can affect the company to make the leap and it succeeds, the dividends are yours to have
- in the initial growth phase learning is very profound and comprehensive due to the chaos associated with starting a venture, these things may be hard to learn in any big company and will serve you well when you want to do something on your own