Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Excerpt

JideBuilder is a Groovy builder for the open source JIDE Common Layer

Warning
titleWarning

JideBuilder has been relocated to the Griffon project, please update your links to http://griffon.codehaus.org/JideBuilder. The information on this page may be outdated.

Contribution Overview

JideBuilder will let you create Jide components and standard Swing components as SwingBuilder does, because it doesn't override the default names of previously registered components in SwingBuilder, this means that you can mix both types of components with the same builder.

Code Block
import griffon.builder.jide.JideBuilder

def jide = new JideBuilder()
jide.edt {
   frame( id: 'frame', title: 'JideBuilder', pack: true, visible: true ){
      panel( layout: new BorderLayout(5,5) ){
      button( label: "Swing", constraints: BorderLayout.WEST )
      jideButton( label: "Jide", constraints: BorderLayout.EAST )
      textField( constraints: BorderLayout.NORTH )
      calculator( constraints: BorderLayout.CENTER )
   }
}

There are 5 *Searchable components that will add searching capabilities to a previously created widget or an internal one, exposing the searchable widget and the searchable wrapper if an 'id' attribute was provided, for example ComboBoxSearchable:

Code Block
import griffon.builder.jide.JideBuilder

def jide = new JideBuilder()
jide.edt {
   frame( id: 'frame', title: 'JideBuilder', pack: true, visible: true ){
      panel( layout: new BorderLayout(5,5) ){
      comboBox( id: "mycombo", items: [1,2,3] )
      comboBoxSearchable( id: "c1", comboBox: mycombo )
      comboBoxSearchable( id: "c2", items: [4,5,6] )
   }
}
assertNotNull jide.ci_searchable

JIDE Common Layer defines a basic structure for dialogs with StandardDialog, which is an abstract class, you may create your own dialogs based on that template by calling 'standardDialog()', by default all 3 panels will be empty, but yout can provide your own content by calling 'dialogBannerPanel()', 'dialogContentPanel()' and 'dialogButtonPanel()' inside its closure.

All JTextComponents (even those created with regular SwingBuilder methods) will accept a 'selectAll' property, which will call com.jidesoft.swing.SelectAllUtils.install() on the component.
SearchableBar has an additional property 'install' which will register a SearchableBar.Installer automatically into the inmediate container. This property must be a Map and may have the following properties:

  • constraints: must be a valid Object accepted by the container's layout (required).
  • keyStroke: must be a javax.swing.KeyStroke, defaults to CTRL + F (optional).

Team Members

Andres Almiray [aalmiray at users dot sourceforge dot net]

Download

jidebuilder-2.0

Installing

Drop jidebuilder-2.0 into $GROOVY_HOME/lib along with is dependencies

Pre-requisites

Groovy 1.6-beta-2 is the required minimum version to run JideBuilder 2.0
Previous versions of JideBuilder will run with earlier versions of Groovy, it is recommended that you upgrade to the 1.6.x series in order to take advantage of

  • @Bindable and ASTTransformations
  • short binding syntax
  • numerous enhancements made to SwingBuilder and FactoryBuilderSupport

Documentation

Alphabetical list of components

Element

Class

Notes

animator

Animator

 

autoCompletion

AutoCompletion

Wraps an existing JComboBox with 'comboBox' attribute
Wraps an existing JTextComponent with 'textComponent' attribute
Will create an internal JTextField if 'textComponent' and 'comboBox' are ommitted
If 'textComponent' is specified (or internal JTextField is created), 'searchable' or 'list'
must also be specified
Additional attributes may be set on the wrapped component

autoCompletionComboBox

AutoCompletionComboBox

 

autoResizingTextArea

AutoResizingTextArea

 

bannerPanel

BannerPanel

 

bottom

    JideSwingUtilities.createBottomPanel

    buttonPanel

    ButtonPanel

     

    calculator

    Calculator

     

    center

      JideSwingUtilities.createCenterPanel

      checkBoxList

      CheckBoxList

       

      checkBoxListWithSelectable

      CheckBoxListWithSelectable

       

      checkBoxTree

      CheckBoxTree

       

      clickThroughLabel

      ClickThroughLabel

       

      comboBoxSearchable

      ComboBoxSearchable

      Wraps an existing JComboBox with 'comboBox' attribute
      Will create an internal JComboBox if 'comboBox' is ommitted
      Additional attributes may be set on the wrapped component
      Obeys 'items' when creating an internal JComboBox.

      contentContainer

      ContentContainer

       

      dateSpinner

      DateSpinner

       

      dialogBannerPanel

      DialogBannerPanel (from JideBuilder)

      Use it inside standardDialog

      dialogButtonPanel

      DialogButtonPanel (from JideBuilder)

      Use it inside standardDialog

      dialogContentPanel

      DialogContentPanel (from JideBuilder)

      Use it inside standardDialog

      dialogPage

      DefaultDialogPage (from JideBuilder)

      Use it inside a multiplePageDialog
      Add a 'closure' attribute as the body of lazyInitialize() default does nothing

      fileIntelliHints

      FileIntelliHints

      Needs 'textComponent' attribute
      Additional attributes may be set on the wrapped component

      folderChooser

      FolderChooser

       

      gripper

      Gripper

       

      headerBox

      HeaderBox

       

      jideButton

      JideButton

       

      jideBorderLayout

      JideBorderLayout

       

      jideBoxLayout

      JideBoxLayout

       

      jideMenu

      JideMenu

      Use a closure with 'customize' attribute to create a PopupMenuConfigurer

      jideOptionPane

      JideOptionPane

       

      jidePopup

      JidePopup

       

      jidePopupMenu

      JidePopupMenu

       

      jideScrollPane

      JideScrollPane

       

      jideSplitButton

      JideSplitButton

      Use a closure with 'customize' attribute to create a PopupMenuConfigurer

      jideSplitPane

      JideSplitPane

       

      jideTabbedPane

      JideTabbedPane

       

      jideToggleButton

      JideToggleButton

       

      jideToggleSplitButton

      JideToggleSplitButton

      Use a closure with 'customize' attribute to create a PopupMenuConfigurer

      labeledTextField

      LabeledTextField

       

      left

        JideSwingUtilities.createLeftPanel

        listDataIntelliHints

        ListDataIntelliHints

        Needs 'textComponent' and 'completionList' attributes,
        Additional attributes may be set on the wrapped component

        listSearchable

        ListSearchable

        Wraps an existing JList with 'list' attribute
        Will create an internal JList if 'list' is ommitted
        Additional attributes may be set on the wrapped component

        multilineLabel

        MultilineLabel

         

        multiplePageDialog

        MultiplePageDialog

         

        multiplePageDialogPane

        MultiplePageDialogPane

         

        nullButton

        NullButton

         

        nullCheckBox

        NullCheckBox

         

        nullJideButton

        NullJideButton

         

        nullLabel

        NullLabel

         

        nullPanel

        NullPanel

         

        nullRadioButton

        NullRadioButton

         

        nullTristateCheckBox

        NullTristateCheckBox

         

        paintPanel

        PaintPanel

         

        pointSpinner

        PointSpinner

         

        popupMenuCustomizer

        DefaultPopupMenuCustomizer (from JideBuilder)

        Use 'closure' attribute to define the body of customize()

        rangeSlider

        RangeSlider

         

        resizableDialog

        ResizableDialog

         

        resizableFrame

        ResizableFrame

         

        resizablePanel

        ResizablePanel

         

        resizableWindow

        ResizableWindow

         

        right

          JideSwingUtilities.createRightPanel

          searchableBar

          SearchableBar

          Wraps an existing Searchable with 'searchable' attribute
          Additional attributes may be set on the wrapped component

          simpleScrollPane

          SimpleScrollPane

           

          splitButtonGroup

          SplitButtonGroup

           

          standardDialog

          DefaultStandardDialog (from JideBuilder)

          Use 'dialogBannerPanel, 'dialodContentPanel' and 'dialogButtonPanel'
          to provide additional configuration for each panel

          styledLabel

          StyledLabel

           

          tableSearchable

          TableSearchable

          Wraps an existing JTable with 'table' attribute
          Will create an internal JTable if 'table' is ommitted
          Additional attributes may be set on the wrapped component

          textComponentSearchable

          TextComponentSearchable

          Wraps an existing JTextComponent with 'textComponent' attribute
          Will create an internal JTextField if 'textComponent' is ommitted
          Additional attributes may be set on the wrapped component

          top

            JideSwingUtilities.createTopPanel

            treeSearchable

            TreeSearchable

            Wraps an existing JTree with 'tree' attribute
            Will create an internal JTree if 'tree' is ommitted
            Additional attributes may be set on the wrapped component

            tristateCheckBox

            TristateCheckBox

             

            svgIcon

            ResizableSVGIcon

            • path: same as svgResourcePath but allows aliases
            • trackSize: enables/disables resizing (default: false)
            • resizePercentage: controls how much the icon will change size, value must be in range 10..100 (default: 100)
            • retainAspectRatio: controls how resizing will take effect (default: true)
            • size: alias for 'preferredSize'

            Developers

            Andres Almiray

            Source Control

            http://svn.codehaus.org/griffon/builders/jidebuilder

            Building

            JideBuilder uses Ant as its build tool, which means that if you want to
            build your own version of JideBuilder from source you'll need to have it
            installed. Follow the instructions at http://ant.apache.org

            Contributing

            Please contact the team members by e-mail.

            Community

            Mailing List(s)

            http://griffon.codehaus.org/Mailing+Lists

            Issue tracker

            http://jira.codehaus.org/browse/GRIFFON