X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FFeatureSettings.java;h=7db1fbe4b7cdac2a3cb9dd3bb642209d5ec76dd3;hb=1a34e43f7fb8e6d4f559026c6f0a207893124c6d;hp=39a274785cd326ba4d3aec838c7640ccb1a5bd3a;hpb=8690631b5afe2db0a06ef1b074d2633598c403ae;p=jalview.git diff --git a/src/jalview/appletgui/FeatureSettings.java b/src/jalview/appletgui/FeatureSettings.java index 39a2747..7db1fbe 100755 --- a/src/jalview/appletgui/FeatureSettings.java +++ b/src/jalview/appletgui/FeatureSettings.java @@ -20,15 +20,12 @@ */ package jalview.appletgui; -import static jalview.viewmodel.seqfeatures.FeatureRendererModel.COLOUR_COLUMN; -import static jalview.viewmodel.seqfeatures.FeatureRendererModel.SHOW_COLUMN; -import static jalview.viewmodel.seqfeatures.FeatureRendererModel.TYPE_COLUMN; - import jalview.api.FeatureColourI; import jalview.api.FeatureSettingsControllerI; import jalview.datamodel.AlignmentI; import jalview.datamodel.SequenceI; import jalview.util.MessageManager; +import jalview.viewmodel.seqfeatures.FeatureRendererModel.FeatureSettingsBean; import java.awt.BorderLayout; import java.awt.Button; @@ -71,6 +68,12 @@ public class FeatureSettings extends Panel implements ItemListener, MouseListener, MouseMotionListener, ActionListener, AdjustmentListener, FeatureSettingsControllerI { + private static final int TYPE_COLUMN = 0; + + private static final int COLOUR_COLUMN = 1; + + private static final int SHOW_COLUMN = 2; + FeatureRenderer fr; AlignmentPanel ap; @@ -607,11 +610,27 @@ public class FeatureSettings extends Panel Object[][] data = new Object[tmpSize][columnCount]; System.arraycopy(tmp, 0, data, 0, tmpSize); - fr.setFeaturePriority(data); + fr.setFeaturePriority(getTableAsBeans(data)); ap.paintAlignment(updateOverview, updateOverview); } + /** + * Converts table data into an array of data beans + */ + private FeatureSettingsBean[] getTableAsBeans(Object[][] data) + { + FeatureSettingsBean[] rowData = new FeatureSettingsBean[data.length]; + for (int i = 0; i < data.length; i++) + { + String type = (String) data[i][TYPE_COLUMN]; + FeatureColourI colour = (FeatureColourI) data[i][COLOUR_COLUMN]; + Boolean isShown = (Boolean) data[i][SHOW_COLUMN]; + // feature filter set to null as not (yet) offered in applet + rowData[i] = new FeatureSettingsBean(type, colour, null, isShown); + } + return rowData; + } MyCheckbox selectedCheck; boolean dragging = false;