Example usage for com.jgoodies.forms.layout CellConstraints xyw

List of usage examples for com.jgoodies.forms.layout CellConstraints xyw

Introduction

In this page you can find the example usage for com.jgoodies.forms.layout CellConstraints xyw.

Prototype

public CellConstraints xyw(int col, int row, int colSpan) 

Source Link

Document

Sets the column, row, width, and height; uses a height (row span) of 1 and the horizontal and vertical default alignments.

Examples:

 cc.xyw(1, 3, 7); cc.xyw(1, 3, 2); 

Usage

From source file:de.dal33t.powerfolder.ui.start.StartTab.java

License:Open Source License

/**
 * One-off build of UI component./*w w  w.j a v  a  2  s .co m*/
 */
private void buildUI() {
    initComponents();

    FormLayout layout = new FormLayout("3dlu, pref:grow, 3dlu", "3dlu, pref, 3dlu, pref, 3dlu, fill:0:grow");

    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();

    // Toolbar
    JPanel toolbar = createToolBar();
    toolbar.setOpaque(false);
    builder.add(toolbar, cc.xy(2, 2));
    builder.addSeparator(null, cc.xyw(1, 4, 2));

    // Main panel in scroll pane
    JPanel mainPanel = buildMainPanel();
    mainPanel.setOpaque(false);
    JScrollPane scrollPane = new JScrollPane(mainPanel);
    scrollPane.setOpaque(false);
    scrollPane.getVerticalScrollBar().setUnitIncrement(10);
    UIUtil.removeBorder(scrollPane);
    builder.add(scrollPane, cc.xyw(1, 6, 2));

    uiComponent = GradientPanel.create(builder.getPanel());
}

From source file:de.dal33t.powerfolder.ui.status.StatusTab.java

License:Open Source License

/**
 * One-off build of UI component./*from   w  ww . j av  a  2s  .  com*/
 */
