JideBuilder is a Groovy builder for the open source JIDE Common Layer |
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.
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:
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:
Andres Almiray [aalmiray at users dot sourceforge dot net]
Drop jidebuilder-4.0 into $GROOVY_HOME/lib along with its dependencies
<repository>
<id>codehaus-release</id>
<name>Codehaus</name>
<url>http://repository.codehaus.org</url>
</repository>
<repository>
<id>sonatype-release</id>
<name>Sonatype</name>
<url>http://repository.sonatype.org/content/groups/public</url>
</repository>
<dependency>
<groupId>org.codehaus.griffon</groupId>
<artifactId>jidebuilder</artifactId>
<version>6.0</version>
</dependency>
|
repositories {
mavenRepo name: 'Codehaus', urls: 'http://repository.codehaus.org'
mavenRepo name: 'Sonatype', urls: 'http://repository.sonatype.org/content/groups/public'
}
dependencies {
compile 'org.codehaus.griffon:jidebuilder:6.0'
}
|
The jar file for svg-salamander-1.1 is missing from Maven's central repo. You must download from here and configure your build/classpath appropriately.
Groovy 1.8.8 is the required minimum version to run JideBuilder 6.0
Previous versions of JideBuilder will run with earlier versions of Groovy, it is recommended that you upgrade to the 1.8.x series in order to take advantage of
Element | Class | Notes |
|---|---|---|
animator | Animator |
|
autoCompletion | AutoCompletion | Wraps an existing JComboBox with 'comboBox' attribute |
autoCompletionComboBox | AutoCompletionComboBox |
|
autoResizingTextArea | AutoResizingTextArea |
|
bannerPanel | BannerPanel |
|
bottom | JPanel | JideSwingUtilities.createBottomPanel |
buttonPanel | ButtonPanel |
|
calculator | Calculator |
|
center | JPanel | JideSwingUtilities.createCenterPanel |
checkBoxList | CheckBoxList |
|
checkBoxListWithSelectable | CheckBoxListWithSelectable |
|
checkBoxTree | CheckBoxTree |
|
clickThroughLabel | ClickThroughLabel |
|
clickThroughStylableLabel | ClickThroughStylableLabel |
|
comboBoxSearchable | ComboBoxSearchable | Wraps an existing JComboBox with 'comboBox' attribute |
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 |
fileIntelliHints | FileIntelliHints | Needs 'textComponent' attribute |
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 | JPanel | JideSwingUtilities.createLeftPanel |
listDataIntelliHints | ListDataIntelliHints | Needs 'textComponent' and 'completionList' attributes, |
listSearchable | ListSearchable | Wraps an existing JList with 'list' attribute |
meterProgressBar | MeterProgressBar |
|
multilineLabel | MultilineLabel |
|
multilineToggleButton | MultilineToggleButton |
|
multiplePageDialog | MultiplePageDialog |
|
multiplePageDialogPane | MultiplePageDialogPane |
|
nullButton | NullButton |
|
nullCheckBox | NullCheckBox |
|
nullJideButton | NullJideButton |
|
nullLabel | NullLabel |
|
nullPanel | NullPanel |
|
nullRadioButton | NullRadioButton |
|
nullTristateCheckBox | NullTristateCheckBox |
|
paintPanel | PaintPanel |
|
partialEtchedBorder | PartialEtchedBorder |
|
partialGradientLineBorder | PartialGradientLineBorder |
|
partialLineBorder | PartialLineBorder |
|
partialLoweredEtchedBorder | PartialEtchedBorder |
|
partialRaisedEtchedBorder | PartialEtchedBorder |
|
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 | JPanel | JideSwingUtilities.createRightPanel |
scrollableButtonPanel | ScrollableButtonPanel |
|
searchableBar | SearchableBar | Wraps an existing Searchable with 'searchable' attribute |
simpleScrollPane | SimpleScrollPane |
|
splitButtonGroup | SplitButtonGroup |
|
standardDialog | DefaultStandardDialog (from JideBuilder) | Use 'dialogBannerPanel, 'dialodContentPanel' and 'dialogButtonPanel' |
styledLabel | StyledLabel |
|
tableSearchable | TableSearchable | Wraps an existing JTable with 'table' attribute |
textComponentSearchable | TextComponentSearchable | Wraps an existing JTextComponent with 'textComponent' attribute |
titledSeparator | TitledSeparator |
|
top | JPanel | JideSwingUtilities.createTopPanel |
treeSearchable | TreeSearchable | Wraps an existing JTree with 'tree' attribute |
tristateCheckBox | TristateCheckBox |
|
jideSvgIcon | ResizableSVGIcon |
|
Andres Almiray
https://github.com/griffon/jidebuilder
JideBuilder uses Gradle as its build tool.
Please contact the Griffon team members by e-mail.
http://griffon.codehaus.org/Mailing+Lists
http://jira.codehaus.org/browse/GRIFFON