]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/save/PointTypeSelector.java
Moved source into separate src directory due to popular request
[GpsPrune.git] / tim / prune / save / PointTypeSelector.java
diff --git a/tim/prune/save/PointTypeSelector.java b/tim/prune/save/PointTypeSelector.java
deleted file mode 100644 (file)
index ce7adeb..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-package tim.prune.save;
-
-import java.awt.BorderLayout;
-import java.awt.GridLayout;
-
-import javax.swing.BorderFactory;
-import javax.swing.JCheckBox;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.border.EtchedBorder;
-
-import tim.prune.I18nManager;
-import tim.prune.data.TrackInfo;
-
-/**
- * GUI element to allow the selection of point types for saving,
- * including checkboxes for track points, waypoints, photo points, audio points
- * and also a checkbox for the current selection
- */
-public class PointTypeSelector extends JPanel
-{
-       /** Array of checkboxes */
-       private JCheckBox[] _checkboxes = new JCheckBox[5];
-       /** Grid panel for top row */
-       private JPanel _gridPanel = null;
-
-
-       /**
-        * Constructor
-        */
-       public PointTypeSelector()
-       {
-               createComponents();
-               setBorder(BorderFactory.createCompoundBorder(
-                       BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), BorderFactory.createEmptyBorder(4, 4, 4, 4))
-               );
-       }
-
-       /**
-        * Create the GUI components
-        */
-       private void createComponents()
-       {
-               setLayout(new BorderLayout());
-               add(new JLabel(I18nManager.getText("dialog.pointtype.desc")), BorderLayout.NORTH);
-               // panel for the checkboxes
-               _gridPanel = new JPanel();
-               _gridPanel.setLayout(new GridLayout(0, 3, 15, 3));
-               final String[] keys = {"track", "waypoint", "photo", "audio"};
-               for (int i=0; i<4; i++)
-               {
-                       _checkboxes[i] = new JCheckBox(I18nManager.getText("dialog.pointtype." + keys[i]));
-                       _checkboxes[i].setSelected(true);
-                       if (i<3) {_gridPanel.add(_checkboxes[i]);}
-               }
-               add(_gridPanel, BorderLayout.CENTER);
-               _checkboxes[4] = new JCheckBox(I18nManager.getText("dialog.pointtype.selection"));
-               add(_checkboxes[4], BorderLayout.SOUTH);
-       }
-
-
-       /**
-        * Initialize the checkboxes from the given data
-        * @param inTrackInfo TrackInfo object
-        */
-       public void init(TrackInfo inTrackInfo)
-       {
-               // Get whether track has track points, waypoints, photos
-               boolean[] dataFlags = {inTrackInfo.getTrack().hasTrackPoints(),
-                               inTrackInfo.getTrack().hasWaypoints(),
-                               inTrackInfo.getPhotoList().getNumPhotos() > 0,
-                               inTrackInfo.getAudioList().getNumAudios() > 0
-               };
-               // Rearrange grid to just show the appropriate entries
-               final boolean[] showFlags = {true, true, dataFlags[2] || !dataFlags[3], dataFlags[3]};
-               _gridPanel.removeAll();
-               for (int i=0; i<4; i++) {
-                       if (showFlags[i]) {_gridPanel.add(_checkboxes[i]);}
-               }
-               // Enable or disable checkboxes according to data present
-               for (int i=0; i<4; i++)
-               {
-                       if (dataFlags[i]) {
-                               if (!_checkboxes[i].isEnabled()) {_checkboxes[i].setSelected(true);}
-                               _checkboxes[i].setEnabled(true);
-                       }
-                       else {
-                               _checkboxes[i].setSelected(false);
-                               _checkboxes[i].setEnabled(false);
-                       }
-               }
-               _checkboxes[4].setEnabled(inTrackInfo.getSelection().hasRangeSelected());
-               _checkboxes[4].setSelected(false);
-       }
-
-       /**
-        * @return true if trackpoints selected
-        */
-       public boolean getTrackpointsSelected()
-       {
-               return _checkboxes[0].isSelected();
-       }
-
-       /**
-        * @return true if waypoints selected
-        */
-       public boolean getWaypointsSelected()
-       {
-               return _checkboxes[1].isSelected();
-       }
-
-       /**
-        * @return true if photo points selected
-        */
-       public boolean getPhotopointsSelected()
-       {
-               return _checkboxes[2].isSelected();
-       }
-
-       /**
-        * @return true if audio points selected
-        */
-       public boolean getAudiopointsSelected()
-       {
-               return _checkboxes[3].isSelected();
-       }
-
-       /**
-        * @return true if only the current selection should be saved
-        */
-       public boolean getJustSelection()
-       {
-               return _checkboxes[4].isSelected();
-       }
-
-       /**
-        * @return true if at least one type selected
-        */
-       public boolean getAnythingSelected()
-       {
-               return getTrackpointsSelected() || getWaypointsSelected()
-                       || getPhotopointsSelected() || getAudiopointsSelected();
-       }
-}