private void buildUI() {
    initComponents();

    FormLayout layout = new FormLayout("3dlu, pref:grow, 3dlu", "3dlu, pref, 3dlu, pref, 3dlu, fill:0:grow");

    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();

    // Toolbar
    JPanel toolbar = createToolBar();
    toolbar.setOpaque(false);
    builder.add(toolbar, cc.xy(2, 2));
    builder.addSeparator(null, cc.xyw(1, 4, 2));

    // Main panel in scroll pane
    JPanel mainPanel = buildMainPanel();
    mainPanel.setOpaque(false);
    JScrollPane scrollPane = new JScrollPane(mainPanel);
    scrollPane.setOpaque(false);
    scrollPane.getVerticalScrollBar().setUnitIncrement(10);
    UIUtil.removeBorder(scrollPane);
    builder.add(scrollPane, cc.xyw(1, 6, 2));

    uiComponent = builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.UIController.java

License:Open Source License

private void initializeSystray() {
    trayIconManager = new TrayIconManager(this);
    PopupMenu menu = new PopupMenu();

    TrayIcon trayIcon = trayIconManager.getTrayIcon();
    if (trayIcon != null) {
        trayIcon.setPopupMenu(menu);/* w w w .java2  s .  c o m*/
    }

    ActionListener systrayActionHandler = new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            if (COMMAND_OPEN_UI.equals(e.getActionCommand())) {
                mainFrame.toFront();
            } else if (COMMAND_HIDE_UI.equals(e.getActionCommand())) {
                mainFrame.getUIComponent().setVisible(false);
            } else if (COMMAND_EXIT.equals(e.getActionCommand())) {
                // Exit to system
                if (isShutdownAllowed()) {
                    getController().exit(0);
                }
            } else if (COMMAND_SYNC_SHUTDOWN.equals(e.getActionCommand())) {
                if (OSUtil.isLinux()) {
                    FormLayout layout = new FormLayout("pref, pref:grow, 3dlu, pref, pref",
                            "3dlu, pref, 3dlu, pref, 3dlu");
                    PanelBuilder builder = new PanelBuilder(layout);
                    CellConstraints cc = new CellConstraints();
                    builder.add(new JLabel(Translation.getTranslation("shutdown.message")), cc.xyw(2, 2, 3));
                    builder.add(new JLabel(Translation.getTranslation("shutdown.prompt")), cc.xy(2, 4));
                    JPasswordField textField = new JPasswordField(20);
                    builder.add(textField, cc.xy(4, 4));
                    int i = DialogFactory.genericDialog(getController(),
                            Translation.getTranslation("shutdown.title"), builder.getPanel(),
                            new String[] { Translation.getTranslation("general.ok"),
                                    Translation.getTranslation("general.cancel") },
                            0, GenericDialogType.QUESTION);
                    if (i == 0) {
                        String password = Util.toString(textField.getPassword());
                        getController().performFullSync();
                        getController().shutdownAfterSync(password);
                    }
                } else {
                    getController().performFullSync();
                    getController().shutdownAfterSync(null);
                }
            } else if (COMMAND_SYNC_EXIT.equals(e.getActionCommand())) {
                getController().performFullSync();
                getController().exitAfterSync(4);
            } else if (COMMAND_SYNC_ALL.equals(e.getActionCommand())) {
                SwingUtilities.invokeLater(new Runnable() {
                    @Override
                    public void run() {
                        getController().performFullSync();
                    }
                });
            } else if (COMMAND_WEB.equals(e.getActionCommand())) {
                BrowserLauncher.open(getController(), new URLProducer() {
                    @Override
                    public String url() {
                        return getController().getOSClient().getLoginURLWithCredentials();
                    }
                });
            } else if (COMMAND_BROWSE.equals(e.getActionCommand())) {
                PathUtils.openFile(getController().getFolderRepository().getFoldersBasedir());
            } else if (COMMAND_PAUSE.equals(e.getActionCommand())
                    || COMMAND_RESUME.equals(e.getActionCommand())) {
                askToPauseResume();
            } else if (COMMAND_PREFERENCES.equals(e.getActionCommand())) {
                preferencesDialog.open();
            } else if (e.getActionCommand().startsWith(COMMAND_RECENTLY_CHANGED)) {
                int index = e.getActionCommand().lastIndexOf('-');
                String suffix = e.getActionCommand().substring(index + 1);
                int item = Integer.valueOf(suffix);
                synchronized (recentlyChangedFiles) {
                    int i = 0;
                    for (FileInfo fileInfo : recentlyChangedFiles.values()) {
                        if (i++ == item) {
                            // Open file in the file browser, checking if
                            // deleted.
                            UIController uiController = getController().getUIController();
                            uiController.openFileInformation(fileInfo);
                            break;
                        }
                    }
                }
            }
        }
    };

    // /////////////////////////
    // Open / close menu item //
    // /////////////////////////
    final MenuItem openUI = new MenuItem(Translation.getTranslation("systray.show"));
    menu.add(openUI);
    openUI.setActionCommand(COMMAND_OPEN_UI);
    openUI.addActionListener(systrayActionHandler);

    // //////
    // Web //
    // //////
    MenuItem item;
    if (ConfigurationEntry.WEB_LOGIN_ALLOWED.getValueBoolean(getController())) {
        item = menu.add(new MenuItem(Translation.getTranslation("action_open_web_interface.name")));
        item.setActionCommand(COMMAND_WEB);
        item.addActionListener(systrayActionHandler);
    }

    // //////////
    // Folders //
    // //////////
    sysTrayFoldersMenu = new Menu(Translation.getTranslation("general.folder"));
    sysTrayFoldersMenu.setEnabled(false);
    if (Feature.SYSTRAY_ALL_FOLDERS.isEnabled()) {
        menu.add(sysTrayFoldersMenu);
    }

    // /////////
    // Browse //
    // /////////
    item = menu.add(new MenuItem(Translation.getTranslation("action_open_folders_base.name")));
    item.setActionCommand(COMMAND_BROWSE);
    item.addActionListener(systrayActionHandler);

    // /////////////////
    // Pause / Resume //
    // /////////////////
    pauseResumeMenu = new MenuItem(Translation.getTranslation("action_resume_sync.name"));
    menu.add(pauseResumeMenu);
    pauseResumeMenu.addActionListener(systrayActionHandler);
    getController().addPausedModeListener(new MyPausedModeListener());
    configurePauseResumeLink();

    // /////////
    // Recent //
    // /////////
    recentlyChangedMenu = new Menu(Translation.getTranslation("uicontroller.recently_changed"));
    recentlyChangedMenu.setEnabled(false);
    menu.add(recentlyChangedMenu);
    for (int i = 0; i < MAX_RECENTLY_CHANGED_FILES; i++) {
        recentMenuItems[i] = new MenuItem();
        recentMenuItems[i].setActionCommand(COMMAND_RECENTLY_CHANGED + i);
        recentMenuItems[i].addActionListener(systrayActionHandler);
    }

    // //////////////
    // Preferences //
    // //////////////
    final MenuItem prefItem = menu
            .add(new MenuItem(Translation.getTranslation("action_open_preferences.name")));
    prefItem.setActionCommand(COMMAND_PREFERENCES);
    prefItem.addActionListener(systrayActionHandler);
    changePrefsPermission = new BoundPermission(getController(), ChangePreferencesPermission.INSTANCE) {
        @Override
        public void hasPermission(boolean hasPermission) {
            prefItem.setEnabled(hasPermission);
        }
    };

    menu.addSeparator();

    // ////////////////
    // Sync Shutdown //
    // ////////////////
    if (SystemUtil.isShutdownSupported() && PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        item = menu.add(new MenuItem(Translation.getTranslation("systray.sync_shutdown")));
        item.setActionCommand(COMMAND_SYNC_SHUTDOWN);
        item.addActionListener(systrayActionHandler);
    }

    // ////////////
    // Sync Exit //
    // ////////////
    if (PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        item = menu.add(new MenuItem(Translation.getTranslation("systray.sync_exit")));
        item.setActionCommand(COMMAND_SYNC_EXIT);
        item.addActionListener(systrayActionHandler);
    }

    // ///////
    // Exit //
    // ///////
    item = menu.add(new MenuItem(Translation.getTranslation("systray.exit")));
    item.setActionCommand(COMMAND_EXIT);
    item.addActionListener(systrayActionHandler);

    if (trayIcon != null) {
        trayIcon.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                mainFrame.toFront();
            }
        });
    }

    try {
        SystemTray.getSystemTray().add(trayIcon);
    } catch (Exception e) {
        logSevere("Exception", e);
        OSUtil.disableSystray();
        return;
    }

    // Switch Systray show/hide menuitem dynamically
    mainFrame.getUIComponent().addComponentListener(new ComponentAdapter() {
        @Override
        public void componentShown(ComponentEvent arg0) {
            openUI.setLabel(Translation.getTranslation("systray.hide"));
            openUI.setActionCommand(COMMAND_HIDE_UI);
        }

        @Override
        public void componentHidden(ComponentEvent arg0) {
            openUI.setLabel(Translation.getTranslation("systray.show"));
            openUI.setActionCommand(COMMAND_OPEN_UI);
        }
    });

    mainFrame.getUIComponent().addWindowListener(new WindowAdapter() {
        @Override
        public void windowIconified(WindowEvent e) {
            openUI.setLabel(Translation.getTranslation("systray.show"));
            openUI.setActionCommand(COMMAND_OPEN_UI);
        }
    });

    // Load initial folders in menu.
    for (Folder folder : getController().getFolderRepository().getFolders()) {
        addFolderToSysTray(folder);
    }
}

