Kuix 1.0.0 board

7 messages - 275 views

Kuix 1.0.0 (now available on SVN)

- Bug fix : avoid a NoClassDefFoundException on SonyEricsson
 
- Add filter feature to DataProvider

 

- Bug fix : avoid a memory leak when displaying a lot of Screens that contain menus

- List changes :
  - Remove the ListItem restriction on List
  - addItem, RemoveItem methods now returns Widget istead of ListItem

- Menu / PopupMenu changes :
  - PopupMenu now extends List, to be able to build PopupMenu content from a DataProvider like lists (create only MenuItem, not Menu).
  - MenuItem now extends ListItem.
 
- TabFolder changes :
  - TabFolder now extends List, to be able to build child TabItems from a DataProvider like lists.

- Bug fix : avoid an exception when loading a CCS file with comment on SonyEricsson
- Add a new **Choice** widget (it extends the RadioGroup capabilities to be able to use it as comboBox)
  - Usage : <choice><radioGroup><radioButton>Choice1</radioButton><radioButton>Choice2</radioButton></radioButton></choice>
- Add a Kuix.loadWidget(String, Class, DataProvider) method

- Menu / PopupMenu changes :
  - Right key shortcut to open  a submenu now search forward and backward submenus.
 
- TabFolder changes :
  - TabFolder now extends List, to be able to build child TabItems from a DataProvider like lists (with renderer).

- RadioGroup changes :
  - RadioGroup now extends List, to be able to build child RadioButtons from a DataProvider like lists (with renderer).

- Change Kuix.parseMethod signature from Kuix.parseMethod(String data, Widget owner, Desktop desktop) to Kuix.parseMethod(String data, Widget owner)

- Add #include statement capabilities in XML files.
  - syntax : #include [absolute file path]
  - between two widget tags, include file's content is parsed as a normal xml file and add content to current widget.
  - between two attribute tags (name starts with '_'), include file's content is convert to string as attribute value.
- Add a new **Choice** widget (it extends the RadioGroup capabilities to be able to use it as comboBox)
  - Usage : &lt;choice&gt;&lt;radioGroup&gt;&lt;radioButton&gt;Choice1&lt;/radioButton&gt;&lt;radioButton&gt;Choice2&lt;/radioButton&gt;&lt;/radioButton&gt;&lt;/choice&gt;
- Add a getter on the CheckBox's selected attribute. Caution, a boolean string representation is returned and not a real boolean. Use org.kalmeo.util.BooleanUtil.parseBoolean(String) method to convert it.

- Bug fix : avoid TextFiled with password contraints edition crash

- Add #inc (include) statement capabilities in XML files.
  - syntax : #inc(&lt;absolute file path&gt;)
- Add a *focused* attribute on AbstractFocusableWidget
- Add *title* and *maxsize* attribute on TextField

- Improve render speed by adding a cache system on style values

- Add a Widget.getInheritedTag() method that permit for a widget to have it's own tag and inherit all style properties from and other tag. In this case *choiceScreen* can now inherit style properties from *screen*.

- ScrollPane changes :
  - ScrollPane can be horizontal
  - You can hide scrollBar through the *showScrollBar* attribute
  - You can now access to the *ScrollPaneContainer* inner widget

- Class **refactoring** :
  - AbstractFocusableWidget *become* FocusableWidget
  - AbstractActionWidget *become* ActionWidget
  - AbstractTextWidget *become* TextWidget
 
- Widget tags **refactoring** :
  - scrollbar's bar *become* scrollbarbar

  - scrollcontainer *become* scrollpane
  - scrollcontainercontainer *become* scrollpanecontainer
 
  - screen's topbar *become* screentopbar
  - screen's bottombar *become* screenbottombar
 
  - choice's screen *become* choicescreen
  - choice's radiobutton *become* choiceradiobutton
 
  - tabbuttonscontainer *become* tabfolderbuttonscontainer
  - defaulttabitem *become* tabfolderdefaulttabitem
  - tabitemcontainer *become* tabfoldercontainer
 
  - popupmenu *become* menupopup