Com.bitplan.gui: Difference between revisions

From BITPlan Wiki
Jump to navigation Jump to search
(Created page with "{{OsProject|title=Generic GUI framework for Java|url=https://github.com/BITPlan/com.bitplan.gui|version=0.0.3}}")
 
No edit summary
 
(20 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{OsProject|title=Generic GUI framework for Java|url=https://github.com/BITPlan/com.bitplan.gui|version=0.0.3}}
{{OsProject|id=com.bitplan.gui
|owner=BITPlan
|title=Generic GUI framework for Java
|url=https://github.com/BITPlan/com.bitplan.gui
|date=2019-01-22
|version=0.0.15
}}
= Simple Platform neutral Graphical User Interface Description =
== Why platform neutral? ==
Implementing User interfaces for a specific platform can be quite frustrating when you try to migrate the result to a different platform.
Even very small differences between implementations can spoil the effort.
 
Especially when prototyping it is much easier to start from a simple descriptive file and "interpret" the result.
 
== Main classes and packages ==
<uml>
  hide circle
  package com.bitplan.gui {
    class App {
      name
      home
      feedback
      help
    }
    class Group {
      id
      name
      icon
    }
    class Form {
      id
      icon
      title
      headerText
    }
    class Field {
      id
      label
      hint
      fieldKind
      type
      choices
      format
      labelSize
      fieldSize
      gridX
      gridY
    }
    class ExceptionHelp {
      exception
      url
      i18nHint
    }
    class Menu {
      id
      title
      shortCut
    }
    class MenuItem {
      id
      title
      shortCut
    }
    App -> "groups n" Group
    App -> "exceptionHelp n" ExceptionHelp
    App -> "mainMenu" Menu
    Group -> "forms n" Form
    Form -> "fields n" Field
    Menu -> "submenus n" Menu
    Menu -> "menuItems n" MenuItem
  }
  package com.bitplan.i18n {
    interface I18n {
      String get(String text)
      String get(String text, Object ... params)
    }
    class Translator {
      String translate(String messageName, Object ... params)
      String translate(String messageName, Object param)
      String translate(String messageName)
      Locale getCurrentLocale()
      static initialize(String bundleName, String localeName)
      loadBundle(Locale locale)
      getBundle()
    }
  }
</uml>
= Example Applications =
* {{Link|target=Sprinkler}}
* [http://can4eve.bitplan.com can4eve]
 
= I18n =
Internationalization is supported using resource bundles.
The "TestI18n" base class can be used as a utility to make sure that all entries in the platform independent description have a corresponding translation.
[[Category:frontend]]

Latest revision as of 06:59, 7 July 2019

OsProject
id  com.bitplan.gui
state  
owner  BITPlan
title  Generic GUI framework for Java
url  https://github.com/BITPlan/com.bitplan.gui
version  0.0.15
description  
date  2019-01-22
since  
until  

Simple Platform neutral Graphical User Interface Description

Why platform neutral?

Implementing User interfaces for a specific platform can be quite frustrating when you try to migrate the result to a different platform. Even very small differences between implementations can spoil the effort.

Especially when prototyping it is much easier to start from a simple descriptive file and "interpret" the result.

Main classes and packages

Example Applications

I18n

Internationalization is supported using resource bundles. The "TestI18n" base class can be used as a utility to make sure that all entries in the platform independent description have a corresponding translation.