List of usage examples for javax.swing JInternalFrame dispose
public void dispose()
From source file:mondrian.gui.Workbench.java
private void openSchemaFrame(File file, boolean newFile) { try {/* w w w.j a va 2 s . c o m*/ setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); if (!newFile) { // check if file not already open if (checkFileOpen(file)) { return; } // check if schema file exists if (!file.exists()) { JOptionPane.showMessageDialog(this, getResourceConverter().getFormattedString("workbench.open.schema.not.found", "{0} File not found.", file.getAbsolutePath()), getResourceConverter().getString("workbench.open.schema.not.found.title", "Alert"), JOptionPane.WARNING_MESSAGE); return; } // check if file is writable if (!file.canWrite()) { JOptionPane.showMessageDialog(this, getResourceConverter().getFormattedString("workbench.open.schema.not.writeable", "{0} is not writeable.", file.getAbsolutePath()), getResourceConverter().getString("workbench.open.schema.not.writeable.title", "Alert"), JOptionPane.WARNING_MESSAGE); return; } checkSchemaFile(file); } final JInternalFrame schemaFrame = new JInternalFrame(); schemaFrame.setTitle(getResourceConverter().getFormattedString("workbench.open.schema.title", "Schema - {0}", file.getName())); getNewJdbcMetadata(); schemaFrame.getContentPane().add(new SchemaExplorer(this, file, jdbcMetaData, newFile, schemaFrame)); String errorOpening = ((SchemaExplorer) schemaFrame.getContentPane().getComponent(0)).getErrMsg(); if (errorOpening != null) { JOptionPane.showMessageDialog(this, getResourceConverter().getFormattedString("workbench.open.schema.error", "Error opening schema - {0}.", errorOpening), getResourceConverter().getString("workbench.open.schema.error.title", "Error"), JOptionPane.ERROR_MESSAGE); schemaFrame.setClosed(true); return; } schemaFrame.setBounds(0, 0, 1000, 650); schemaFrame.setClosable(true); schemaFrame.setIconifiable(true); schemaFrame.setMaximizable(true); schemaFrame.setResizable(true); schemaFrame.setVisible(true); desktopPane.add(schemaFrame, javax.swing.JLayeredPane.DEFAULT_LAYER); schemaFrame.show(); schemaFrame.setMaximum(true); displayWarningOnFailedConnection(); final javax.swing.JMenuItem schemaMenuItem = new javax.swing.JMenuItem(); schemaMenuItem.setText(windowMenuMapIndex++ + " " + file.getName()); schemaMenuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { try { if (schemaFrame.isIcon()) { schemaFrame.setIcon(false); } else { schemaFrame.setSelected(true); } } catch (Exception ex) { LOGGER.error("schemaMenuItem", ex); } } }); windowMenu.add(schemaMenuItem, 0); windowMenu.setEnabled(true); windowMenu.add(jSeparator3, -1); windowMenu.add(cascadeMenuItem, -1); windowMenu.add(tileMenuItem, -1); windowMenu.add(minimizeMenuItem, -1); windowMenu.add(maximizeMenuItem, -1); windowMenu.add(closeAllMenuItem, -1); // add the file details in menu map schemaWindowMap.put(schemaFrame, schemaMenuItem); updateMDXCatalogList(); schemaFrame.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); schemaFrame.addInternalFrameListener(new InternalFrameAdapter() { public void internalFrameClosing(InternalFrameEvent e) { if (schemaFrame.getContentPane().getComponent(0) instanceof SchemaExplorer) { SchemaExplorer se = (SchemaExplorer) schemaFrame.getContentPane().getComponent(0); int response = confirmFrameClose(schemaFrame, se); if (response == 3) { // not dirty if (se.isNewFile()) { se.getSchemaFile().delete(); } // default case for no save and not dirty schemaWindowMap.remove(schemaFrame); updateMDXCatalogList(); schemaFrame.dispose(); windowMenu.remove(schemaMenuItem); } } } }); schemaFrame.setFocusable(true); schemaFrame.addFocusListener(new FocusAdapter() { public void focusGained(FocusEvent e) { if (schemaFrame.getContentPane().getComponent(0) instanceof SchemaExplorer) { SchemaExplorer se = (SchemaExplorer) schemaFrame.getContentPane().getComponent(0); // update view menu based on schemaframe who gained // focus viewXmlMenuItem.setSelected(se.isEditModeXML()); } } public void focusLost(FocusEvent e) { if (schemaFrame.getContentPane().getComponent(0) instanceof SchemaExplorer) { SchemaExplorer se = (SchemaExplorer) schemaFrame.getContentPane().getComponent(0); // update view menu based on viewXmlMenuItem.setSelected(se.isEditModeXML()); } } }); viewXmlMenuItem.setSelected(false); } catch (Exception ex) { LOGGER.error("openSchemaFrame", ex); } finally { setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); } }
From source file:org.docx4all.ui.main.WordMLEditor.java
public void closeAllInternalFrames() { List<JInternalFrame> list = getAllInternalFrames(); //Start from current editor's frame JInternalFrame currentFrame = getCurrentInternalFrame(); list.remove(currentFrame);/*from w w w . ja v a2 s . c o m*/ list.add(0, currentFrame); for (final JInternalFrame iframe : list) { final Runnable disposeRunnable = new Runnable() { public void run() { iframe.dispose(); } }; if (getToolbarStates().isDocumentDirty(iframe)) { try { iframe.setSelected(true); iframe.setIcon(false); } catch (PropertyVetoException exc) { ;//ignore } int answer = showConfirmClosingInternalFrame(iframe, "internalframe.close"); if (answer == JOptionPane.CANCEL_OPTION) { break; } } SwingUtilities.invokeLater(disposeRunnable); } }
From source file:org.docx4all.ui.main.WordMLEditor.java
public void closeInternalFrame(JInternalFrame iframe) { boolean canClose = true; if (getToolbarStates().isDocumentDirty(iframe)) { try {// w ww . j a v a2 s. c om iframe.setSelected(true); iframe.setIcon(false); } catch (PropertyVetoException exc) { ;//ignore } int answer = showConfirmClosingInternalFrame(iframe, "internalframe.close"); canClose = (answer != JOptionPane.CANCEL_OPTION); } if (canClose) { WordMLTextPane editor = SwingUtil.getWordMLTextPane(iframe); if (editor != null) { editor.removeCaretListener(getToolbarStates()); editor.removeFocusListener(getToolbarStates()); editor.setTransferHandler(null); editor.getDocument().removeDocumentListener(getToolbarStates()); WordMLEditorKit editorKit = (WordMLEditorKit) editor.getEditorKit(); editorKit.removeInputAttributeListener(getToolbarStates()); editor.getWordMLEditorKit().deinstall(editor); } iframe.dispose(); } }