void validate() { Container parent = SwingUtilities.getAncestorOfClass(JCollapsiblePaneContainer.class, JCollapsiblePane.this); if (parent != null) { parent = ((JCollapsiblePaneContainer) parent).getValidatingContainer(); } else { parent = getParent(); } if (parent != null) { if (parent instanceof JComponent) { ((JComponent) parent).revalidate(); } else { parent.invalidate(); } parent.doLayout(); parent.repaint(); } }
private void init(EditorPatternButton imgBtn, boolean exact, float similarity, int numMatches) { setTitle(_I("winPatternSettings")); setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); _imgBtn = imgBtn; Point pos = imgBtn.getLocationOnScreen(); Debug.log(4, "pattern window: " + pos); setLocation(pos.x + imgBtn.getWidth(), pos.y); takeScreenshot(); Container c = getContentPane(); c.setLayout(new BorderLayout()); tabPane = new JTabbedPane(); tabPane.setPreferredSize(new Dimension(790, 700)); msgApplied = new JLabel[tabMax]; msgApplied[tabSequence] = new JLabel("..."); paneNaming = new PatternPaneNaming(_imgBtn, msgApplied[tabSequence++]); tabPane.addTab(_I("tabNaming"), paneNaming); msgApplied[tabSequence] = new JLabel("..."); panePreview = createPreviewPanel(); tabSequence++; tabPane.addTab(_I("tabMatchingPreview"), panePreview); msgApplied[tabSequence] = new JLabel("..."); paneTarget = createTargetPanel(); tabSequence++; tabPane.addTab(_I("tabTargetOffset"), paneTarget); c.add(tabPane, BorderLayout.CENTER); c.add(createButtons(), BorderLayout.SOUTH); c.doLayout(); pack(); try { _screenshot.setParameters(_imgBtn.getFilename(), exact, similarity, numMatches); } catch (Exception e) { Debug.error(me + "Problem while setting up pattern pane\n%s", e.getMessage()); } setDirty(false); setVisible(true); }