private void initUI() { myLeftPanel = new NonOpaquePanel(new BorderLayout()); myLeftPanel.add(mySearchFieldWrapper = new Wrapper(), BorderLayout.NORTH); myLeftPanel.add(myReplaceFieldWrapper = new Wrapper(), BorderLayout.CENTER); updateSearchComponent(); updateReplaceComponent(); initSearchToolbars(); initReplaceToolBars(); Wrapper searchToolbarWrapper1 = new NonOpaquePanel(new BorderLayout()); searchToolbarWrapper1.add(mySearchActionsToolbar1, BorderLayout.WEST); Wrapper searchToolbarWrapper2 = new Wrapper(mySearchActionsToolbar2); JPanel searchPair = new NonOpaquePanel(new BorderLayout()).setVerticalSizeReferent(mySearchFieldWrapper); searchPair.add(mySearchActionsToolbar1, BorderLayout.WEST); searchPair.add(searchToolbarWrapper2, BorderLayout.CENTER); JLabel closeLabel = new JLabel(null, AllIcons.Actions.Cross, SwingConstants.RIGHT); closeLabel.setBorder(JBUI.Borders.empty(5, 5, 5, 5)); closeLabel.setVerticalAlignment(SwingConstants.TOP); closeLabel.addMouseListener( new MouseAdapter() { @Override public void mousePressed(final MouseEvent e) { close(); } }); closeLabel.setToolTipText("Close search bar (Escape)"); searchPair.add(new Wrapper.North(closeLabel), BorderLayout.EAST); Wrapper replaceToolbarWrapper1 = new Wrapper(myReplaceActionsToolbar1).setVerticalSizeReferent(myReplaceFieldWrapper); Wrapper replaceToolbarWrapper2 = new Wrapper(myReplaceActionsToolbar2).setVerticalSizeReferent(myReplaceFieldWrapper); myReplaceToolbarWrapper = new NonOpaquePanel(new BorderLayout()); myReplaceToolbarWrapper.add(replaceToolbarWrapper1, BorderLayout.WEST); myReplaceToolbarWrapper.add(replaceToolbarWrapper2, BorderLayout.CENTER); searchToolbarWrapper1.setHorizontalSizeReferent(replaceToolbarWrapper1); myRightPanel = new NonOpaquePanel(new BorderLayout()); myRightPanel.add(searchPair, BorderLayout.NORTH); myRightPanel.add(myReplaceToolbarWrapper, BorderLayout.CENTER); OnePixelSplitter splitter = new OnePixelSplitter(false, .25F); splitter.setFirstComponent(myLeftPanel); splitter.setSecondComponent(myRightPanel); splitter.setHonorComponentsMinimumSize(true); splitter.setAndLoadSplitterProportionKey("FindSplitterProportion"); splitter.setOpaque(false); splitter.getDivider().setOpaque(false); add(splitter, BorderLayout.CENTER); }
public final JLabel getOdometer() { if (odometer == null) { odometer = new JLabel(); odometer.setVerticalAlignment(SwingConstants.CENTER); odometer.setHorizontalAlignment(SwingConstants.LEFT); odometer.setText(" "); addMouseListener(this); addMouseMotionListener(this); } return odometer; }
/** * Creates and adds a JLabel representing the icon returned from <code>getIcon</code> to <code>top * </code>. This is messaged from <code>createMessageArea</code> */ protected void addIcon(Container top) { /* Create the icon. */ Icon sideIcon = getIcon(); if (sideIcon != null) { JLabel iconLabel = new JLabel(sideIcon); iconLabel.setName("OptionPane.iconLabel"); iconLabel.setVerticalAlignment(SwingConstants.TOP); top.add(iconLabel, BorderLayout.BEFORE_LINE_BEGINS); } }
private static JLabel createArrow(final ActionLink link) { JLabel arrow = new JLabel(AllIcons.General.Combo3); arrow.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); arrow.setVerticalAlignment(SwingConstants.BOTTOM); new ClickListener() { @Override public boolean onClick(@NotNull MouseEvent e, int clickCount) { final MouseEvent newEvent = MouseEventAdapter.convert(e, link, e.getX(), e.getY()); link.doClick(newEvent); return true; } }.installOn(arrow); return arrow; }
/** * Create preview component. * * @param type type * @param comboBox the options. * @param prefSize the preferred size * @return the component. */ private static Component createPreview(int type, final JComboBox comboBox, Dimension prefSize) { JComponent preview = null; if (type == DeviceConfigurationComboBoxModel.AUDIO) { Object selectedItem = comboBox.getSelectedItem(); if (selectedItem instanceof AudioSystem) { AudioSystem audioSystem = (AudioSystem) selectedItem; if (!NoneAudioSystem.LOCATOR_PROTOCOL.equalsIgnoreCase(audioSystem.getLocatorProtocol())) { preview = new TransparentPanel(new GridBagLayout()); createAudioSystemControls(audioSystem, preview); } } } else if (type == DeviceConfigurationComboBoxModel.VIDEO) { JLabel noPreview = new JLabel( NeomediaActivator.getResources().getI18NString("impl.media.configform.NO_PREVIEW")); noPreview.setHorizontalAlignment(SwingConstants.CENTER); noPreview.setVerticalAlignment(SwingConstants.CENTER); preview = createVideoContainer(noPreview); preview.setPreferredSize(prefSize); Object selectedItem = comboBox.getSelectedItem(); CaptureDeviceInfo device = null; if (selectedItem instanceof DeviceConfigurationComboBoxModel.CaptureDevice) device = ((DeviceConfigurationComboBoxModel.CaptureDevice) selectedItem).info; Exception exception; try { createVideoPreview(device, preview); exception = null; } catch (IOException ex) { exception = ex; } catch (MediaException ex) { exception = ex; } if (exception != null) { logger.error("Failed to create preview for device " + device, exception); device = null; } } return preview; }
/** Create GUI elements */ private void loadGUI() { setTitle("Wifi QRCode Generator"); mainPanel = new JPanel(); BoxLayout vBoxLayout = new BoxLayout(mainPanel, BoxLayout.Y_AXIS); mainPanel.setLayout(vBoxLayout); int LABEL_WIDTH = 100; int LABEL_HEIGHT = 30; int EDIT_WIDTH = 200; int EDIT_HEIGHT = 30; // guide label { // This layout simply makes label looks left-alignmented JPanel barPanel = new JPanel(); BoxLayout barHLayout = new BoxLayout(barPanel, BoxLayout.X_AXIS); barPanel.setLayout(barHLayout); JLabel ssoGuideLabel = new JLabel("Enter your SSO and click button below to login"); ssoGuideLabel.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 15)); barPanel.add(ssoGuideLabel); mainPanel.add(barPanel); } Font gFont = new Font(Font.SANS_SERIF, Font.PLAIN, 13); Config config = Config.instance(); // email password remember password { JPanel userPanel = new JPanel(); BoxLayout hBoxLayout = new BoxLayout(userPanel, BoxLayout.X_AXIS); userPanel.setLayout(hBoxLayout); JLabel emailLabel = new JLabel("Email:"); Dimension labelDimension = new Dimension(LABEL_WIDTH, LABEL_HEIGHT); emailLabel.setMinimumSize(labelDimension); emailLabel.setPreferredSize(labelDimension); emailLabel.setMaximumSize(labelDimension); userPanel.add(emailLabel); userPanel.add(Box.createRigidArea(new Dimension(5, 0))); emailField = new TextField(); emailField.setMinimumSize(new Dimension(EDIT_WIDTH, EDIT_HEIGHT)); emailField.setMaximumSize(new Dimension(EDIT_WIDTH + 300, EDIT_HEIGHT)); emailField.setFont(gFont); emailField.setText(config.getEmail()); userPanel.add(emailField); mainPanel.add(userPanel); JPanel passwordPanel = new JPanel(); BoxLayout hBoxLayout2 = new BoxLayout(passwordPanel, BoxLayout.X_AXIS); passwordPanel.setLayout(hBoxLayout2); JLabel passwordLabel = new JLabel("SSO Password:"******"Remember password", false); rememberPasswordCheckbox.setState(config.getRememberPassword()); mainPanel.add(rememberPasswordCheckbox); mainPanel.add(Box.createHorizontalGlue()); } JPanel centerPanel = new JPanel(); BorderLayout bLayout = new BorderLayout(); centerPanel.setLayout(bLayout); buttonGetPassword = new JButton(idleButtonText); Font font = new Font(Font.SERIF, Font.BOLD, 18); buttonGetPassword.setFont(font); buttonGetPassword.setMinimumSize(new Dimension(300, 50)); buttonGetPassword.setPreferredSize(new Dimension(300, 50)); buttonGetPassword.setMaximumSize(new Dimension(300, 50)); centerPanel.add(buttonGetPassword, BorderLayout.CENTER); hintLabel = new JLabel("Enter your SSO and click button to start"); hintLabel.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 15)); centerPanel.add(hintLabel, BorderLayout.SOUTH); mainPanel.add(centerPanel); wifiPasswordField = new TextField("Wifi password has not been generated"); mainPanel.add(wifiPasswordField); JPanel qrCenterPanel = new JPanel(); BorderLayout bLayout2 = new BorderLayout(); qrCenterPanel.setLayout(bLayout2); qrCodeLabel = new JLabel(""); qrCodeLabel.setMinimumSize(new Dimension(400, 400)); qrCodeLabel.setPreferredSize(new Dimension(400, 400)); qrCodeLabel.setMaximumSize(new Dimension(400, 400)); qrCodeLabel.setHorizontalAlignment(JLabel.CENTER); qrCodeLabel.setVerticalAlignment(JLabel.CENTER); qrCodeLabel.setIcon(idleIcon); qrCenterPanel.add(qrCodeLabel, BorderLayout.CENTER); mainPanel.add(qrCenterPanel); // client download section { Font clientFont = new Font(Font.SANS_SERIF, Font.BOLD, 15); Dimension clientDimension = new Dimension(200, 30); JPanel clientPanel = new JPanel(); BorderLayout cp_bLayout = new BorderLayout(); clientPanel.setLayout(cp_bLayout); HyberLinkLabel androidLabel = new HyberLinkLabel( " [ Android Client ] ", "https://github.com/tangyanhan/ClrGstAutoLogin-/blob/master/ClrGstAutoConnect/bin/ClrGstAutoConnect.apk"); androidLabel.setMinimumSize(clientDimension); androidLabel.setFont(clientFont); clientPanel.add(androidLabel, BorderLayout.WEST); HyberLinkLabel iosLabel = new HyberLinkLabel(" [ iOS Client ] ", ""); iosLabel.setMinimumSize(clientDimension); iosLabel.setFont(clientFont); clientPanel.add(iosLabel, BorderLayout.EAST); mainPanel.add(clientPanel); } add(mainPanel); this.pack(); this.setVisible(true); this.setLocation(300, 100); this.setSize(500, 730); buttonGetPassword.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { long elapsed = Calendar.getInstance().getTimeInMillis() - lastClickTime; // If we got the successfull password 5 minutes ago if (((elapsed / 1000) / 60) < 5) { hintLabel.setText("Take a rest! You have got the QR code already!"); return; } fetchPassword(); if (!Config.instance().getWifiPassword().isEmpty()) lastClickTime = Calendar.getInstance().getTimeInMillis(); } }); }
public void doInit() { final InviteResponseMessageBox _this = this; if (!this.message.isDealtWith()) { // Show the response. this.responseBox = new Box(BoxLayout.Y_AXIS); this.add(this.responseBox); JComponent l = UIUtils.createBoldSubHeader( String.format( "%s the invitation", (this.message.isAccepted() ? "Accepted" : "Rejected")), (this.message.isAccepted() ? Constants.ACCEPTED_ICON_NAME : Constants.REJECTED_ICON_NAME)); this.responseBox.add(l); this.responseBox.setBorder(UIUtils.createPadding(5, 5, 0, 5)); if (this.message.isAccepted()) { if ((this.message.getEditorName() != null) || (this.message.getEditorAvatar() != null)) { JTextPane desc = UIUtils.createHelpTextPane( "Additionally they provided the following name/avatar.", this.projectViewer); this.responseBox.add(Box.createVerticalStrut(5)); this.responseBox.add(desc); desc.setBorder(null); desc.setSize(new Dimension(UIUtils.getPopupWidth() - 20, desc.getPreferredSize().height)); Box editorInfo = new Box(BoxLayout.X_AXIS); editorInfo.setAlignmentX(Component.LEFT_ALIGNMENT); editorInfo.setBorder(UIUtils.createPadding(5, 5, 5, 5)); this.responseBox.add(editorInfo); if (this.message.getEditorAvatar() != null) { JLabel avatar = new JLabel(); avatar.setAlignmentY(Component.TOP_ALIGNMENT); avatar.setVerticalAlignment(SwingConstants.TOP); editorInfo.add(avatar); avatar.setOpaque(false); avatar.setIcon( new ImageIcon(UIUtils.getScaledImage(_this.message.getEditorAvatar(), 50))); avatar.setBorder( new CompoundBorder(UIUtils.createPadding(0, 0, 0, 5), UIUtils.createLineBorder())); } if (this.message.getEditorName() != null) { JLabel name = new JLabel(this.message.getEditorName()); editorInfo.add(name); name.setBorder(null); name.setAlignmentY(Component.TOP_ALIGNMENT); name.setVerticalAlignment(JLabel.TOP); name.setAlignmentX(Component.LEFT_ALIGNMENT); name.setFont( name.getFont() .deriveFont((float) UIUtils.getScaledFontSize(14)) .deriveFont(java.awt.Font.PLAIN)); } } } final EditorEditor ed = this.message.getEditor(); JButton ok = new JButton("Ok, got it"); ok.addActionListener( new ActionAdapter() { public void actionPerformed(ActionEvent ev) { try { if (_this.message.isAccepted()) { ed.setEditorStatus(EditorEditor.EditorStatus.current); if (_this.message.getEditorName() != null) { ed.setName(_this.message.getEditorName()); } if (_this.message.getEditorAvatar() != null) { ed.setAvatar(_this.message.getEditorAvatar()); } EditorsEnvironment.updateEditor(ed); // Is this response for an invite message or just out of the blue from a web // service invite? if (!EditorsEnvironment.hasSentMessageOfTypeToEditor( ed, InviteMessage.MESSAGE_TYPE)) { EditorsEnvironment.sendUserInformationToEditor(ed, null, null, null); } } else { ed.setEditorStatus(EditorEditor.EditorStatus.rejected); EditorsEnvironment.updateEditor(ed); } _this.message.setDealtWith(true); EditorsEnvironment.updateMessage(_this.message); _this.responseBox.setVisible(false); } catch (Exception e) { Environment.logError("Unable to update editor: " + ed, e); UIUtils.showErrorMessage( _this.projectViewer, "Unable to update {editor}, please contact Quoll Writer support for assitance."); return; } } }); JButton[] buts = new JButton[] {ok}; JPanel bb = UIUtils.createButtonBar2(buts, Component.LEFT_ALIGNMENT); bb.setOpaque(false); bb.setAlignmentX(Component.LEFT_ALIGNMENT); bb.setBorder(UIUtils.createPadding(5, 0, 0, 0)); this.responseBox.add(bb); return; } boolean accepted = this.message.isAccepted(); String iconName = (accepted ? Constants.ACCEPTED_ICON_NAME : Constants.REJECTED_ICON_NAME); String message = "Accepted invitation to be {an editor}"; if (!accepted) { message = "Rejected invitation to be {an editor}"; } JComponent h = UIUtils.createBoldSubHeader(message, iconName); this.add(h); }
Primary() { // Initial declarations, adding of listeners, and database linking. // Database link DBHookUp db = new DBHookUp(); // Frame stuff frame = new JFrame("4 Byte Warrior"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setBackground(Color.RED); frame.setResizable(false); // Panels main = new JPanel(); scores = new JPanel(); credits = new JPanel(); story = new JPanel(); tutorial = new JPanel(); main.setLayout(new BoxLayout(main, BoxLayout.Y_AXIS)); main.setBackground(Color.RED); main.setOpaque(true); scores.setLayout(new BorderLayout()); scores.setBackground(Color.RED); scores.setOpaque(true); credits.setLayout(new BorderLayout()); credits.setBackground(Color.RED); credits.setOpaque(true); // story.setLayout(new BoxLayout(story, BoxLayout.PAGE_AXIS)); story.setLayout(new BorderLayout()); story.setBackground(Color.RED); story.setOpaque(true); // tutorial.setLayout(new BoxLayout(tutorial, BoxLayout.PAGE_AXIS)); tutorial.setLayout(new BorderLayout()); tutorial.setBackground(Color.RED); tutorial.setOpaque(true); // Buttons start = new JButton("Go"); start.addActionListener(this); start.setPreferredSize(new Dimension(125, 35)); start.setAlignmentX(start.CENTER_ALIGNMENT); start.setBackground(Color.BLACK); start.setForeground(Color.WHITE); start.setHorizontalAlignment(SwingConstants.CENTER); cred = new JButton("Credits"); cred.setPreferredSize(new Dimension(125, 35)); cred.addActionListener(this); cred.setAlignmentX(cred.CENTER_ALIGNMENT); cred.setBackground(Color.BLACK); cred.setForeground(Color.WHITE); cred.setHorizontalAlignment(SwingConstants.CENTER); high = new JButton("High Scores"); high.addActionListener(this); high.setPreferredSize(new Dimension(125, 35)); high.setAlignmentX(high.CENTER_ALIGNMENT); high.setBackground(Color.BLACK); high.setForeground(Color.WHITE); high.setHorizontalAlignment(SwingConstants.CENTER); stor = new JButton("Next"); stor.addActionListener(this); stor.setPreferredSize(new Dimension(100, 35)); stor.setAlignmentX(stor.CENTER_ALIGNMENT); stor.setBackground(Color.BLACK); stor.setForeground(Color.WHITE); stor.setHorizontalAlignment(SwingConstants.CENTER); tutor = new JButton("Play"); tutor.addActionListener(this); tutor.setPreferredSize(new Dimension(100, 35)); tutor.setAlignmentX(tutor.CENTER_ALIGNMENT); tutor.setBackground(Color.BLACK); tutor.setForeground(Color.WHITE); returns1 = new JButton("Return"); returns1.addActionListener(this); returns1.setPreferredSize(new Dimension(100, 35)); returns1.setAlignmentX(returns1.CENTER_ALIGNMENT); returns1.setBackground(Color.BLACK); returns1.setForeground(Color.WHITE); returns1.setHorizontalAlignment(SwingConstants.CENTER); returns2 = new JButton("Return"); returns2.addActionListener(this); returns2.setPreferredSize(new Dimension(100, 35)); returns2.setAlignmentX(returns2.CENTER_ALIGNMENT); returns2.setBackground(Color.BLACK); returns2.setForeground(Color.WHITE); returns2.setHorizontalAlignment(SwingConstants.CENTER); returns3 = new JButton("Return"); returns3.addActionListener(this); returns3.setPreferredSize(new Dimension(100, 35)); returns3.setAlignmentX(returns3.CENTER_ALIGNMENT); returns3.setBackground(Color.BLACK); returns3.setForeground(Color.WHITE); returns3.setHorizontalAlignment(SwingConstants.CENTER); returns4 = new JButton("Return"); returns4.addActionListener(this); returns4.setPreferredSize(new Dimension(100, 35)); returns4.setAlignmentX(returns4.CENTER_ALIGNMENT); returns4.setBackground(Color.BLACK); returns4.setForeground(Color.WHITE); returns4.setHorizontalAlignment(SwingConstants.CENTER); // Text display theme = new JLabel(); String text = String.format( "<html><div style=\"width:%dpx;\"><center><font size = \"4\">%s</font></center></div><html>", 300, "Binary was a land of peace, ruled by the good king Groshi. " + "One day, the Dark Knight and his armies descended upon " + "the kingdom, throwing it into chaos. The Dark Knight " + "killed Groshi and kidnapped his daughter Elsie. " + "Only one memember of the kingdom could hope to " + "save the kingdom...<br/><br/>" + "<font size = \"7\"> THE 4 BYTE WARRIOR </font>"); theme.setText(text); theme.setHorizontalAlignment(JLabel.CENTER); theme.setVerticalAlignment(JLabel.CENTER); theme.setForeground(Color.WHITE); instruct = new JLabel(); String instruction = String.format( "<html><div style=\"width:%dpx;\"><center>%s</center></div><html>", 200, "Z Key: Attack<br/>X Key: Cycle through inventory<br/>D-Pad: Movement<br/>A: Pause<br/><br/><br/>Defeat the enemeies to advance. Fight the bosses, get through the 8 worlds of Binary, and save Princess Elsie."); instruct.setText(instruction); instruct.setHorizontalAlignment(JLabel.CENTER); instruct.setVerticalAlignment(JLabel.CENTER); instruct.setForeground(Color.WHITE); String names = String.format( "<html><div style=\"width:%dpx;\"><center>%s</center></div><html>", 150, "Alexander Friebe<br/>Charles Heckel<br/>Nicholas Lindsley<br/>Ben McWerthy<br/>"); people = new JLabel(names); people.setHorizontalAlignment(JLabel.CENTER); people.setVerticalAlignment(JLabel.CENTER); people.setForeground(Color.WHITE); String major = String.format( "<html><div style=\"width:%dpx;\"><center>%s</center></div><html>", 150, "Computer Science<br/>Computer Engineering<br/>Computer Engineering<br/>Computer Science<br/>"); majors = new JLabel(major); majors.setHorizontalAlignment(JLabel.CENTER); majors.setVerticalAlignment(JLabel.CENTER); majors.setForeground(Color.WHITE); String credi = String.format( "<html><div style=\"width:%dpx;\"><center><font size = \"4\">%s</font></center></div><html>", 150, "Credits"); top = new JLabel(credi); top.setHorizontalAlignment(JLabel.CENTER); top.setVerticalAlignment(JLabel.CENTER); top.setForeground(Color.WHITE); scoresTop = new JLabel(); String scTop = String.format( "<html><div style=\"width:%dpx;\"><center><font size = \"4\">%s</font></center></div><html>", 200, "High Scores for Enemies Killed"); scoresTop.setText(scTop); scoresTop.setForeground(Color.WHITE); scoresTop.setHorizontalAlignment(JLabel.CENTER); scoresTop.setVerticalAlignment(JLabel.CENTER); JLabel dbScores = new JLabel(); ArrayList<Integer> sc = db.getScores(); System.out.println(sc.size()); // System.out.println(sc.get(0)); String actual = String.format( "<html><div style=\"width:%dpx;\"><center><font size = \"4\">%s</font></center></div><html>", 100, sc.get(0) + "<br/>" + sc.get(1) + "<br/>" + sc.get(2) + "<br/>"); dbScores.setText(actual); dbScores.setHorizontalAlignment(JLabel.CENTER); dbScores.setVerticalAlignment(JLabel.CENTER); dbScores.setForeground(Color.WHITE); // Additions to main mainButtons = new JPanel(new GridLayout(3, 1)); mainButtons.add(start); mainButtons.add(high); mainButtons.add(cred); main.add(mainButtons); // Additions to credits credits.add(top, BorderLayout.PAGE_START); // credits.add(people, BorderLayout.LINE_START); // credits.add(majors, BorderLayout.LINE_END); JPanel middle = new JPanel(new GridLayout(1, 2)); middle.add(people); middle.add(majors); middle.setBackground(Color.RED); JPanel bottom = new JPanel(new GridLayout(1, 1)); bottom.add(returns2); bottom.setBackground(Color.RED); credits.add(middle, BorderLayout.CENTER); credits.add(bottom, BorderLayout.PAGE_END); // Additions to high scores scores.add(scoresTop, BorderLayout.PAGE_START); scores.add(dbScores, BorderLayout.CENTER); JPanel bot = new JPanel(new GridLayout(1, 1)); bot.add(returns1); bot.setBackground(Color.RED); scores.add(bot, BorderLayout.PAGE_END); // Additions to story story.add(theme, BorderLayout.CENTER); buttons = new JPanel(new GridLayout(2, 1)); buttons.setBackground(Color.RED); // buttons.setOpaque(true); buttons.add(stor); buttons.add(returns3); story.add(buttons, BorderLayout.PAGE_END); // Additions to tutorial JPanel tutButtons = new JPanel(new GridLayout(2, 1)); tutorial.add(instruct, BorderLayout.CENTER); tutButtons.add(tutor); tutButtons.add(returns4); tutButtons.setBackground(Color.RED); tutorial.add(tutButtons, BorderLayout.PAGE_END); main.setBorder(new EmptyBorder(100, 150, 100, 150)); bot.setBorder(new EmptyBorder(0, 150, 0, 150)); // middle.setBorder(new EmptyBorder(0,150,0,150)); bottom.setBorder(new EmptyBorder(0, 150, 0, 150)); buttons.setBorder(new EmptyBorder(0, 150, 0, 150)); tutButtons.setBorder(new EmptyBorder(0, 150, 0, 150)); frame.add(main); frame .pack(); // critical to call before you make the window visible in order to make everything // look right 100% of the time frame.setLocationRelativeTo(null); frame.setVisible(true); }
/** * Create the JPanel to allow users to save the mappings created to be used in a proceeding * mapping activity! * * @return JLayeredPane containing the gui to allow a user to save the mapping file! */ private JLayeredPane createSaveMappings() { JPanel saveMappingFilesCont = new JPanel(); saveMappingFilesCont.setSize(new Dimension(400, 300)); saveMappingFilesCont.setLayout(new BoxLayout(saveMappingFilesCont, BoxLayout.PAGE_AXIS)); saveMappingFilesCont.add( UIHelper.wrapComponentInPanel(new JLabel(saveMappingHelp, SwingConstants.CENTER))); saveMappingFilesCont.add(Box.createVerticalStrut(10)); saveMappingFilesCont.add( UIHelper.wrapComponentInPanel( UIHelper.createLabel( "" + "<html>" + "Please be aware, the mappings saved are saved on a field by field basis. " + "This means that regardless of what assay you selected to do this/these mappings," + " common fields amongst all assays automatically inherit the mapping information. This has a number" + " of benefits and a number of negative points. " + "<br/>" + "<p>The <strong>main benefit</strong> being that common field mappings are transportable regardless of assay types.<p>" + "<p>The <strong>main problem</strong> is that because fields are saved on a field name basis, duplicate fields like" + " <strong>Protocol REF</strong> columns are not saved. This mechanism for saving will be changed in the next release!</p>" + "<br/>" + "<br/>" + "<br/>" + "</html>", UIHelper.VER_11_PLAIN, UIHelper.GREY_COLOR))); // create selector for mapping files JFileChooser chooser = new JFileChooser(); chooser.setDialogTitle("Choose where and what to save the file as..."); chooser.setApproveButtonText("Select file"); chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); JPanel selectMappingPanel = new JPanel(); selectMappingPanel.setLayout(new BoxLayout(selectMappingPanel, BoxLayout.PAGE_AXIS)); selectMappingPanel.setOpaque(false); // need a jcheckbox to ask users if they wish to use a mapping JPanel useMappingContainer = new JPanel(new BorderLayout()); useMappingContainer.setOpaque(false); final JPanel savedMappingsPanel = new JPanel(); savedMappingsPanel.setLayout(new BoxLayout(savedMappingsPanel, BoxLayout.PAGE_AXIS)); savedMappingsPanel.setOpaque(false); savedMappingsPanel.setVisible(false); final JLabel saveStatusInfo = UIHelper.createLabel("", UIHelper.VER_11_BOLD, UIHelper.GREY_COLOR); final FileSelectionPanel savedMappingsFile = new FileSelectionPanel( "<html>select <strong>where</strong> to save file and <strong>it's name</strong>: </html>", chooser, FileSelectionPanel.SAVE); final JCheckBox useMapping = new JCheckBox("save mapping?"); UIHelper.renderComponent(useMapping, UIHelper.VER_11_BOLD, UIHelper.GREY_COLOR, false); useMapping.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { savedMappingsPanel.setVisible(useMapping.isSelected()); saveStatusInfo.setText(""); } }); useMappingContainer.add(useMapping, BorderLayout.WEST); selectMappingPanel.add(useMappingContainer); // add button to save mappings final JLabel saveMappingsButton = new JLabel(saveMappingsButtonIcon); saveMappingsButton.setVerticalAlignment(JLabel.BOTTOM); saveMappingsButton.addMouseListener( new MouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { saveMappingsButton.setIcon(saveMappingsButtonIconOver); } public void mouseExited(MouseEvent mouseEvent) { saveMappingsButton.setIcon(saveMappingsButtonIcon); } public void mousePressed(MouseEvent mouseEvent) { // save the mapping MappingXMLCreator mappingCreator = new MappingXMLCreator(); try { if (useMapping.isSelected()) { if (!savedMappingsFile.getSelectedFilePath().equals("")) { nextButton.setEnabled(false); backButton.setEnabled(false); mappingCreator.createXMLFile( savedMappingsFile.getSelectedFilePath(), mappingsToSave, assaysToBeDefined); saveStatusInfo.setText("mappings saved successfully..."); } else { saveStatusInfo.setText("please select a file..."); } } } catch (FileNotFoundException e) { e.printStackTrace(); saveStatusInfo.setText("mappings not saved..." + e.getMessage()); } finally { nextButton.setEnabled(true); backButton.setEnabled(true); } } }); final JLayeredPane finalPanel = getGeneralLayout(saveMappingsHeader, breadcrumb7, "", saveMappingFilesCont, getHeight()); final MouseListener[] listeners = new MouseListener[2]; listeners[0] = new MouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { backButton.setIcon(backOver); } public void mouseExited(MouseEvent mouseEvent) { backButton.setIcon(back); } public void mousePressed(MouseEvent mouseEvent) { backButton.setIcon(back); saveStatusInfo.setText(""); SwingUtilities.invokeLater( new Runnable() { public void run() { HistoryComponent hc = previousPage.pop(); setCurrentPage(hc.getDisplayComponent()); assignListenerToLabel(backButton, hc.getListeners()[0]); assignListenerToLabel(nextButton, hc.getListeners()[1]); } }); } }; assignListenerToLabel(backButton, listeners[0]); listeners[1] = new MouseAdapter() { public void mouseEntered(MouseEvent mouseEvent) { nextButton.setIcon(nextOver); } public void mouseExited(MouseEvent mouseEvent) { nextButton.setIcon(next); } public void mousePressed(MouseEvent mouseEvent) { nextButton.setIcon(next); Thread performMappingLogic = new Thread( new Runnable() { public void run() { investigation = MappingLogic.createInvestigation( definitions, assaySelections, dataEntryEnvironment); // now we need to construct the investigation from the defined table // reference objects and the ApplicationManager.assignDataEntryToISASection( investigation, new InvestigationDataEntry(investigation, dataEntryEnvironment)); investigation.setConfigurationCreateWith( ApplicationManager.getCurrentApplicationInstance() .getLoadedConfiguration()); investigation.setLastConfigurationUsed( ApplicationManager.getCurrentApplicationInstance() .getLoadedConfiguration()); dataEntryEnvironment.createGUIFromInvestigation(investigation); previousPage.push(new HistoryComponent(finalPanel, listeners)); ApplicationManager.getCurrentApplicationInstance().hideGlassPane(); ApplicationManager.getCurrentApplicationInstance() .setCurDataEntryPanel(dataEntryEnvironment); ApplicationManager.getCurrentApplicationInstance() .setCurrentPage(dataEntryEnvironment); } }); setCurrentPage(workingProgressScreen); performMappingLogic.start(); } }; JPanel saveMappingsSection = new JPanel(); saveMappingsSection.setLayout(new BoxLayout(saveMappingsSection, BoxLayout.LINE_AXIS)); saveMappingsSection.add(savedMappingsFile); saveMappingsSection.add(Box.createHorizontalStrut(10)); JPanel saveButtonContainer = new JPanel(new BorderLayout()); saveButtonContainer.add(saveMappingsButton, BorderLayout.SOUTH); saveMappingsSection.add(UIHelper.wrapComponentInPanel(saveButtonContainer)); savedMappingsPanel.add(saveMappingsSection); selectMappingPanel.add(savedMappingsPanel); saveMappingFilesCont.add(selectMappingPanel); saveMappingFilesCont.add(UIHelper.wrapComponentInPanel(saveStatusInfo)); assignListenerToLabel(nextButton, listeners[1]); return finalPanel; }
void jbInit() throws Exception { panel1.setLayout(borderLayout1); jPanel1.setBorder(BorderFactory.createEtchedBorder()); jPanel1.setPreferredSize(new Dimension(14, 100)); jPanel1.setLayout(borderLayout2); jPanel2.setBorder(BorderFactory.createEtchedBorder()); jPanel2.setPreferredSize(new Dimension(10, 40)); jPanel2.setLayout(gridBagLayout1); jLabel2.setText("Oznaka banke:"); bPronadji.setPreferredSize(new java.awt.Dimension(80, 27)); bPronadji.setText("Pronadji "); bPronadji.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { bPronadji_actionPerformed(e); } }); bIzlaz.setPreferredSize(new Dimension(80, 27)); bIzlaz.setText("Izlaz"); bIzlaz.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { bIzlaz_actionPerformed(e); } }); txtOznakaBanke.setPreferredSize(new Dimension(120, 21)); getContentPane().add(panel1); panel1.add(jPanel1, BorderLayout.NORTH); { jLabel1 = new JLabel(); jPanel1.add(jLabel1, BorderLayout.CENTER); jLabel1.setText("PREGLED FILIJALA BANKE"); jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); jLabel1.setPreferredSize(new java.awt.Dimension(588, 96)); jLabel1.setHorizontalTextPosition(SwingConstants.CENTER); jLabel1.setHorizontalAlignment(SwingConstants.CENTER); jLabel1.setVerticalAlignment(SwingConstants.TOP); { jLabel3 = new JLabel(); jLabel1.add(jLabel3); jLabel3.setText("NAZIV:"); jLabel3.setBounds(7, 49, 42, 28); jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 12)); } { jLabel4 = new JLabel(); jLabel1.add(jLabel4); jLabel4.setText("ADRESA:"); jLabel4.setBounds(280, 49, 63, 28); jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 12)); } { jLnazivBanke = new JLabel(); jLabel1.add(jLnazivBanke); jLnazivBanke.setBounds(56, 49, 203, 28); } { jLadresaBanke = new JLabel(); jLabel1.add(jLadresaBanke); jLadresaBanke.setBounds(336, 49, 238, 28); } } panel1.add(jPanel2, BorderLayout.SOUTH); jPanel2.add( jLabel2, new GridBagConstraints( 0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); jPanel2.add( txtOznakaBanke, new GridBagConstraints( 1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0, 10, 0, 0), 0, 0)); jPanel2.add( bPronadji, new GridBagConstraints( 5, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 10, 0, 0), 0, 0)); jPanel2.add( bIzlaz, new GridBagConstraints( 5, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 200, 0, 0), 0, 0)); panel1.add(jScrollPane1, BorderLayout.CENTER); jScrollPane1.getViewport().add(tabBanke, null); TModelPrijave tMP = new TModelPrijave(tabBanke); tabBanke.setModel(tMP); ((TModelPrijave) tabBanke.getModel()).initColumns(); }
/** * Create preview component. * * @param comboBox the options. * @return the component. */ private static Component createPreview(final JComboBox comboBox) { final JComponent preview; JLabel noPreview = new JLabel(GuiActivator.getResources().getI18NString("impl.media.configform.NO_PREVIEW")); noPreview.setHorizontalAlignment(SwingConstants.CENTER); noPreview.setVerticalAlignment(SwingConstants.CENTER); preview = createVideoContainer(noPreview); preview.setPreferredSize(new Dimension(WIDTH, 280)); preview.setMaximumSize(new Dimension(WIDTH, 280)); final ActionListener comboBoxListener = new ActionListener() { public void actionPerformed(ActionEvent event) { MediaDevice device = (MediaDevice) comboBox.getSelectedItem(); if ((device != null) && device.equals(videoDeviceInPreview)) return; Exception exception; try { createPreview(device, preview); exception = null; } catch (IOException ex) { exception = ex; } catch (MediaException ex) { exception = ex; } if (exception != null) { logger.error("Failed to create preview for device " + device, exception); device = null; } videoDeviceInPreview = device; } }; comboBox.addActionListener(comboBoxListener); /* * We have to initialize the controls to reflect the configuration * at the time of creating this instance. Additionally, because the * video preview will stop when it and its associated controls * become unnecessary, we have to restart it when the mentioned * controls become necessary again. We'll address the two goals * described by pretending there's a selection in the video combo * box when the combo box in question becomes displayable. */ comboBox.addHierarchyListener( new HierarchyListener() { public void hierarchyChanged(HierarchyEvent event) { if (((event.getChangeFlags() & HierarchyEvent.DISPLAYABILITY_CHANGED) != 0) && comboBox.isDisplayable()) { // let current changes end their execution // and after that trigger action on combobox SwingUtilities.invokeLater( new Runnable() { public void run() { comboBoxListener.actionPerformed(null); } }); } else { if (!comboBox.isDisplayable()) videoDeviceInPreview = null; } } }); return preview; }