List of usage examples for javax.swing JSeparator JSeparator
public JSeparator()
From source file:phex.gui.dialogs.LogBufferDialog.java
/** * //w w w .j a va 2 s .c o m */ private void prepareComponent() { CloseEventHandler closeEventHandler = new CloseEventHandler(); addWindowListener(closeEventHandler); Container contentPane = getContentPane(); contentPane.setLayout(new BorderLayout()); JPanel contentPanel = new JPanel(); //JPanel contentPanel = new FormDebugPanel(); contentPane.add(contentPanel, BorderLayout.CENTER); CellConstraints cc = new CellConstraints(); FormLayout layout = new FormLayout("4dlu, fill:d:grow, 4dlu", // columns "p, p, 2dlu, fill:p:grow, 4dlu, p, 4dlu"); //row PanelBuilder contentPB = new PanelBuilder(layout, contentPanel); DialogBanner banner = new DialogBanner(Localizer.getString("LogBufferDialog_Log"), Localizer.getString("LogBufferDialog_DisplayLog")); contentPB.add(banner, cc.xywh(1, 1, 3, 1)); contentPB.add(new JSeparator(), cc.xywh(1, 2, 3, 1)); JTextArea logArea = new JTextArea(40, 100); logArea.setEditable(false); contentPB.add(new JScrollPane(logArea), cc.xy(2, 4)); JButton closeBtn = new JButton(Localizer.getString("Close")); closeBtn.addActionListener(closeEventHandler); contentPB.add(ButtonBarFactory.buildCloseBar(closeBtn), cc.xy(2, 6)); StringBuffer textBuffer = new StringBuffer(); Iterator iterator = logEntries.iterator(); while (iterator.hasNext()) { LogRecord record = (LogRecord) iterator.next(); textBuffer.append(dateFormat.format(new Date(record.getTimestamp()))).append("::") .append(record.getMessage()).append(SystemUtils.LINE_SEPARATOR); } logArea.setText(textBuffer.toString()); //logArea.setCaretPosition(0); pack(); setLocationRelativeTo(getParent()); }
From source file:phex.gui.dialogs.NewDownloadDialog.java
/** * // www . j ava 2s . c o m */ private void prepareComponent() { addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent evt) { closeDialog(); } }); CellConstraints cc = new CellConstraints(); Container contentPane = getContentPane(); contentPane.setLayout(new BorderLayout()); JPanel contentPanel = new JPanel(); //JPanel contentPanel = new FormDebugPanel(); contentPane.add(contentPanel, BorderLayout.CENTER); FormLayout layout = new FormLayout("2dlu, fill:d:grow, 2dlu", // columns "p, p, 2dlu, p, 6dlu, p, 3dlu, p 6dlu"); //row PanelBuilder builder = new PanelBuilder(layout, contentPanel); DialogBanner banner = new DialogBanner(Localizer.getString("NewDownload_BannerHeader"), Localizer.getString("NewDownload_BannerSubHeader")); builder.add(banner, cc.xywh(1, 1, 3, 1)); builder.add(new JSeparator(), cc.xywh(1, 2, 3, 1)); downloadTabPane = new JTabbedPane(); JPanel urlPanel = createByUrlPanel(); downloadTabPane.addTab(Localizer.getString("NewDownload_ByUrl"), urlPanel); JPanel magmaPanel = createByMagmaPanel(); downloadTabPane.addTab(Localizer.getString("NewDownload_ByMagmaFile"), magmaPanel); JPanel rssPanel = createByRSSPanel(); downloadTabPane.addTab(Localizer.getString("NewDownload_ByRSSFile"), rssPanel); builder.add(downloadTabPane, cc.xy(2, 4)); builder.add(new JSeparator(), cc.xywh(1, 6, 3, 1)); JButton cancelBtn = new JButton(Localizer.getString("Cancel")); cancelBtn.addActionListener(new CancelBtnListener()); JButton okBtn = new JButton(Localizer.getString("OK")); okBtn.addActionListener(new OkBtnListener()); JPanel btnPanel = ButtonBarFactory.buildOKCancelBar(okBtn, cancelBtn); builder.add(btnPanel, cc.xy(2, 8)); pack(); setLocationRelativeTo(getParent()); }
From source file:phex.gui.dialogs.UpdateNotificationDialog.java
private void prepareComponent() { CloseEventHandler closeEventHandler = new CloseEventHandler(); addWindowListener(closeEventHandler); Container contentPane = getContentPane(); contentPane.setLayout(new BorderLayout()); JPanel contentPanel = new JPanel(); //JPanel contentPanel = new FormDebugPanel(); contentPane.add(contentPanel, BorderLayout.CENTER); CellConstraints cc = new CellConstraints(); FormLayout layout = new FormLayout("2dlu, fill:d:grow, 2dlu", // columns "p, p, 16dlu, fill:p:grow, 16dlu," + // rows "p, 2dlu, p 4dlu"); //btn rows PanelBuilder contentPB = new PanelBuilder(layout, contentPanel); int columnCount = layout.getColumnCount(); int rowCount = layout.getRowCount(); DialogBanner banner = new DialogBanner(Localizer.getString("UpdateNotification_BannerHeader"), Localizer.getString("UpdateNotification_BannerSubHeader")); contentPB.add(banner, cc.xywh(1, 1, columnCount, 1)); contentPB.add(new JSeparator(), cc.xywh(1, 2, columnCount, 1)); JPanel notifyPanel = buildNotificationPanel(); contentPB.add(notifyPanel, cc.xy(2, 4, "center, center")); contentPB.add(new JSeparator(), cc.xywh(1, rowCount - 3, columnCount, 1)); JButton closeBtn = new JButton(Localizer.getString("Close")); closeBtn.addActionListener(closeEventHandler); JButton downloadBtn = new JButton(Localizer.getString("Download")); downloadBtn.setDefaultCapable(true); downloadBtn.setRequestFocusEnabled(true); downloadBtn.addActionListener(new DownloadBtnListener()); JPanel btnPanel = ButtonBarFactory.buildOKCancelBar(downloadBtn, closeBtn); contentPB.add(btnPanel, cc.xywh(2, rowCount - 1, columnCount - 2, 1)); setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); getRootPane().setDefaultButton(downloadBtn); pack();/*w ww .j a v a 2 s . c o m*/ setLocationRelativeTo(getParent()); }
From source file:picocash.dialogs.DefaultPicocashDialog.java
protected void initGui() { addWindowListener(new WindowAdapter() { @Override// www. j a v a 2 s. c o m public void windowClosing(WindowEvent e) { cancel(); } }); FormLayout layout = new FormLayout("2dlu,p:g,2dlu,30dlu,2dlu,30dlu,2dlu", "2dlu,FILL:p:g,2dlu,p,2dlu,p,2dlu"); CellConstraints cc = new CellConstraints(); setLayout(layout); add(getComponentsToDisplay(), cc.xyw(2, 2, 5)); add(new JSeparator(), cc.xyw(2, 4, 5)); JXButton cancelButton = new JXButton(getAction("cancel")); JXButton okButton = new JXButton(getAction("ok")); add(cancelButton, cc.xy(4, 6)); add(okButton, cc.xy(6, 6)); }
From source file:picocash.dialogs.PicocashManageDialog.java
@Override protected JComponent getComponentsToDisplay() { JPanel panel = new JPanel(); FormLayout layout = new FormLayout("100dlu:grow,2dlu,30dlu,2dlu,30dlu", "p,2dlu,p,2dlu,p,2dlu,p,2dlu,p,2dlu,FILL:150dlu:grow,2dlu,p,2dlu,p"); CellConstraints cc = new CellConstraints(); panel.setLayout(layout);//from w ww.j a v a 2s .com nameTF = new JTextField(""); nameTF.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { add(); } }); panel.setLayout(layout); panel.add(nameTF, cc.xyw(1, 1, 3)); panel.add(iconsCB, cc.xyw(1, 3, 3)); panel.add(new JButton(getAction("add")), cc.xywh(5, 1, 1, 3)); panel.add(new JSeparator(), cc.xyw(1, 5, 5)); panel.add(new JButton(getAction("edit")), cc.xy(5, 7)); panel.add(new JButton(getAction("remove")), cc.xy(5, 9)); panel.add(getManagingComponent(), cc.xywh(1, 7, 3, 5)); return panel; }
From source file:pl.kotcrab.arget.gui.MainWindow.java
private void createMenuBars() { JMenuBar menuBar = new JMenuBar(); menuBar.setBorder(new EmptyBorder(0, 0, 0, 0)); setJMenuBar(menuBar);/*from w w w . java2 s . com*/ JMenu argetMenu = new JMenu("Arget"); serversMenu = new JMenu("Servers"); JMenu contactsMenu = new JMenu("Contacts"); JMenu viewMenu = new JMenu("View"); JMenu helpMenu = new JMenu("Help"); menuBar.add(argetMenu); menuBar.add(serversMenu); menuBar.add(contactsMenu); menuBar.add(viewMenu); menuBar.add(helpMenu); argetMenu.add(new MenuItem("Options...", MenuEventType.ARGET_EDIT_OPTIONS)); argetMenu.add(new JSeparator()); argetMenu.add(new MenuItem("Logout", MenuEventType.ARGET_LOGOUT)); argetMenu.add(new MenuItem("Exit", MenuEventType.ARGET_EXIT)); serversMenu.add(new MenuItem("Add Server...", MenuEventType.SERVERS_ADD)); serversMenu.add(new MenuItem("Manage Servers...", MenuEventType.SERVERS_MANAGE)); serversMenu.add(new MenuItem("Disconnect", MenuEventType.SERVERS_DISCONNECT)); serversMenu.add(new JSeparator()); viewMenu.add(new MenuItem("Show Home Screen", MenuEventType.VIEW_SHOW_HOME)); viewMenu.add(new MenuItem("Show Log", MenuEventType.VIEW_SHOW_LOG)); contactsMenu.add(new MenuItem("Show My Public Key...", MenuEventType.CONTACTS_SHOW_PUBLIC_KEY)); contactsMenu.add(new MenuItem("Add Contact...", MenuEventType.CONTACTS_ADD)); contactsMenu.add(new JSeparator()); contactsMenu.add(new MenuItem("Refresh list", MenuEventType.CONTACTS_REFRESH)); helpMenu.add(new MenuItem("About Arget", MenuEventType.HELP_ABOUT)); addServersFromProfile(); }
From source file:pl.otros.logview.exceptionshandler.ShowErrorDialogExceptionHandler.java
protected JComponent createDialogView() { JPanel jPanel = new JPanel(new MigLayout()); JLabel label = new JLabel("Do you want to send error report?"); label.setFont(label.getFont().deriveFont(Font.BOLD)); jPanel.add(label, "span 4, wrap, center"); jPanel.add(new JLabel("Comment:")); commentTextArea = new JTextArea(10, 30); commentTextArea.setWrapStyleWord(true); commentTextArea.setLineWrap(true);/*w ww.j a v a 2s .c o m*/ JScrollPane jScrollPane = new JScrollPane(commentTextArea, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); jPanel.add(jScrollPane, "span 3, wrap"); jPanel.add(new JLabel("Email (optional):")); emailTextField = new JTextField(30); jPanel.add(emailTextField, "span 3, wrap"); jPanel.add(new JSeparator(), "span 4, wrap, grow"); checkBoxUseProxy = new JCheckBox("Use HTTP proxy"); proxyTf = new JTextField(); proxyPortModel = new SpinnerNumberModel(80, 1, 256 * 256 - 1, 1); proxyUser = new JTextField(); proxyPasswordField = new JPasswordField(); proxySpinner = new JSpinner(proxyPortModel); jPanel.add(checkBoxUseProxy, "wrap"); labelProxyHost = new JLabel("Proxy address"); jPanel.add(labelProxyHost); jPanel.add(proxyTf, "wrap, span 3, grow"); labelProxyPort = new JLabel("Proxy port"); jPanel.add(labelProxyPort); jPanel.add(proxySpinner, "wrap"); labelProxyUser = new JLabel("User"); jPanel.add(labelProxyUser); jPanel.add(proxyUser, "grow"); labelProxyPassword = new JLabel("Password"); jPanel.add(labelProxyPassword); jPanel.add(proxyPasswordField, "grow"); checkBoxUseProxy.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { setProxyEnabled(checkBoxUseProxy.isSelected()); } }); DataConfiguration c = otrosApplication.getConfiguration(); proxyTf.setText(c.getString(ConfKeys.HTTP_PROXY_HOST, "")); proxyUser.setText(c.getString(ConfKeys.HTTP_PROXY_USER, "")); proxyPortModel.setValue(Integer.valueOf(c.getInt(ConfKeys.HTTP_PROXY_PORT, 80))); boolean useProxy = c.getBoolean(ConfKeys.HTTP_PROXY_USE, false); checkBoxUseProxy.setSelected(useProxy); setProxyEnabled(useProxy); return jPanel; }
From source file:pl.otros.logview.gui.LogViewMainFrame.java
private void initMenu() { JMenuBar menuBar = getJMenuBar(); if (menuBar == null) { menuBar = new JMenuBar(); setJMenuBar(menuBar);/*from ww w . ja v a 2 s . c om*/ } menuBar.removeAll(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); JLabel labelOpenLog = new JLabel("Open log", Icons.FOLDER_OPEN, SwingConstants.LEFT); Font menuGroupFont = labelOpenLog.getFont().deriveFont(13f).deriveFont(Font.BOLD); labelOpenLog.setFont(menuGroupFont); fileMenu.add(labelOpenLog); JMenuItem openAutoDetectLog = new JMenuItem("Open log with autodetect type"); openAutoDetectLog.addActionListener(new ImportLogWithAutoDetectedImporterActionListener(otrosApplication)); openAutoDetectLog.setMnemonic(KeyEvent.VK_O); openAutoDetectLog.setIcon(Icons.WIZARD); fileMenu.add(openAutoDetectLog); JMenuItem tailAutoDetectLog = new JMenuItem("Tail log with autodetect type"); tailAutoDetectLog.addActionListener(new TailLogWithAutoDetectActionListener(otrosApplication)); tailAutoDetectLog.setMnemonic(KeyEvent.VK_T); tailAutoDetectLog.setIcon(Icons.ARROW_REPEAT); fileMenu.add(tailAutoDetectLog); fileMenu.add(new TailMultipleFilesIntoOneView(otrosApplication)); fileMenu.add(new ConnectToSocketHubAppenderAction(otrosApplication)); fileMenu.add(new JSeparator()); JLabel labelLogInvestigation = new JLabel("Log investigation", SwingConstants.LEFT); labelLogInvestigation.setFont(menuGroupFont); fileMenu.add(labelLogInvestigation); fileMenu.add(new OpenLogInvestigationAction(otrosApplication)); JMenuItem saveLogsInvest = new JMenuItem(new SaveLogInvestigationAction(otrosApplication)); enableDisableComponetsForTabs.addComponet(saveLogsInvest); fileMenu.add(saveLogsInvest); fileMenu.add(new JSeparator()); LogImporter[] importers = new LogImporter[0]; importers = logImportersContainer.getElements().toArray(importers); for (LogImporter logImporter : importers) { JMenuItem openLog = new JMenuItem("Open " + logImporter.getName() + " log"); openLog.addActionListener(new ImportLogWithGivenImporterActionListener(otrosApplication, logImporter)); if (logImporter.getKeyStrokeAccelelator() != null) { openLog.setAccelerator(KeyStroke.getKeyStroke(logImporter.getKeyStrokeAccelelator())); } if (logImporter.getMnemonic() > 0) { openLog.setMnemonic(logImporter.getMnemonic()); } Icon icon = logImporter.getIcon(); if (icon != null) { openLog.setIcon(icon); } fileMenu.add(openLog); } fileMenu.add(new JSeparator()); JLabel labelTailLog = new JLabel("Tail log [from begging of file]", Icons.ARROW_REPEAT, SwingConstants.LEFT); labelTailLog.setFont(menuGroupFont); fileMenu.add(labelTailLog); for (LogImporter logImporter : importers) { JMenuItem openLog = new JMenuItem("Tail " + logImporter.getName() + " log"); openLog.addActionListener(new TailLogActionListener(otrosApplication, logImporter)); if (logImporter.getKeyStrokeAccelelator() != null) { openLog.setAccelerator(KeyStroke.getKeyStroke(logImporter.getKeyStrokeAccelelator())); } if (logImporter.getMnemonic() > 0) { openLog.setMnemonic(logImporter.getMnemonic()); } Icon icon = logImporter.getIcon(); if (icon != null) { openLog.setIcon(icon); } fileMenu.add(openLog); } JMenuItem exitMenuItem = new JMenuItem("Exit", 'e'); exitMenuItem.setIcon(Icons.TURN_OFF); exitMenuItem.setAccelerator(KeyStroke.getKeyStroke("control F4")); exitAction = new ExitAction(this); exitMenuItem.addActionListener(exitAction); fileMenu.add(new JSeparator()); fileMenu.add(exitMenuItem); JMenu toolsMenu = new JMenu("Tools"); toolsMenu.setMnemonic(KeyEvent.VK_T); JMenuItem closeAll = new JMenuItem(new CloseAllTabsAction(otrosApplication)); enableDisableComponetsForTabs.addComponet(closeAll); ArrayList<SocketLogReader> logReaders = new ArrayList<SocketLogReader>(); toolsMenu.add(new JMenuItem(new StartSocketListener(otrosApplication, logReaders))); toolsMenu.add(new JMenuItem(new StopAllSocketListeners(otrosApplication, logReaders))); toolsMenu.add(new ShowMarkersEditor(otrosApplication)); toolsMenu.add(new ShowLog4jPatternParserEditor(otrosApplication)); toolsMenu.add(new ShowMessageColorizerEditor(otrosApplication)); toolsMenu.add(new ShowLoadedPlugins(otrosApplication)); toolsMenu.add(new ShowOlvLogs(otrosApplication)); toolsMenu.add(new OpenPreferencesAction(otrosApplication)); toolsMenu.add(closeAll); JMenu pluginsMenu = new JMenu("Plugins"); otrosApplication.setPluginsMenu(pluginsMenu); JMenu helpMenu = new JMenu("Help"); JMenuItem about = new JMenuItem("About"); AboutAction action = new AboutAction(otrosApplication); action.putValue(Action.NAME, "About"); about.setAction(action); helpMenu.add(about); helpMenu.add(new GoToDonatePageAction(otrosApplication)); JMenuItem checkForNewVersion = new JMenuItem(new CheckForNewVersionAction(otrosApplication)); helpMenu.add(checkForNewVersion); helpMenu.add(new GettingStartedAction(otrosApplication)); menuBar.add(fileMenu); menuBar.add(toolsMenu); menuBar.add(pluginsMenu); menuBar.add(helpMenu); }
From source file:pl.otros.logview.gui.LogViewMainFrame.java
private void initExperimental() { JMenu menu = new JMenu("Experimental"); menu.add(new JLabel("Experimental features, can have bugs", Icons.LEVEL_WARNING, SwingConstants.LEADING)); menu.add(new JSeparator()); boolean storeOnDisk = StringUtils.equalsIgnoreCase(System.getProperty("cacheEvents"), "true"); JRadioButtonMenuItem radioButtonMemory = new JRadioButtonMenuItem("Memory - faster, more memory required", !storeOnDisk);/*w ww. ja v a 2 s . co m*/ radioButtonMemory.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.setProperty("cacheEvents", Boolean.FALSE.toString()); } }); JRadioButtonMenuItem radioButtonDisk = new JRadioButtonMenuItem( "Disk with caching - slower, less memory required", storeOnDisk); radioButtonDisk.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.setProperty("cacheEvents", Boolean.TRUE.toString()); } }); final ButtonGroup buttonGroup = new ButtonGroup(); buttonGroup.add(radioButtonDisk); buttonGroup.add(radioButtonMemory); menu.add(new JSeparator(JSeparator.VERTICAL)); menu.add(new JLabel("Keep parsed log events store:")); menu.add(radioButtonMemory); menu.add(radioButtonDisk); final JCheckBox soapFormatterRemoveMultirefsCbx = new JCheckBox(); soapFormatterRemoveMultirefsCbx .setSelected(configuration.getBoolean(ConfKeys.FORMATTER_SOAP_REMOVE_MULTIREFS, false)); AbstractAction enableMultiRefRemoveFeature = new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { SoapMessageFormatter soapMessageFormatter = (SoapMessageFormatter) AllPluginables.getInstance() .getMessageFormatters().getElement(SoapMessageFormatter.class.getName()); soapMessageFormatter.setRemoveMultiRefs(soapFormatterRemoveMultirefsCbx.isSelected()); configuration.setProperty(ConfKeys.FORMATTER_SOAP_REMOVE_MULTIREFS, soapFormatterRemoveMultirefsCbx.isSelected()); } }; enableMultiRefRemoveFeature.putValue(Action.NAME, "Remove mulitRefs from SOAP messages"); soapFormatterRemoveMultirefsCbx.setAction(enableMultiRefRemoveFeature); enableMultiRefRemoveFeature.actionPerformed(null); final JCheckBox soapFormatterRemoveXsiForNilElementsCbx = new JCheckBox(); soapFormatterRemoveXsiForNilElementsCbx .setSelected(configuration.getBoolean(FORMATTER_SOAP_REMOVE_XSI_FOR_NIL, false)); AbstractAction soapFormatterRemoveXsiFromNilAction = new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { SoapMessageFormatter soapMessageFormatter = (SoapMessageFormatter) AllPluginables.getInstance() .getMessageFormatters().getElement(SoapMessageFormatter.class.getName()); soapMessageFormatter .setRemoveXsiForNilElements(soapFormatterRemoveXsiForNilElementsCbx.isSelected()); configuration.setProperty(FORMATTER_SOAP_REMOVE_XSI_FOR_NIL, soapFormatterRemoveXsiForNilElementsCbx.isSelected()); } }; soapFormatterRemoveXsiFromNilAction.putValue(Action.NAME, "Remove xsi for for NIL elements from SOAP messages"); soapFormatterRemoveXsiForNilElementsCbx.setAction(soapFormatterRemoveXsiFromNilAction); soapFormatterRemoveXsiFromNilAction.actionPerformed(null); menu.add(soapFormatterRemoveMultirefsCbx); menu.add(soapFormatterRemoveXsiForNilElementsCbx); getJMenuBar().add(menu); QueryFilter queryFilter = new QueryFilter(); allPluginables.getLogFiltersContainer().addElement(queryFilter); JButton b = new JButton("Throw exception"); b.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (System.currentTimeMillis() % 2 == 0) { throw new RuntimeException("Exception swing action!"); } else { new Thread(new Runnable() { @Override public void run() { throw new RuntimeException("Exception from tread!"); } }).start(); } } }); menu.add(b); }
From source file:pl.otros.logview.gui.LogViewPanel.java
private JPopupMenu initTableContextMenu() { JPopupMenu menu = new JPopupMenu("Menu"); JMenuItem mark = new JMenuItem("Mark selected rows"); mark.addActionListener(new MarkRowAction(otrosApplication)); JMenuItem unmark = new JMenuItem("Unmark selected rows"); unmark.addActionListener(new UnMarkRowAction(otrosApplication)); JMenuItem autoResizeMenu = new JMenu("Table auto resize mode"); autoResizeMenu.setIcon(Icons.TABLE_RESIZE); JMenuItem autoResizeSubsequent = new JMenuItem("Subsequent columns"); autoResizeSubsequent/*from w ww . j av a 2 s. c om*/ .addActionListener(new TableResizeActionListener(table, JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS)); JMenuItem autoResizeLast = new JMenuItem("Last column"); autoResizeLast.addActionListener(new TableResizeActionListener(table, JTable.AUTO_RESIZE_LAST_COLUMN)); JMenuItem autoResizeNext = new JMenuItem("Next column"); autoResizeNext.addActionListener(new TableResizeActionListener(table, JTable.AUTO_RESIZE_NEXT_COLUMN)); JMenuItem autoResizeAll = new JMenuItem("All columns"); autoResizeAll.addActionListener(new TableResizeActionListener(table, JTable.AUTO_RESIZE_ALL_COLUMNS)); JMenuItem autoResizeOff = new JMenuItem("Auto resize off"); autoResizeOff.addActionListener(new TableResizeActionListener(table, JTable.AUTO_RESIZE_OFF)); autoResizeMenu.add(autoResizeSubsequent); autoResizeMenu.add(autoResizeOff); autoResizeMenu.add(autoResizeNext); autoResizeMenu.add(autoResizeLast); autoResizeMenu.add(autoResizeAll); JMenu removeMenu = new JMenu("Remove log events"); removeMenu.setFont(menuLabelFont); removeMenu.setIcon(Icons.BIN); JLabel removeLabel = new JLabel("Remove by:"); removeLabel.setFont(menuLabelFont); removeMenu.add(removeLabel); Map<String, Set<String>> propKeyValue = getPropertiesOfSelectedLogEvents(); for (AcceptCondition acceptCondition : acceptConditionList) { removeMenu.add(new JMenuItem(new RemoveByAcceptanceCriteria(acceptCondition, otrosApplication))); } for (String propertyKey : propKeyValue.keySet()) { for (String propertyValue : propKeyValue.get(propertyKey)) { PropertyAcceptCondition propAcceptCondition = new PropertyAcceptCondition(propertyKey, propertyValue); removeMenu .add(new JMenuItem(new RemoveByAcceptanceCriteria(propAcceptCondition, otrosApplication))); } } menu.add(new JSeparator()); JLabel labelMarkingRows = new JLabel("Marking/unmarking rows"); labelMarkingRows.setFont(menuLabelFont); menu.add(labelMarkingRows); menu.add(new JSeparator()); menu.add(mark); menu.add(unmark); JMenu[] markersMenu = getAutomaticMarkersMenu(); menu.add(markersMenu[0]); menu.add(markersMenu[1]); menu.add(new ClearMarkingsAction(otrosApplication)); menu.add(new JSeparator()); JLabel labelQuickFilters = new JLabel("Quick filters"); labelQuickFilters.setFont(menuLabelFont); menu.add(labelQuickFilters); menu.add(new JSeparator()); menu.add(focusOnThisThreadAction); menu.add(focusOnEventsAfter); menu.add(focusOnEventsBefore); menu.add(focusOnSelectedClassesAction); menu.add(ignoreSelectedEventsClasses); menu.add(focusOnSelectedLoggerNameAction); menu.add(showCallHierarchyAction); for (String propertyKey : propKeyValue.keySet()) { for (String propertyValue : propKeyValue.get(propertyKey)) { menu.add(new FocusOnSelectedPropertyAction(propertyFilter, propertyFilterPanel.getEnableCheckBox(), otrosApplication, propertyKey, propertyValue)); } } menu.add(new JSeparator()); menu.add(removeMenu); menu.add(new JSeparator()); JLabel labelTableOptions = new JLabel("Table options"); labelTableOptions.setFont(menuLabelFont); menu.add(labelTableOptions); menu.add(new JSeparator()); menu.add(autoResizeMenu); menu.add(new JSeparator()); List<MenuActionProvider> menuActionProviders = otrosApplication.getLogViewPanelMenuActionProvider(); for (MenuActionProvider menuActionProvider : menuActionProviders) { try { List<OtrosAction> actions = menuActionProvider.getActions(otrosApplication, this); if (actions == null) { continue; } for (OtrosAction action : actions) { menu.add(action); } } catch (Exception e) { LOGGER.log(Level.SEVERE, "Cant get action from from provider " + menuActionProvider, e); } } return menu; }