git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-2344 FileFormats singleton for formats, FileFormatI simplified
[jalview.git]
/
src
/
jalview
/
gui
/
PopupMenu.java
diff --git
a/src/jalview/gui/PopupMenu.java
b/src/jalview/gui/PopupMenu.java
index
aa3cad4
..
e36204c
100644
(file)
--- a/
src/jalview/gui/PopupMenu.java
+++ b/
src/jalview/gui/PopupMenu.java
@@
-38,6
+38,8
@@
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
+import jalview.io.FileFormatI;
+import jalview.io.FileFormats;
import jalview.io.FormatAdapter;
import jalview.io.SequenceAnnotationReport;
import jalview.schemes.AnnotationColourGradient;
import jalview.io.FormatAdapter;
import jalview.io.SequenceAnnotationReport;
import jalview.schemes.AnnotationColourGradient;
@@
-77,7
+79,6
@@
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JColorChooser;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import javax.swing.JColorChooser;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
-import javax.swing.JOptionPane;
import javax.swing.JPopupMenu;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JPopupMenu;
import javax.swing.JRadioButtonMenuItem;
@@
-247,17
+248,15
@@
public class PopupMenu extends JPopupMenu
colours.add(strandColour);
colours.add(turnColour);
colours.add(buriedColour);
colours.add(strandColour);
colours.add(turnColour);
colours.add(buriedColour);
- colours.add(abovePIDColour);
colours.add(userDefinedColour);
colours.add(PIDColour);
colours.add(BLOSUM62Colour);
colours.add(purinePyrimidineColour);
colours.add(RNAInteractionColour);
colours.add(userDefinedColour);
colours.add(PIDColour);
colours.add(BLOSUM62Colour);
colours.add(purinePyrimidineColour);
colours.add(RNAInteractionColour);
- for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)
+ for (String ff : FileFormats.getInstance().getWritableFormats(true))
{
{
- JMenuItem item = new JMenuItem(
- jalview.io.FormatAdapter.WRITEABLE_FORMATS[i]);
+ JMenuItem item = new JMenuItem(ff);
item.addActionListener(new java.awt.event.ActionListener()
{
item.addActionListener(new java.awt.event.ActionListener()
{
@@
-535,9
+534,16
@@
public class PopupMenu extends JPopupMenu
noColourmenuItem.setSelected(true);
}
noColourmenuItem.setSelected(true);
}
- if (sg.cs != null && sg.cs.conservationApplied())
+ if (sg.cs != null)
{
{
+ if (sg.cs.conservationApplied())
+ {
conservationMenuItem.setSelected(true);
conservationMenuItem.setSelected(true);
+ }
+ if (sg.cs.getThreshold() > 0)
+ {
+ abovePIDColour.setSelected(true);
+ }
}
displayNonconserved.setSelected(sg.getShowNonconserved());
showText.setSelected(sg.getDisplayText());
}
displayNonconserved.setSelected(sg.getShowNonconserved());
showText.setSelected(sg.getDisplayText());
@@
-616,7
+622,7
@@
public class PopupMenu extends JPopupMenu
void addFeatureLinks(final SequenceI seq, List<String> links)
{
JMenu linkMenu = new JMenu(MessageManager.getString("action.link"));
void addFeatureLinks(final SequenceI seq, List<String> links)
{
JMenu linkMenu = new JMenu(MessageManager.getString("action.link"));
- Map<String, String[]> linkset = new LinkedHashMap<String, String[]>();
+ Map<String, List<String>> linkset = new LinkedHashMap<String, List<String>>();
for (String link : links)
{
for (String link : links)
{
@@
-641,6
+647,16
@@
public class PopupMenu extends JPopupMenu
addshowLinks(linkMenu, linkset.values());
addshowLinks(linkMenu, linkset.values());
+ // disable link menu if there are no valid entries
+ if (linkMenu.getItemCount() > 0)
+ {
+ linkMenu.setEnabled(true);
+ }
+ else
+ {
+ linkMenu.setEnabled(false);
+ }
+
if (sequence != null)
{
sequenceMenu.add(linkMenu);
if (sequence != null)
{
sequenceMenu.add(linkMenu);
@@
-649,6
+665,7
@@
public class PopupMenu extends JPopupMenu
{
add(linkMenu);
}
{
add(linkMenu);
}
+
}
}
@@
-927,12
+944,12
@@
public class PopupMenu extends JPopupMenu
}
}
}
}
- private void addshowLinks(JMenu linkMenu, Collection<String[]> linkset)
+ private void addshowLinks(JMenu linkMenu, Collection<List<String>> linkset)
{
{
- for (String[] linkstrset : linkset)
+ for (List<String> linkstrset : linkset)
{
// split linkstr into label and url
{
// split linkstr into label and url
- addshowLink(linkMenu, linkstrset[1], linkstrset[3]);
+ addshowLink(linkMenu, linkstrset.get(1), linkstrset.get(3));
}
}
}
}
@@
-1666,7
+1683,7
@@
public class PopupMenu extends JPopupMenu
public void createSequenceDetailsReport(SequenceI[] sequences)
{
CutAndPasteHtmlTransfer cap = new CutAndPasteHtmlTransfer();
public void createSequenceDetailsReport(SequenceI[] sequences)
{
CutAndPasteHtmlTransfer cap = new CutAndPasteHtmlTransfer();
- StringBuffer contents = new StringBuffer();
+ StringBuilder contents = new StringBuilder(128);
for (SequenceI seq : sequences)
{
contents.append("<p><h2>"
for (SequenceI seq : sequences)
{
contents.append("<p><h2>"
@@
-1681,7
+1698,6
@@
public class PopupMenu extends JPopupMenu
seq,
true,
true,
seq,
true,
true,
- false,
(ap.getSeqPanel().seqCanvas.fr != null) ? ap
.getSeqPanel().seqCanvas.fr.getMinMax()
: null);
(ap.getSeqPanel().seqCanvas.fr != null) ? ap
.getSeqPanel().seqCanvas.fr.getMinMax()
: null);
@@
-1969,7
+1985,7
@@
public class PopupMenu extends JPopupMenu
if (conservationMenuItem.isSelected())
{
// JBPNote: Conservation name shouldn't be i18n translated
if (conservationMenuItem.isSelected())
{
// JBPNote: Conservation name shouldn't be i18n translated
- Conservation c = new Conservation("Group", 3, sg.getSequences(ap.av
+ Conservation c = new Conservation("Group", sg.getSequences(ap.av
.getHiddenRepSequences()), sg.getStartRes(),
sg.getEndRes() + 1);
.getHiddenRepSequences()), sg.getStartRes(),
sg.getEndRes() + 1);
@@
-2078,14
+2094,14
@@
public class PopupMenu extends JPopupMenu
{
if (dialog.getName().indexOf(" ") > -1)
{
{
if (dialog.getName().indexOf(" ") > -1)
{
- JOptionPane
+ JvOptionPane
.showMessageDialog(
ap,
MessageManager
.getString("label.spaces_converted_to_backslashes"),
MessageManager
.getString("label.no_spaces_allowed_sequence_name"),
.showMessageDialog(
ap,
MessageManager
.getString("label.spaces_converted_to_backslashes"),
MessageManager
.getString("label.no_spaces_allowed_sequence_name"),
- JOptionPane.WARNING_MESSAGE);
+ JvOptionPane.WARNING_MESSAGE);
}
sequence.setName(dialog.getName().replace(' ', '_'));
}
sequence.setName(dialog.getName().replace(' ', '_'));
@@
-2184,10
+2200,10
@@
public class PopupMenu extends JPopupMenu
jalview.util.BrowserLauncher.openURL(url);
} catch (Exception ex)
{
jalview.util.BrowserLauncher.openURL(url);
} catch (Exception ex)
{
- JOptionPane.showInternalMessageDialog(Desktop.desktop,
+ JvOptionPane.showInternalMessageDialog(Desktop.desktop,
MessageManager.getString("label.web_browser_not_found_unix"),
MessageManager.getString("label.web_browser_not_found"),
MessageManager.getString("label.web_browser_not_found_unix"),
MessageManager.getString("label.web_browser_not_found"),
- JOptionPane.WARNING_MESSAGE);
+ JvOptionPane.WARNING_MESSAGE);
ex.printStackTrace();
}
ex.printStackTrace();
}
@@
-2263,8
+2279,9
@@
public class PopupMenu extends JPopupMenu
// or we simply trust the user wants
// wysiwig behaviour
// or we simply trust the user wants
// wysiwig behaviour
- cap.setText(new FormatAdapter(ap).formatSequences(e.getActionCommand(),
- ap, true));
+ FileFormatI fileFormat = FileFormats.getInstance().forName(
+ e.getActionCommand());
+ cap.setText(new FormatAdapter(ap).formatSequences(fileFormat, ap, true));
}
public void sequenceFeature_actionPerformed()
}
public void sequenceFeature_actionPerformed()