Index: java/slash/navigation/converter/gui/helper/FrameMenu.java =================================================================== --- java/slash/navigation/converter/gui/helper/FrameMenu.java (revision 1947) +++ java/slash/navigation/converter/gui/helper/FrameMenu.java (working copy) @@ -42,6 +42,7 @@ printMenu.add(JMenuHelper.createItem("print-map")); printMenu.add(JMenuHelper.createItem("print-map-and-route")); printMenu.add(JMenuHelper.createItem("print-elevation-profile")); + printMenu.add(JMenuHelper.createItem("print-positions")); fileMenu.add(printMenu); fileMenu.addSeparator(); fileMenu.add(JMenuHelper.createItem("exit")); @@ -83,6 +84,7 @@ toolsMenu.add(JMenuHelper.createItem("insert-positions")); toolsMenu.add(JMenuHelper.createItem("delete-positions")); toolsMenu.add(JMenuHelper.createItem("revert-positions")); + toolsMenu.add(JMenuHelper.createItem("print-positions")); JMenu extrasMenu = JMenuHelper.createMenu("extras"); extrasMenu.add(JMenuHelper.createItem("options")); Index: java/slash/navigation/converter/gui/panels/ConvertPanel.java =================================================================== --- java/slash/navigation/converter/gui/panels/ConvertPanel.java (revision 1947) +++ java/slash/navigation/converter/gui/panels/ConvertPanel.java (working copy) @@ -104,10 +104,14 @@ import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; import javax.swing.filechooser.FileFilter; +import javax.swing.table.TableModel; +import javax.swing.table.TableRowSorter; + import java.awt.*; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.KeyEvent; +import java.awt.print.PrinterException; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; @@ -259,6 +263,7 @@ tablePositions.setModel(getPositionsModel()); PositionsTableColumnModel tableColumnModel = new PositionsTableColumnModel(); tablePositions.setColumnModel(tableColumnModel); + tablePositions.registerKeyboardAction(new FrameAction() { public void run() { r.getContext().getActionManager().run("delete"); @@ -601,6 +606,7 @@ renameDialog.pack(); renameDialog.restoreLocation(); renameDialog.setVisible(true); + } private void newPositionList() { @@ -815,6 +821,7 @@ actionManager.enable("insert-positions", existsAPosition); actionManager.enable("delete-positions", existsAPosition); actionManager.enable("revert-positions", existsMoreThanOnePosition); + actionManager.enable("print-positions", existsAPosition); RouteConverter.getInstance().selectPositions(selectedRows); } @@ -1181,4 +1188,12 @@ public JComponent $$$getRootComponent$$$() { return convertPanel; } + + public void print() { + try { + getPositionsView().print(); + } catch (PrinterException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + } } Index: java/slash/navigation/converter/gui/RouteConverter.java =================================================================== --- java/slash/navigation/converter/gui/RouteConverter.java (revision 1947) +++ java/slash/navigation/converter/gui/RouteConverter.java (working copy) @@ -801,6 +801,7 @@ actionManager.register("print-map", new PrintMapAction(false)); actionManager.register("print-map-and-route", new PrintMapAction(true)); actionManager.register("print-elevation-profile", new PrintElevationProfileAction()); + actionManager.register("print-positions", new PrintPositionsAction()); actionManager.register("find-place", new FindPlaceAction()); actionManager.register("show-map-and-positionlist", new ShowMapAndPositionListAction()); actionManager.register("show-elevation-profile", new ShowElevationProfileAction()); @@ -845,6 +846,16 @@ } } + private class PrintPositionsAction extends FrameAction { + private PrintPositionsAction(){ + + } + + public void run() { + getConvertPanel().print(); + } + } + private class ShowMapAndPositionListAction extends ShowElevationProfileAction { public void run() { mapSplitPane.setDividerLocation(getConvertPanel().getRootComponent().getMinimumSize().width); Index: resources/slash/navigation/converter/gui/RouteConverter.properties =================================================================== --- resources/slash/navigation/converter/gui/RouteConverter.properties (revision 1947) +++ resources/slash/navigation/converter/gui/RouteConverter.properties (working copy) @@ -28,6 +28,8 @@ print-map-and-route-action-mnemonic=R print-elevation-profile-action=Elevation Profile... print-elevation-profile-action-mnemonic=E +print-positions-action=Positions... +print-positions-action-mnemonic=O exit-action=Exit exit-action-mnemonic=E exit-action-keystroke=alt F4 @@ -114,6 +116,10 @@ revert-positions-action=Reverse Position List revert-positions-action-mnemonic=R +print-positions-action=Print Positions... +print-positions-action-mnemonic=P +print-positions-action-icon=slash/navigation/converter/gui/insert-positions-action.png + extras-menu=Extras extras-menu-mnemonic=x options-action=Options... @@ -328,6 +334,9 @@ delete-selected-positions=Delete selected positions delete-selected-positions-mnemonic=D +print-positions-title=Print positions +print-positions=Print positionlist + rename-title=Rename position list rename-route-name-too-long=The ''{0}'' format allows just {1} characters. Index: resources/slash/navigation/converter/gui/RouteConverter_de.properties =================================================================== --- resources/slash/navigation/converter/gui/RouteConverter_de.properties (revision 1947) +++ resources/slash/navigation/converter/gui/RouteConverter_de.properties (working copy) @@ -20,6 +20,9 @@ print-map-and-route-action-mnemonic=R print-elevation-profile-action=Höhenprofil... print-elevation-profile-action-mnemonic=H +print-positions-action=Positionsliste... +print-positions-action-mnemonic=O + exit-action=Beenden exit-action-mnemonic=B @@ -90,6 +93,9 @@ revert-positions-action=Kehre Positionsliste um revert-positions-action-mnemonic=K +print-positions-action=Drucke Positionsliste aus... +print-positions-action-mnemonic=D + extras-menu=Extras extras-menu-mnemonic=E options-action=Optionen... @@ -278,6 +284,9 @@ insert-only-turnpoints-mnemonic=N insert-error=Fehler beim Geokodieren:\n{0} +print-positions-title=Drucke Positionen aus +print-positions=Drucke Positionsliste aus... + delete-positions-title=Lösche Positionen delete-select-by-distance=Markiere alle Positionen innerhalb einer Distanz von delete-select-by-distance-meter=Metern zu ihrem Vorgänger.