source: josm/trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java@ 1523

Last change on this file since 1523 was 1195, checked in by stoecker, 15 years ago

fixed relation handling, applied language patches

File size: 4.5 KB
Line 
1// License: GPL. Copyright 2007 by Immanuel Scholz and others
2package org.openstreetmap.josm.tools;
3
4import org.openstreetmap.josm.tools.Shortcut;
5import org.openstreetmap.josm.Main;
6
7import java.awt.event.KeyEvent;
8import java.io.IOException;
9
10/**
11 * see PlatformHook.java
12 *
13 * BTW: THIS IS A STUB. See comments below for details.
14 */
15public class PlatformHookUnixoid implements PlatformHook {
16 public void preStartupHook(){
17 }
18 public void startupHook() {
19 }
20 public void openUrl(String url) throws IOException {
21 String[] programs = {"gnome-open", "kfmclient openURL", "firefox"};
22 for (String program : programs) {
23 try {
24 Runtime.getRuntime().exec(program+" "+url);
25 return;
26 } catch (IOException e) {
27 }
28 }
29 }
30 public void initShortcutGroups() {
31 // This is the Windows list. Someone should look over it and make it more "*nix"...
32 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_NONE), Integer.toString(-1));
33 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_HOTKEY), Integer.toString(KeyEvent.CTRL_DOWN_MASK));
34 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_MENU), Integer.toString(KeyEvent.CTRL_DOWN_MASK));
35 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_EDIT), Integer.toString(0));
36 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_LAYER), Integer.toString(KeyEvent.ALT_DOWN_MASK));
37 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_DIRECT), Integer.toString(0));
38 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_DEFAULT+Shortcut.GROUP_MNEMONIC),Integer.toString(KeyEvent.ALT_DOWN_MASK));
39
40 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_NONE), Integer.toString(-1));
41 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_HOTKEY), Integer.toString(KeyEvent.CTRL_DOWN_MASK | KeyEvent.SHIFT_DOWN_MASK));
42 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_MENU), Integer.toString(KeyEvent.CTRL_DOWN_MASK | KeyEvent.SHIFT_DOWN_MASK));
43 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_EDIT), Integer.toString(KeyEvent.SHIFT_DOWN_MASK));
44 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_LAYER), Integer.toString(KeyEvent.ALT_DOWN_MASK | KeyEvent.SHIFT_DOWN_MASK));
45 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_DIRECT), Integer.toString(KeyEvent.SHIFT_DOWN_MASK));
46 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT1+Shortcut.GROUP_MNEMONIC), Integer.toString(KeyEvent.ALT_DOWN_MASK));
47
48 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_NONE), Integer.toString(-1));
49 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_HOTKEY), Integer.toString(KeyEvent.CTRL_DOWN_MASK | KeyEvent.ALT_DOWN_MASK));
50 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_MENU), Integer.toString(KeyEvent.CTRL_DOWN_MASK | KeyEvent.ALT_DOWN_MASK));
51 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_EDIT), Integer.toString(KeyEvent.ALT_DOWN_MASK | KeyEvent.SHIFT_DOWN_MASK));
52 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_LAYER), Integer.toString(KeyEvent.ALT_DOWN_MASK));
53 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_DIRECT), Integer.toString(KeyEvent.CTRL_DOWN_MASK));
54 Main.pref.put("shortcut.groups."+(Shortcut.GROUPS_ALT2+Shortcut.GROUP_MNEMONIC), Integer.toString(KeyEvent.ALT_DOWN_MASK));
55 }
56 public void initSystemShortcuts() {
57 // TODO: Insert system shortcuts here. See Windows and espacially OSX to see how to.
58 }
59 /**
60 * This should work for all platforms. Yeah, should.
61 * See PlatformHook.java for a list of reasons why
62 * this is implemented here...
63 */
64 public String makeTooltip(String name, Shortcut sc) {
65 String result = "";
66 result += "<html>";
67 result += name;
68 if (sc != null && sc.getKeyText().length() != 0) {
69 result += " ";
70 result += "<font size='-2'>";
71 result += "("+sc.getKeyText()+")";
72 result += "</font>";
73 }
74 result += "&nbsp;</html>";
75 return result;
76 }
77}
Note: See TracBrowser for help on using the repository browser.