List of usage examples for com.jgoodies.forms.layout CellConstraints xyw
public CellConstraints xyw(int col, int row, int colSpan)
Examples:
cc.xyw(1, 3, 7); cc.xyw(1, 3, 2);
From source file:ch.zhaw.ias.dito.ui.OutputPanel.java
License:BSD License
public OutputPanel(HelpArea helpArea) { super(ScreenEnum.OUTPUT, ScreenEnum.ANALYSIS, null); FormLayout layout = new FormLayout( "max(50dlu; pref), 5dlu, max(100dlu; pref), 5dlu, max(50dlu; pref), 5dlu, max(100dlu; pref), 5dlu, max(50dlu; pref)", "pref, 2dlu, pref, 2dlu, pref, 2dlu, pref, 2dlu, pref"); //layout.setRowGroups(new int[][]{{2, 4, 6}}); CellConstraints cc = new CellConstraints(); DefaultFormBuilder fb = new DefaultFormBuilder(layout, Translation.INSTANCE.getBundle()); browseButton = new JXButton(Translation.INSTANCE.get("s1.bu.browse")); filePath.setName(Translation.INSTANCE.get("s1.lb.file")); fb.addI15dSeparator("s5.title.file", cc.xyw(1, 1, 9)); fb.addI15dLabel("s1.lb.file", cc.xy(1, 3)); fb.add(filePath, cc.xyw(3, 3, 5));/*from w w w .j a v a2 s .c o m*/ fb.add(browseButton, cc.xy(9, 3)); fb.addI15dLabel("s1.lb.separator", cc.xy(1, 5)); fb.add(separator, cc.xy(7, 5)); fb.addI15dLabel("s5.lb.precision", cc.xy(1, 7)); fb.add(precision, cc.xy(7, 7)); fb.add(saveButton, cc.xy(7, 9)); //validationGroup.add(filePath, Validators.fFILE_MUST_BE_FILE); //validationGroup.add(separator, Validators.REQUIRE_NON_EMPTY_STRING); Output o = Config.INSTANCE.getDitoConfig().getOutput(); filePath.setText(o.getFilename()); separator.setText(Character.toString(o.getSeparator())); precision.setText(Integer.toString(o.getPrecision())); browseButton.addActionListener(this); saveButton.addActionListener(this); this.setLayout(new BorderLayout()); this.add(fb.getPanel(), BorderLayout.CENTER); }
From source file:clipboardplugin.ClipboardSettingsTab.java
License:Open Source License
/** * Creates the SettingsPanel//from w ww . ja va 2 s. c o m * * @return Settings-Panel */ public JPanel createSettingsPanel() { EnhancedPanelBuilder pb = new EnhancedPanelBuilder( FormFactory.RELATED_GAP_COLSPEC.encode() + ",fill:default:grow"); CellConstraints cc = new CellConstraints(); mConfigPanel = new PluginProgramConfigurationPanel(mPlugin.getSelectedPluginProgramFormatings(), mPlugin.getAvailableLocalPluginProgramFormatings(), ClipboardPlugin.getDefaultFormating(), false, false); pb.addRow(); pb.add(mConfigPanel, cc.xyw(1, pb.getRow(), pb.getColumnCount())); return pb.getPanel(); }
From source file:clockplugin.ClockSettingsTab.java
License:GNU General Public License
public JPanel createSettingsPanel() { FormLayout layout = new FormLayout("5dlu,pref,3dlu,pref,pref:grow,10dlu", "5dlu,pref,pref,pref,pref,5dlu,pref,2dlu,pref," + "pref,10dlu,pref,pref"); PanelBuilder pb = new PanelBuilder(layout); CellConstraints cc = new CellConstraints(); mMove = new JCheckBox(mLocalizer.msg("moveonscreen", "Move clock on screen with TV-Browser")); mMove.setSelected(ClockPlugin.getInstance().getMoveOnScreen()); mShowBorder = new JCheckBox(mLocalizer.msg("clockborder", "Clock with border")); mShowBorder.setSelected(ClockPlugin.getInstance().getShowBorder()); mTitleClock = new JCheckBox(mLocalizer.msg("titlebar", "Clock in the title bar")); mTitleClock.setSelected(ClockPlugin.getInstance().getTitleBarClock()); mBox = new JCheckBox(mLocalizer.msg("forever", "Show clock forever")); mBox.setSelected(ClockPlugin.getInstance().getShowForever()); mBox.addActionListener(this); mUsePersonaColors = new JCheckBox(mLocalizer.msg("usePersonaColors", "Use Colors of Persona"), ClockPlugin.getInstance().isUsingPersonaColors()); mUseTransparency = new JCheckBox(mLocalizer.msg("useTransparency", "Clock transparent"), ClockPlugin.getInstance().isUsingTransparentBackground()); mTime = new JSpinner(); mTime.setModel(new SpinnerNumberModel(ClockPlugin.getInstance().getTimeValue(), 5, 30, 1)); mFontSize = new JSpinner(); mFontSize.setModel(new SpinnerNumberModel(ClockPlugin.getInstance().getFontValue(), 10, 30, 1)); pb.add(mMove, cc.xyw(2, 2, 4)); pb.add(mShowBorder, cc.xyw(2, 3, 4)); pb.add(mTitleClock, cc.xyw(2, 4, 4)); pb.add(mBox, cc.xyw(2, 5, 4));//from w w w . j a va 2 s .c o m int y = 6; try { Class.forName("util.ui.persona.Persona"); layout.insertRow(y, RowSpec.decode("default")); pb.add(mUsePersonaColors, cc.xyw(2, y++, 4)); } catch (ClassNotFoundException e) { } boolean showTransparencySelection = false; GraphicsDevice[] devices = GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices(); GraphicsConfiguration config = devices[0].getDefaultConfiguration(); try { Class<?> awtUtilities = Class.forName("com.sun.awt.AWTUtilities"); Method m = awtUtilities.getMethod("isTranslucencyCapable", new Class<?>[] { GraphicsConfiguration.class }); showTransparencySelection = (Boolean) m.invoke(awtUtilities, new Object[] { config }); } catch (Exception e) { e.printStackTrace(); try { Method m = config.getClass().getMethod("isTranslucencyCapable()", new Class<?>[] { GraphicsConfiguration.class }); showTransparencySelection = (Boolean) m.invoke(config, new Object[0]); } catch (Exception e1) { e1.printStackTrace(); } } if (showTransparencySelection) { layout.insertRow(y, RowSpec.decode("default")); pb.add(mUseTransparency, cc.xyw(2, y++, 4)); } mLabel = pb.addLabel(mLocalizer.msg("desc", "Duration of showing the clock in seconds") + ":", cc.xy(2, ++y)); pb.add(mTime, cc.xy(4, y++)); pb.addLabel(mLocalizer.msg("fsize", "Font size of the clock") + ":", cc.xy(2, ++y)); pb.add(mFontSize, cc.xy(4, y)); y += 3; pb.addLabel(mLocalizer.msg("info1", "To move the clock on screen click it left"), cc.xyw(2, y++, 4)); pb.addLabel(mLocalizer.msg("info2", "and move the mouse with pressed left button."), cc.xyw(2, y, 4)); if (mBox.isSelected()) { mTime.setEnabled(false); mLabel.setEnabled(false); } return pb.getPanel(); }
From source file:com.alcatel_lucent.nz.wnmsextract.WNMSTransformGUI.java
License:Open Source License
private JComponent buildInputPanel() { FormLayout layout = new FormLayout("right:pref, 5dlu, 75dlu", //cols "pref, 3dlu, pref"); // rows PanelBuilder builder = new PanelBuilder(layout); CellConstraints cc = new CellConstraints(); builder.addLabel("Snapshot Name", cc.xy(1, 1)); builder.add(snapshot, cc.xyw(3, 1, 1)); builder.addLabel("Stylesheet Name", cc.xy(1, 3)); builder.add(stylesheet, cc.xyw(3, 3, 1)); return builder.getPanel(); }
From source file:com.archivas.clienttools.arcmover.gui.properties.FilePropertiesDialog.java
License:Open Source License
/** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code!// ww w.ja v a 2s . co m * * @noinspection ALL */ private void $$$setupUI$$$() { contentPane = new JPanel(); contentPane.setLayout(new FormLayout( "fill:max(d;4dlu):noGrow,left:150dlu:grow,fill:d:noGrow,fill:50dlu:noGrow,fill:max(d;4dlu):noGrow,fill:d:noGrow", "top:110px:grow,top:m:noGrow,top:4dlu:noGrow,top:15dlu:noGrow,top:4dlu:noGrow")); contentPane.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEmptyBorder(), null)); final JPanel panel1 = new JPanel(); panel1.setLayout(new FormLayout("fill:max(d;4px):noGrow", "center:d:noGrow")); CellConstraints cc = new CellConstraints(); contentPane.add(panel1, cc.xyw(2, 2, 5)); final JScrollPane scrollPane1 = new JScrollPane(); contentPane.add(scrollPane1, cc.xyw(2, 1, 3, CellConstraints.FILL, CellConstraints.FILL)); propertyTable = new JTable(); propertyTable.setCellSelectionEnabled(true); propertyTable.setFillsViewportHeight(true); propertyTable.setRowSelectionAllowed(true); scrollPane1.setViewportView(propertyTable); closeButton = new JButton(); closeButton.setText("Close"); contentPane.add(closeButton, cc.xy(4, 4, CellConstraints.FILL, CellConstraints.FILL)); }
From source file:com.archivas.clienttools.arcmover.gui.settings.ClusterOptionsForm.java
License:Open Source License
/** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code!//from www.j a v a2 s . co m * * @noinspection ALL */ private void $$$setupUI$$$() { contentPane = new JPanel(); contentPane.setLayout(new FormLayout("fill:d:grow", "top:d:grow")); archiveOptionsTab = new JPanel(); archiveOptionsTab.setLayout(new FormLayout( "fill:4dlu:noGrow,fill:129px:noGrow,left:4dlu:noGrow,fill:d:grow,fill:4dlu:noGrow", "center:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,center:max(d;4px):noGrow,center:max(d;4px):noGrow,top:max(m;6dlu):noGrow,center:d:grow,top:6dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,center:max(d;4px):noGrow,center:26px:noGrow,center:4dlu:grow")); CellConstraints cc = new CellConstraints(); contentPane.add(archiveOptionsTab, cc.xy(1, 1)); indexDefaultRadio = new JRadioButton(); indexDefaultRadio.setSelected(true); indexDefaultRadio.setText("Use Namespace Default"); indexDefaultRadio.setToolTipText("File(s) will be indexed based on namespace's settings"); archiveOptionsTab.add(indexDefaultRadio, cc.xyw(2, 4, 3)); indexYesRadio = new JRadioButton(); indexYesRadio.setText("Yes"); indexYesRadio.setToolTipText("File(s) will be indexed by search engine"); archiveOptionsTab.add(indexYesRadio, cc.xyw(2, 5, 3)); indexNoRadio = new JRadioButton(); indexNoRadio.setText("No"); indexNoRadio.setToolTipText("File(s) will not be indexed by search engine"); archiveOptionsTab.add(indexNoRadio, cc.xyw(2, 6, 3)); final JSeparator separator1 = new JSeparator(); archiveOptionsTab.add(separator1, cc.xyw(2, 8, 3, CellConstraints.FILL, CellConstraints.FILL)); shredDefaultRadio = new JRadioButton(); shredDefaultRadio.setSelected(true); shredDefaultRadio.setText("Use Namespace Default"); shredDefaultRadio.setToolTipText("File(s) will be disposed of based on namespace's settings."); archiveOptionsTab.add(shredDefaultRadio, cc.xyw(2, 12, 3)); shredYesRadio = new JRadioButton(); shredYesRadio.setText("Yes"); shredYesRadio.setToolTipText("Shred file(s) upon delete."); archiveOptionsTab.add(shredYesRadio, cc.xyw(2, 13, 3)); shredNoRadio = new JRadioButton(); shredNoRadio.setText("No"); shredNoRadio.setToolTipText("File(s) will not be shred upon delete."); archiveOptionsTab.add(shredNoRadio, cc.xyw(2, 14, 3)); final JPanel panel1 = new JPanel(); panel1.setLayout( new FormLayout("fill:d:noGrow,left:d:noGrow,left:4dlu:noGrow,left:d:noGrow,fill:max(d;4dlu):grow", "center:d:grow")); archiveOptionsTab.add(panel1, cc.xyw(2, 2, 3)); final JLabel label1 = new JLabel(); label1.setFont(new Font(label1.getFont().getName(), Font.BOLD, 14)); label1.setText("Index Files for Search"); panel1.add(label1, cc.xy(1, 1)); final JLabel label2 = new JLabel(); label2.setText("(only available on HCP 3.0+)"); panel1.add(label2, cc.xy(4, 1)); final JPanel panel2 = new JPanel(); panel2.setLayout( new FormLayout("left:89px:noGrow,fill:4dlu:noGrow,left:max(m;4dlu):grow", "center:d:grow")); archiveOptionsTab.add(panel2, cc.xyw(2, 10, 3)); final JLabel label3 = new JLabel(); label3.setFont(new Font(label3.getFont().getName(), Font.BOLD, 14)); label3.setText("Shred Files on Delete"); panel2.add(label3, cc.xyw(1, 1, 3)); indexFileButtonGroup = new ButtonGroup(); indexFileButtonGroup.add(indexNoRadio); indexFileButtonGroup.add(indexYesRadio); indexFileButtonGroup.add(indexDefaultRadio); ButtonGroup buttonGroup; buttonGroup = new ButtonGroup(); buttonGroup.add(shredDefaultRadio); buttonGroup.add(shredYesRadio); buttonGroup.add(shredNoRadio); }
From source file:com.archivas.clienttools.arcmover.gui.settings.DefaultNamespaceSettingsForm.java
License:Open Source License
/** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code!//from w ww .ja va 2 s . c om * * @noinspection ALL */ private void $$$setupUI$$$() { contentPane = new JPanel(); contentPane.setLayout(new FormLayout("fill:d:grow", "center:d:grow")); defaultNamespaceTab = new JPanel(); defaultNamespaceTab.setLayout(new FormLayout( "fill:4dlu:noGrow,fill:max(d;4px):noGrow,left:max(d;4px):noGrow,fill:max(d;4px):grow,fill:d:noGrow", "center:4dlu:noGrow,center:max(d;4px):noGrow,top:15px:noGrow,center:max(d;4px):noGrow,top:5dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(m;4px):grow,top:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow")); CellConstraints cc = new CellConstraints(); contentPane.add(defaultNamespaceTab, cc.xy(1, 1, CellConstraints.DEFAULT, CellConstraints.TOP)); final JLabel label1 = new JLabel(); label1.setFont(new Font(label1.getFont().getName(), Font.BOLD, 14)); label1.setText("POSIX Ownership and Permissions"); defaultNamespaceTab.add(label1, cc.xyw(2, 2, 3)); uidCheckbox = new JCheckBox(); uidCheckbox.setText("UID"); uidCheckbox.setToolTipText("Enable setting UID"); defaultNamespaceTab.add(uidCheckbox, cc.xy(2, 6)); uidTextField = new JTextField(); uidTextField.setEnabled(false); uidTextField.setToolTipText("Number to set for UID"); defaultNamespaceTab.add(uidTextField, cc.xy(4, 6, CellConstraints.FILL, CellConstraints.DEFAULT)); gidCheckbox = new JCheckBox(); gidCheckbox.setText("GID"); gidCheckbox.setToolTipText("Enable setting GID"); defaultNamespaceTab.add(gidCheckbox, cc.xy(2, 8)); fileModeCheckbox = new JCheckBox(); fileModeCheckbox.setText("Object permissions"); fileModeCheckbox.setToolTipText("Enable setting object permissions"); defaultNamespaceTab.add(fileModeCheckbox, cc.xy(2, 10, CellConstraints.DEFAULT, CellConstraints.TOP)); dirModeCheckbox = new JCheckBox(); dirModeCheckbox.setText("Directory permissions"); dirModeCheckbox.setToolTipText("Enable setting directory permissions"); defaultNamespaceTab.add(dirModeCheckbox, cc.xy(2, 12, CellConstraints.DEFAULT, CellConstraints.TOP)); gidTextField = new JTextField(); gidTextField.setEnabled(false); gidTextField.setToolTipText("Number to set for GID"); defaultNamespaceTab.add(gidTextField, cc.xy(4, 8, CellConstraints.FILL, CellConstraints.DEFAULT)); final JLabel label2 = new JLabel(); label2.setFont(new Font(label2.getFont().getName(), label2.getFont().getStyle(), 12)); label2.setText("These settings apply only to the HCP default namespace and HCAP 2.x."); defaultNamespaceTab.add(label2, cc.xyw(2, 3, 3)); objectPermissionsForm = new PermissionsForm(); defaultNamespaceTab.add(objectPermissionsForm.$$$getRootComponent$$$(), cc.xy(4, 10, CellConstraints.FILL, CellConstraints.FILL)); dirPermissionsForm = new PermissionsForm(); defaultNamespaceTab.add(dirPermissionsForm.$$$getRootComponent$$$(), cc.xy(4, 12, CellConstraints.FILL, CellConstraints.FILL)); }
From source file:com.archivas.clienttools.arcmover.gui.settings.PermissionsForm.java
License:Open Source License
/** * Method generated by IntelliJ IDEA GUI Designer >>> IMPORTANT!! <<< DO NOT edit this method OR * call it in your code!/*from w w w. ja v a 2 s . co m*/ * * @noinspection ALL */ private void $$$setupUI$$$() { panel1 = new JPanel(); panel1.setLayout(new FormLayout( "fill:max(m;4px):noGrow,left:4dlu:noGrow,fill:max(m;4px):noGrow,left:4dlu:noGrow,fill:max(m;4px):noGrow,left:4dlu:noGrow,fill:max(m;4px):noGrow", "center:d:noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow,top:4dlu:noGrow,center:max(d;4px):noGrow")); final JLabel label1 = new JLabel(); label1.setText(" "); CellConstraints cc = new CellConstraints(); panel1.add(label1, cc.xy(1, 1)); final JLabel label2 = new JLabel(); label2.setText("Read"); panel1.add(label2, cc.xy(3, 1)); final JLabel label3 = new JLabel(); label3.setText("Write"); panel1.add(label3, cc.xy(5, 1)); final JLabel label4 = new JLabel(); label4.setText("Execute"); panel1.add(label4, cc.xy(7, 1)); final JLabel label5 = new JLabel(); label5.setText("Owner"); panel1.add(label5, cc.xy(1, 3)); final JLabel label6 = new JLabel(); label6.setText("Group"); panel1.add(label6, cc.xy(1, 5)); final JLabel label7 = new JLabel(); label7.setText("Other"); panel1.add(label7, cc.xy(1, 7)); ownerRead = new JCheckBox(); ownerRead.setText(""); panel1.add(ownerRead, cc.xy(3, 3, CellConstraints.CENTER, CellConstraints.DEFAULT)); ownerWrite = new JCheckBox(); ownerWrite.setText(""); panel1.add(ownerWrite, cc.xy(5, 3, CellConstraints.CENTER, CellConstraints.DEFAULT)); ownerExecute = new JCheckBox(); ownerExecute.setText(""); panel1.add(ownerExecute, cc.xy(7, 3, CellConstraints.CENTER, CellConstraints.DEFAULT)); groupRead = new JCheckBox(); groupRead.setText(""); panel1.add(groupRead, cc.xy(3, 5, CellConstraints.CENTER, CellConstraints.DEFAULT)); groupWrite = new JCheckBox(); groupWrite.setText(""); panel1.add(groupWrite, cc.xy(5, 5, CellConstraints.CENTER, CellConstraints.DEFAULT)); groupExecute = new JCheckBox(); groupExecute.setText(""); panel1.add(groupExecute, cc.xy(7, 5, CellConstraints.CENTER, CellConstraints.DEFAULT)); otherRead = new JCheckBox(); otherRead.setText(""); panel1.add(otherRead, cc.xy(3, 7, CellConstraints.CENTER, CellConstraints.DEFAULT)); otherWrite = new JCheckBox(); otherWrite.setText(""); panel1.add(otherWrite, cc.xy(5, 7, CellConstraints.CENTER, CellConstraints.DEFAULT)); otherExecute = new JCheckBox(); otherExecute.setText(""); panel1.add(otherExecute, cc.xy(7, 7, CellConstraints.CENTER, CellConstraints.DEFAULT)); final JLabel label8 = new JLabel(); label8.setText("Numeric code"); panel1.add(label8, cc.xyw(1, 9, 5)); numberPerms = new JTextField(); panel1.add(numberPerms, cc.xy(7, 9, CellConstraints.FILL, CellConstraints.DEFAULT)); }
From source file:com.atlassian.theplugin.idea.bamboo.BambooToolWindowPanel.java
License:Apache License
private JComponent createRightToolBar() { final JPanel toolBarPanel = new JPanel( new FormLayout("pref, fill:pref:grow, 3dlu", "pref, 3dlu, pref, 3dlu")); CellConstraints cc = new CellConstraints(); toolBarPanel.add(loadToolBar("ThePlugin.Bamboo.RightToolBar"), cc.xyw(1, 1, 2)); planHistoryListLabel = new JLabel(COMPLETED_BUILDS); toolBarPanel.add(planHistoryListLabel, cc.xy(1, 3)); toolBarPanel.add(new JSeparator(SwingConstants.HORIZONTAL), cc.xy(2, 3)); return toolBarPanel; }
From source file:com.atlassian.theplugin.idea.config.ProjectDefaultsConfigurationPanel.java
License:Apache License
public ProjectDefaultsConfigurationPanel(final Project project, final ProjectConfiguration projectConfiguration, final FishEyeServerFacade fishEyeServerFacade, final BambooServerFacade bambooServerFacade, final JiraServerFacade jiraServerFacade, final UiTaskExecutor uiTaskExecutor, @NotNull UserCfg defaultCredentials) { this.project = project; this.projectConfiguration = projectConfiguration; this.bambooServerFacade = bambooServerFacade; this.jiraServerFacade = jiraServerFacade; this.uiTaskExecutor = uiTaskExecutor; this.defaultCredentials = defaultCredentials; this.fishEyeServerFacade = fishEyeServerFacade; pathToProjectEdit.setToolTipText("Path to root directory in your repository. " + "E.g. trunk/myproject. Leave it blank if your project is located at the repository root"); final FormLayout layout = new FormLayout("10dlu, 20dlu, right:pref, 3dlu, min(150dlu;default):grow, 3dlu", //columns "p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 3dlu, p, 10dlu, " + //14 "p, 3dlu, p, 3dlu, p, 10dlu, " + //20 "p, 3dlu, p, 3dlu, p, 3dlu, p, 20dlu, fill:p"); //rows //CHECKSTYLE:MAGIC:OFF PanelBuilder builder = new PanelBuilder(layout, this); builder.setDefaultDialogBorder();/* ww w .ja v a 2 s. co m*/ final CellConstraints cc = new CellConstraints(); builder.addSeparator("FishEye", cc.xyw(1, 1, ALL_COLUMNS)); //11 JLabel fshHelp1 = new JLabel(FISHEYE_HELP_TEXT_1); fshHelp1.setFont(fshHelp1.getFont().deriveFont(10.0f)); fshHelp1.setMaximumSize(new Dimension(600, Integer.MAX_VALUE)); builder.add(fshHelp1, cc.xyw(2, 3, ALL_COLUMNS - 1)); builder.addLabel("Default Server:", cc.xy(3, 5)); builder.add(defaultFishEyeServerCombo, cc.xy(5, 5)); builder.addLabel("Default Repository:", cc.xy(3, 7)); builder.add(defaultFishEyeRepositoryCombo, cc.xy(5, 7)); builder.addLabel("Path to Project:", cc.xy(3, 9)); builder.add(pathToProjectEdit, cc.xy(5, 9)); JLabel fshHelp2 = new JLabel(FISHEYE_HELP_TEXT_2); fshHelp2.setFont(fshHelp2.getFont().deriveFont(10.0f)); fshHelp2.setMaximumSize(new Dimension(600, Integer.MAX_VALUE)); builder.add(fshHelp2, cc.xy(5, 11)); builder.addSeparator("JIRA", cc.xyw(1, 13, ALL_COLUMNS)); JLabel jiraHelp = new JLabel(JIRA_HELP_TEXT); jiraHelp.setFont(jiraHelp.getFont().deriveFont(10.0f)); // jgorycki: well, it seems like FormLayout doesn't give a shit about JLabel's maximum width. However, // if I set it to something sane, at least the JLabel seems to wrap its HTML contents properly, instead // of producing one long line jiraHelp.setMaximumSize(new Dimension(600, Integer.MAX_VALUE)); builder.add(jiraHelp, cc.xyw(2, 15, ALL_COLUMNS - 1)); builder.addLabel("Default Server:", cc.xy(3, 17)); builder.add(defaultJiraServerCombo, cc.xy(5, 17)); builder.addSeparator("Default Credentials", cc.xyw(1, 19, ALL_COLUMNS)); final String DEFAULT_CREDENTIALS_TEXT = "Default credentials for selected servers"; JLabel defaultCredentialsLabel = new JLabel(DEFAULT_CREDENTIALS_TEXT); defaultCredentialsLabel.setFont(defaultCredentialsLabel.getFont().deriveFont(10.0f)); builder.add(defaultCredentialsLabel, cc.xyw(2, 21, ALL_COLUMNS - 1)); builder.addLabel("Username:", cc.xy(3, 23)); builder.add(defaultUsername, cc.xy(5, 23)); builder.addLabel("Password:", cc.xy(3, 25)); builder.add(defaultPassword, cc.xy(5, 25)); JPanel panel = new JPanel(new BorderLayout()); panel.add(defaultCredentialsTestButton, BorderLayout.EAST); defaultCredentialsTestButton.setMaximumSize(defaultCredentialsTestButton.getPreferredSize()); builder.add(defaultCredentialsTestButton, cc.xy(5, 27, CellConstraints.RIGHT, CellConstraints.CENTER)); initializeControls(); registerListeners(); //CHECKSTYLE:MAGIC:ON }