From source file:de.dal33t.powerfolder.ui.wizard.BasicSetupPanel.java

License:Open Source License

protected JPanel buildContent() {
    FormLayout layout = new FormLayout("right:pref, 3dlu, 100dlu, pref:grow",
            "pref, 6dlu, pref, 6dlu, pref, 6dlu, top:pref");
    PanelBuilder builder = new PanelBuilder(layout);
    builder.setBorder(createFewContentBorder());
    CellConstraints cc = new CellConstraints();

    builder.addLabel(Translation.getTranslation("exp.wizard.basic_setup.computer_name"), cc.xy(1, 1));
    builder.add(nameField, cc.xy(3, 1));
    builder.addLabel(Translation.getTranslation("preferences.network.line_settings"),
            cc.xywh(1, 3, 1, 1, "default, top"));
    builder.add(wanLineSpeed.getUiComponent(), cc.xy(3, 3));
    builder.addLabel(Translation.getTranslation("exp.wizard.basic_setup.language_restart"), cc.xy(1, 5));
    builder.add(languageChooser, cc.xy(3, 5));
    builder.add(defaultFolderHelper.getUIComponent(), cc.xyw(3, 7, 2));

    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.ChooseMultiDiskLocationPanel.java

License:Open Source License

protected JPanel buildContent() {
    StringBuilder verticalUserDirectoryLayout = new StringBuilder();
    // Four buttons every row.
    for (int i = 0; i < 1 + boxes.size() / 4; i++) {
        verticalUserDirectoryLayout.append("pref, 3dlu, ");
    }//from   w  w  w .  j  ava  2  s .  co  m

    String verticalLayout = verticalUserDirectoryLayout
            + "9dlu, min(40dlu;pref), 3dlu, pref, 12dlu, pref, 3dlu, max(16dlu;pref), 12dlu, pref";
    // info custom add size os w
    // Fixed (60dlu) sizing used so that other components display okay if
    // there is only 1 or two (or even zero) check boxes displayed.
    FormLayout layout = new FormLayout("60dlu, 15dlu, 60dlu, 15dlu, 60dlu, 15dlu, 60dlu, 0:grow",
            verticalLayout);
    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();
    int row = 1;
    int col = 1;

    for (JCheckBox box : boxes) {
        builder.add(box, cc.xy(col, row));
        if (col == 1) {
            col = 3;
        } else if (col == 3) {
            col = 5;
        } else if (col == 5) {
            col = 7;
        } else {
            row += 2;
            col = 1;
        }
    }
    row += 3;
    builder.add(customDirectoryComp, cc.xyw(1, row, 7));
    row += 2;
    builder.add(createCustomButtons(), cc.xyw(1, row, 7));
    row += 2;

    if (getController().getOSClient().isBackupByDefault()
            && PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        builder.add(backupByOnlineStorageBox, cc.xyw(1, row, 3));
    }
    Object object = getWizardContext().getAttribute(SYNC_PROFILE_ATTRIBUTE);
    if (object != null && object.equals(AUTOMATIC_SYNCHRONIZATION)) {
        builder.add(manualSyncCheckBox, cc.xyw(5, row, 3));
    }
    row += 2;

    // Send Invite
    if (getController().isBackupOnly()
            || !ConfigurationEntry.SERVER_INVITE_ENABLED.getValueBoolean(getController())) {
        sendInviteAfterCB.setSelected(false);
    } else {
        builder.add(sendInviteAfterCB, cc.xyw(1, row, 3));
    }
    row += 2;

    builder.add(warningLabel.getUIComponent(), cc.xyw(1, row, 6));

    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.ConfirmDiskLocationPanel.java

License:Open Source License

protected JPanel buildContent() {

    FormLayout layout = new FormLayout("pref, 3dlu, pref, 3dlu, max(pref;100dlu), 0",
            "pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, 3dlu, pref");

    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();

    JComponent locationField = new JLabel(Translation.getTranslation("general.directory"));

    int row = 1;/*w w  w .  j  av a2 s .  co  m*/

    builder.add(locationField, cc.xy(1, row));
    builder.add(new JLabel(localBase.toAbsolutePath().toString()), cc.xy(3, row));

    row += 2;
    builder.add(folderSizeLabel, cc.xyw(1, row, 5));

    if (getController().getOSClient().isBackupByDefault()
            && PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        row += 2;
        builder.add(backupByOnlineStorageBox, cc.xyw(1, row, 5));
    }

    // Send Invite
    if (getController().isBackupOnly()
            || !ConfigurationEntry.SERVER_INVITE_ENABLED.getValueBoolean(getController())) {
        sendInviteAfterCB.setSelected(false);
    } else {
        row += 2;
        builder.add(sendInviteAfterCB, cc.xyw(1, row, 5));
    }

    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.FolderAutoCreatePanel.java

License:Open Source License

@Override
protected JPanel buildContent() {

    FormLayout layout = new FormLayout("right:pref, 3dlu, pref, pref:grow",
            "pref, 3dlu, pref, 3dlu, pref, " + "3dlu, pref, 15dlu, pref");

    PanelBuilder builder = new PanelBuilder(layout);
    builder.setBorder(createFewContentBorder());
    CellConstraints cc = new CellConstraints();

    int row = 1;/*  w  w  w .jav a2 s  . c  o m*/

    // Name
    builder.addLabel(Translation.getTranslation("general.folder"), cc.xy(1, row));
    builder.add(folderNameLabel, cc.xy(3, row));
    row += 2;

    // Sync
    if (PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        builder.addLabel(Translation.getTranslation("general.synchonisation"), cc.xy(1, row));
        JPanel p = (JPanel) syncProfileSelectorPanel.getUIComponent();
        builder.add(p, cc.xyw(3, row, 2));
    }
    row += 2;

    // Cloud space
    builder.add(useCloudCB, cc.xyw(3, row, 2));
    row += 2;

    // Invite
    if (!getController().isBackupOnly()
            && ConfigurationEntry.SERVER_INVITE_ENABLED.getValueBoolean(getController())) {
        builder.add(inviteCB, cc.xyw(3, row, 2));
    }
    row += 2;

    // Undo
    builder.add(undoLabel.getUIComponent(), cc.xyw(3, row, 2));

    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.FolderOnlineStoragePanel.java

License:Open Source License

protected JPanel buildContent() {
    FormLayout layout = new FormLayout("$wlabel, $lcg, $wfield, 0:g", "pref, 6dlu, pref, 6dlu, pref");
    PanelBuilder builder = new PanelBuilder(layout);
    builder.setBorder(createFewContentBorder());
    CellConstraints cc = new CellConstraints();

    if (removeFolder) {
        builder.addLabel(Translation.getTranslation("exp.wizard.webservice.unmirror_folder"), cc.xyw(1, 1, 4));
    } else {//from   ww w .j  a  va  2  s  .  c o  m
        builder.addLabel(Translation.getTranslation("exp.wizard.webservice.mirror_folder"), cc.xyw(1, 1, 4));
    }

    builder.addLabel(Translation.getTranslation("general.folder"), cc.xy(1, 3));
    builder.add(folderLabel, cc.xy(3, 3));

    LinkLabel link = new LinkLabel(getController(),
            Translation.getTranslation("exp.wizard.webservice.learn_more"),
            ConfigurationEntry.PROVIDER_ABOUT_URL.getValue(getController()));
    builder.add(link.getUIComponent(), cc.xyw(1, 5, 3));
    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.FolderSetupPanel.java

License:Open Source License

protected JPanel buildContent() {
    FormLayout layout = new FormLayout("right:pref, 3dlu, 140dlu, pref:grow", "pref, 3dlu, pref, 3dlu, pref");

    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();

    // Folder Name
    builder.add(new JLabel(Translation.getTranslation("file_info.name")), cc.xy(1, 1));
    builder.add(folderNameTextField, cc.xy(3, 1));

    // Sync// w  w w  .  j  av a  2 s . c  o  m
    if (PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        builder.add(new JLabel(Translation.getTranslation("general.transfer_mode")), cc.xy(1, 3));
        JPanel p = (JPanel) syncProfileSelectorPanel.getUIComponent();
        p.setOpaque(false);
        builder.add(p, cc.xyw(3, 3, 2));
    }
    return builder.getPanel();
}

From source file:de.dal33t.powerfolder.ui.wizard.LoadInvitationPanel.java

License:Open Source License

@Override
protected JPanel buildContent() {
    FormLayout layout = new FormLayout("pref, 3dlu, 140dlu, pref:grow",
            "pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, 3dlu, pref, " + "3dlu, pref, 3dlu, pref, 3dlu, pref");

    PanelBuilder builder = new PanelBuilder(layout);
    CellConstraints cc = new CellConstraints();

    // Please select invite...
    builder.addLabel(Translation.getTranslation("exp.wizard.load_invitation.select_file"), cc.xy(3, 1));

    // Invite selector
    builder.add(locationField, cc.xyw(3, 3, 2));

    // Folder//from w ww  .  j  av a  2s .c  om
    builder.add(folderHintLabel, cc.xy(1, 5));
    builder.add(folderNameLabel, cc.xyw(3, 5, 2));

    // From
    builder.add(invitorHintLabel, cc.xy(1, 7));
    builder.add(invitorLabel, cc.xy(3, 7));

    // Message
    builder.add(invitationMessageHintLabel, cc.xy(1, 9));
    builder.add(invitationMessageLabel, cc.xy(3, 9));

    // Est size
    builder.add(estimatedSizeHintLabel, cc.xy(1, 11));
    builder.add(estimatedSize, cc.xy(3, 11));

    // Sync
    if (PreferencesEntry.EXPERT_MODE.getValueBoolean(getController())) {
        builder.add(syncProfileHintLabel, cc.xy(1, 13));
        JPanel p = (JPanel) syncProfileSelectorPanel.getUIComponent();
        p.setOpaque(false);

        FormLayout layout2 = new FormLayout("pref, pref:grow", "pref");
        PanelBuilder builder2 = new PanelBuilder(layout2);
        builder2.add(p, cc.xy(1, 1));

        JPanel panel = builder2.getPanel();
        builder.add(panel, cc.xyw(3, 13, 2));
        panel.setOpaque(false);
    }

    // Preview
    builder.add(previewOnlyCB, cc.xy(3, 15));

    return builder.getPanel();
}