⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resultsmenubar.java

📁 emboss的linux版本的源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    colourMenu.add(cm);    add(colourMenu);      // saving to the remote file system    if(addRemoteSaveMenu)    {      saveToRemoteFile.addActionListener(new ActionListener()      {        public void actionPerformed(ActionEvent e)        {          JTextComponent jtc = getJTextComponentAt(rtb,rtb.getSelectedIndex());                String tabTitle = rtb.getTitleAt(rtb.getSelectedIndex());          if(org.emboss.jemboss.Jemboss.withSoap)          {            Vector params = new Vector();            params.addElement(project);            params.addElement(tabTitle);            // remove return characters for Win machines            params.addElement(jtc.getText().replace('\r',' '));            try            {              PrivateRequest gReq = new PrivateRequest(mysettings,                                      "save_project_file",params);            }            catch(JembossSoapException jse){}          }          else          {            JembossServer js = new JembossServer(mysettings.getResultsHome());            js.save_project_file(project, tabTitle,                                  jtc.getText().replace('\r',' '));          }        }      });    }     //Font size selection    String sizes[] = {"10", "12", "14", "16", "18"};    final JComboBox fntSize = new JComboBox(sizes);    fntSize.setSelectedItem("12");    fntSize.setPreferredSize(fntSize.getMinimumSize());    fntSize.setMaximumSize(fntSize.getMinimumSize());    fntSize.setEditable(true);    toolBar.add(fntSize);    fntSize.addActionListener(new ActionListener()    {      public void actionPerformed(ActionEvent e)      {        JTextPane jtp = getSelectedJTextPane(rtb);        if(jtp != null)        {          Font fnt = jtp.getFont();          try          {            String fsize = (String)fntSize.getSelectedItem();            if(fsize.indexOf(".") > -1)              fsize = fsize.substring(0,fsize.indexOf("."));            fnt = new Font("monospaced",fnt.getStyle(),                           Integer.parseInt(fsize));            jtp.setFont(fnt);          } catch(NumberFormatException nfe){}        }      }    });    //Font style    String styles[] = {"Plain","Bold","Italic"};    final JComboBox cbFonts = new JComboBox(styles);    cbFonts.setMaximumSize(cbFonts.getPreferredSize());    cbFonts.setToolTipText("Available styles");    cbFonts.addActionListener(new ActionListener()    {      public void actionPerformed(ActionEvent e)      {        int index = cbFonts.getSelectedIndex();        if (index < 0)          return;        JTextPane jtp = getSelectedJTextPane(rtb);        if(jtp == null)          return;        Font fnt = jtp.getFont();        if(index == 0)          fnt = fnt.deriveFont(Font.PLAIN);        else if(index == 1)          fnt = fnt.deriveFont(Font.BOLD);        else          fnt = fnt.deriveFont(Font.ITALIC);        jtp.setFont(fnt);      }    });    toolBar.add(cbFonts);  }  /**  *  * Sets up a results menu bar with save and close  * @param frame                frame containing the results  * @param addRemoteSaveMenu    true to add a remote save menu  *  */  public void setResultsMenuBar(final JFrame frame, boolean addRemoteSaveMenu)  {    this.frame = frame;    add(Box.createRigidArea(new Dimension(5,24)));    JMenu fileMenu = new JMenu("File");    fileMenu.setMnemonic(KeyEvent.VK_F);    if(addRemoteSaveMenu)    {      if(org.emboss.jemboss.Jemboss.withSoap)        saveToRemoteFile = new JMenuItem("Save to Server File");      else        saveToRemoteFile = new JMenuItem("Save Back to Project Directory");      fileMenu.add(saveToRemoteFile);    }    saveToLocalFile = new JMenuItem("Save to Local File...");    fileMenu.add(saveToLocalFile);    fileMenu.addSeparator();    // undo - redo    fileMenu.add(undo);    undo.setEnabled(false);    undo.setAccelerator(KeyStroke.getKeyStroke(                KeyEvent.VK_U, ActionEvent.CTRL_MASK));    fileMenu.add(redo);    redo.setEnabled(false);    redo.setAccelerator(KeyStroke.getKeyStroke(                KeyEvent.VK_R, ActionEvent.CTRL_MASK));    fileMenu.addSeparator();    // close    JMenuItem resFileMenuExit = new JMenuItem("Close");    resFileMenuExit.setAccelerator(KeyStroke.getKeyStroke(                    KeyEvent.VK_E, ActionEvent.CTRL_MASK));    resFileMenuExit.addActionListener(new ActionListener()    {      public void actionPerformed(ActionEvent e)      {        frame.setVisible(false);      }    });    fileMenu.add(resFileMenuExit);    add(fileMenu);    frame.setJMenuBar(this);    frame.getContentPane().add(toolBar, BorderLayout.NORTH);  }  /**  *  * Update the undo and redo menus and enable or disable  * dependent on the editing event that proceeded.  *  */  private void updateMenu()  {    undo.setText(undoManager.getUndoPresentationName());    redo.setText(undoManager.getRedoPresentationName());    undo.setEnabled(undoManager.canUndo());    redo.setEnabled(undoManager.canRedo());  }  /**  *  * Get the tool bar  * @return 	tool bar  *  */  protected JToolBar getToolBar()  {    return toolBar;  }  /**  *  * Save to a local file  * @param cwd		current working directory  * @param fileSelected	selected file  * @param tabTitle	title of tab pane to save content of  * @param h		hash table  *  */  private void fileSave(String cwd, String fileSelected,                         String tabTitle, Hashtable h)  {    fileSave(cwd,fileSelected,h.get(tabTitle));  }  /**  *  * Save to a local file  * @param cwd          current working directory  * @param fileSelected selected file  * @param fileContents contents to save  *  */  private void fileSave(String cwd, String fileSelected,                        Object fileContents)  {    String fs = new String(System.getProperty("file.separator"));    FileSave fsave = new FileSave(new File(cwd + fs + fileSelected));    if(fsave.doWrite())      fsave.fileSaving(fileContents);    if(!fsave.fileExists())    {      org.emboss.jemboss.Jemboss.tree.addObject(fileSelected,cwd,null);      DragTree ltree = SetUpMenuBar.getLocalDragTree();      if(ltree!=null)        ltree.addObject(fileSelected,cwd,null);    }  }  /**  *  * Get the menu bar  * @return 	menu bar  *  */ //public JMenuBar getJMenuBar()//{//  return this;//}  /**  *   * Get selected text pane from tabbed pane  * @param rtb	tabbed pane  * @return	text pane  *  */  private JTextPane getSelectedJTextPane(JTabbedPane rtb)  {    try    {      JScrollPane jsp = (JScrollPane)(rtb.getSelectedComponent());      return (JTextPane)(jsp.getViewport().getView());    }    catch(ClassCastException cce)     {      try    //standalone results      {        JPanel panel = (JPanel)rtb.getSelectedComponent();        JScrollPane jsp = (JScrollPane)(panel.getComponent(0));        ScrollPanel panel2 = (ScrollPanel)jsp.getViewport().getView();        return (JTextPane)panel2.getComponent(0);      }       catch(ClassCastException cce2)       {      }    }    return null;  }  /**  *  * Get text component from a tabbed pane  * @param rtb		tabbed pane  * @param index	tab index  * @return		text component  *  */  private JTextComponent getJTextComponentAt(JTabbedPane rtb, int index)  {    try    {      JScrollPane jsp = (JScrollPane)(rtb.getComponentAt(index));      return (JTextComponent)(jsp.getViewport().getView());    } catch(ClassCastException cce)     {      try    //standalone results      {        JPanel panel = (JPanel)rtb.getComponentAt(index);        JScrollPane jsp = (JScrollPane)(panel.getComponent(0));        ScrollPanel panel2 = (ScrollPanel)jsp.getViewport().getView();        return (JTextPane)panel2.getComponent(0);      }      catch(ClassCastException cce2)      {      }    }        return null;  }  }/**** Colour pallette menu**/class ColorMenu extends JMenu{  protected Border unselectedBorder;  protected Border selectedBorder;  protected Border activeBorder;  protected Hashtable panes;  protected ColorPane selected;  public ColorMenu(String name)   {    super(name);    unselectedBorder = new CompoundBorder(      new MatteBorder(1, 1, 1, 1, getBackground()),      new BevelBorder(BevelBorder.LOWERED,       Color.white, Color.gray));    selectedBorder = new CompoundBorder(      new MatteBorder(2, 2, 2, 2, Color.red),      new MatteBorder(1, 1, 1, 1, getBackground()));    activeBorder = new CompoundBorder(      new MatteBorder(2, 2, 2, 2, Color.blue),      new MatteBorder(1, 1, 1, 1, getBackground()));            JPanel p = new JPanel();    p.setBorder(new EmptyBorder(5, 5, 5, 5));    p.setLayout(new GridLayout(8, 8));    panes = new Hashtable();    int[] values = new int[] { 0, 128, 192, 255 };    for (int r=0; r<values.length; r++)     {      for (int g=0; g<values.length; g++)       {        for (int b=0; b<values.length; b++)        {          Color c = new Color(values[r], values[g], values[b]);          ColorPane pn = new ColorPane(c);          p.add(pn);          panes.put(c, pn);        }      }    }    add(p);  }  public void setColor(Color c)   {    Object obj = panes.get(c);    if (obj == null)      return;    if (selected != null)      selected.setSelected(false);    selected = (ColorPane)obj;    selected.setSelected(true);  }  public Color getColor()   {    if (selected == null)      return null;    return selected.getColor();  }  public void doSelection()   {    fireActionPerformed(new ActionEvent(this,       ActionEvent.ACTION_PERFORMED, getActionCommand()));  }  class ColorPane extends JPanel implements MouseListener  {    protected Color col;    protected boolean selected;    public ColorPane(Color c)     {      col = c;      setBackground(c);      setBorder(unselectedBorder);      String msg = "R "+c.getRed()+", G "+c.getGreen()+        ", B "+c.getBlue();      setToolTipText(msg);      addMouseListener(this);    }    public Color getColor() { return col; }    public Dimension getPreferredSize()     {      return new Dimension(15, 15);    }    public Dimension getMaximumSize() { return getPreferredSize(); }    public Dimension getMinimumSize() { return getPreferredSize(); }    public void setSelected(boolean select)     {      selected = select;      if (selected)        setBorder(selectedBorder);      else        setBorder(unselectedBorder);    }    public boolean isSelected() { return selected; }    public void mousePressed(MouseEvent e) {}    public void mouseClicked(MouseEvent e) {}    public void mouseReleased(MouseEvent e)     {      setColor(col);      MenuSelectionManager.defaultManager().clearSelectedPath();      doSelection();    }    public void mouseEntered(MouseEvent e)     {      setBorder(activeBorder);    }    public void mouseExited(MouseEvent e)     {      setBorder(selected ? selectedBorder :         unselectedBorder);    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -