diff options
| author | Bruno Haible <bruno@clisp.org> | 2003-11-16 15:17:16 +0000 |
|---|---|---|
| committer | Bruno Haible <bruno@clisp.org> | 2009-06-23 12:11:15 +0200 |
| commit | f31d09ff2a6745a3f8501b3396bfcf81c0ba0982 (patch) | |
| tree | 81361dea18dc86d3a3d52d581daf1b5322bd5c5d /gettext-tools/examples/hello-java-awt/Hello.java | |
| parent | d73a2fcfa69f9291c9ac6fa6d7f92dbad26a88fc (diff) | |
| download | gettext-f31d09ff2a6745a3f8501b3396bfcf81c0ba0982.tar.gz | |
Example package demonstrating the use of gettext.
Diffstat (limited to 'gettext-tools/examples/hello-java-awt/Hello.java')
| -rw-r--r-- | gettext-tools/examples/hello-java-awt/Hello.java | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/gettext-tools/examples/hello-java-awt/Hello.java b/gettext-tools/examples/hello-java-awt/Hello.java new file mode 100644 index 000000000..9495f5e20 --- /dev/null +++ b/gettext-tools/examples/hello-java-awt/Hello.java @@ -0,0 +1,67 @@ +// Example for use of GNU gettext. +// Copyright (C) 2003 Free Software Foundation, Inc. +// This file is in the public domain. +// +// Source code of the Java/AWT program. + +import java.util.*; +import java.io.*; +import java.text.*; +import java.awt.*; +import java.awt.event.*; +import gnu.gettext.*; + +public class Hello { + public static void main (String[] args) { + ResourceBundle catalog = ResourceBundle.getBundle("hello-java-awt"); + Frame frame = new Frame("Hello example"); + frame.addWindowListener( + new WindowAdapter() { + public void windowClosing (WindowEvent event) { + System.exit(0); + } + }); + Label label1 = new Label(GettextResource.gettext(catalog,"Hello, world!")); + Label label2 = + new Label( + MessageFormat.format( + GettextResource.gettext(catalog, + "This program is running as process number {0}."), + new Object[] { getPid() })); + Button button = new Button("OK"); + button.addActionListener( + new ActionListener() { + public void actionPerformed (ActionEvent event) { + System.exit(0); + } + }); + Container labels = new Container(); + labels.setLayout(new GridLayout(2, 1)); + labels.add(label1); + labels.add(label2); + Container buttons = new Container(); + buttons.setLayout(new FlowLayout(FlowLayout.RIGHT)); + buttons.add(button); + frame.setLayout(new BorderLayout()); + frame.add(labels, BorderLayout.CENTER); + frame.add(buttons, BorderLayout.SOUTH); + frame.pack(); + frame.setVisible(true); + } + + /* Return the process ID of the current process. */ + private static String getPid () { + try { + String[] args = new String[] { "/bin/sh", "-c", "echo $PPID" }; + Process p = Runtime.getRuntime().exec(args); + InputStream p_out = p.getInputStream(); + String s = (new BufferedReader(new InputStreamReader(p_out))).readLine(); + p.destroy(); + if (s != null) + return s; + } catch (IOException e) { + e.printStackTrace(); + } + return "???"; + } +} |
