Add new non-editable textfield and move “copy to clipboard” button next to it.
authorDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Wed, 13 Jan 2010 21:32:54 +0000 (22:32 +0100)
committerDavid ‘Bombe’ Roden <bombe@freenetproject.org>
Wed, 13 Jan 2010 21:38:08 +0000 (22:38 +0100)
src/de/todesbaum/jsite/gui/ProjectPage.java
src/de/todesbaum/jsite/i18n/jSite.properties
src/de/todesbaum/jsite/i18n/jSite_de.properties

index 4089364..c24f7bf 100644 (file)
@@ -119,6 +119,9 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
        /** The local path textfield. */
        private JTextField projectLocalPathTextField;
 
+       /** The textfield for the complete URI. */
+       private JTextField projectCompleteUriTextField;
+
        /** The public key textfield. */
        private JTextField projectPublicKeyTextField;
 
@@ -318,7 +321,6 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
                functionButtons.add(new JButton(projectAddAction));
                functionButtons.add(new JButton(projectDeleteAction));
                functionButtons.add(new JButton(projectCloneAction));
-               functionButtons.add(new JButton(projectCopyURIAction));
 
                informationPanel.add(functionButtons, BorderLayout.PAGE_START);
                informationPanel.add(informationTable, BorderLayout.CENTER);
@@ -401,6 +403,16 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
                projectPathTextField.setEnabled(false);
 
                final TLabel projectPathLabel = new TLabel(I18n.getMessage("jsite.project.project.path") + ":", KeyEvent.VK_P, projectPathTextField);
+               informationTable.add(projectPathLabel, new GridBagConstraints(0, 7, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0));
+               informationTable.add(projectPathTextField, new GridBagConstraints(1, 7, 2, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(6, 6, 0, 0), 0, 0));
+
+               projectCompleteUriTextField = new JTextField();
+               projectCompleteUriTextField.setEditable(false);
+               final TLabel projectUriLabel = new TLabel(I18n.getMessage("jsite.project.project.uri") + ":", KeyEvent.VK_U, projectCompleteUriTextField);
+               informationTable.add(projectUriLabel, new GridBagConstraints(0, 8, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0));
+               informationTable.add(projectCompleteUriTextField, new GridBagConstraints(1, 8, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(6, 6, 0, 0), 0, 0));
+               informationTable.add(new JButton(projectCopyURIAction), new GridBagConstraints(2, 8, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(6, 6, 0, 0), 0, 0));
+
                I18nContainer.getInstance().registerRunnable(new Runnable() {
 
                        public void run() {
@@ -412,10 +424,9 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
                                projectPublicKeyLabel.setText(I18n.getMessage("jsite.project.project.public-key") + ":");
                                projectPrivateKeyLabel.setText(I18n.getMessage("jsite.project.project.private-key") + ":");
                                projectPathLabel.setText(I18n.getMessage("jsite.project.project.path") + ":");
+                               projectUriLabel.setText(I18n.getMessage("jsite.project.project.uri") + ":");
                        }
                });
-               informationTable.add(projectPathLabel, new GridBagConstraints(0, 7, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(6, 18, 0, 0), 0, 0));
-               informationTable.add(projectPathTextField, new GridBagConstraints(1, 7, 2, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(6, 6, 0, 0), 0, 0));
 
                return informationPanel;
        }
@@ -650,6 +661,7 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
                        projectPublicKeyTextField.setText(selectedProject.getRequestURI());
                        projectPrivateKeyTextField.setText(selectedProject.getInsertURI());
                        projectPathTextField.setText(selectedProject.getPath());
+                       projectCompleteUriTextField.setText("freenet:" + selectedProject.getFinalRequestURI(0));
                } else {
                        projectNameTextField.setText("");
                        projectDescriptionTextField.setText("");
@@ -657,6 +669,7 @@ public class ProjectPage extends TWizardPage implements ListSelectionListener, D
                        projectPublicKeyTextField.setText("");
                        projectPrivateKeyTextField.setText("");
                        projectPathTextField.setText("");
+                       projectCompleteUriTextField.setText("");
                }
        }
 
index d341ff2..d5e16e2 100644 (file)
@@ -119,6 +119,7 @@ jsite.project.project.public-key=Public Key
 jsite.project.project.private-key=Private Key
 jsite.project.project.path=Freesite Path
 jsite.project.project.edition=Edition
+jsite.project.project.uri=URI
 jsite.project.keygen.io-error=<html><b>Node communication failure</b><br><br>Communication with the node failed<br>with the following error message:<br><br><code>{0}</code><br><br>Please make sure that you have entered<br>the correct host name and port number<br>on the "Node Settings" page.</html>
 jsite.project.warning.no-local-path=<html><b>No local path</b><br><br>You did not specify a local path for the files to insert.<br>It is not possible to continue without one.</html>
 jsite.project.warning.no-path=<html><b>No freesite path</b><br><br>You did not specify a freesite path.<br>It is not possible to continue without one.</html>
index 1e9e88e..033ef06 100644 (file)
@@ -119,6 +119,7 @@ jsite.project.project.public-key=\u00d6ffentlicher Schl\u00fcssel
 jsite.project.project.private-key=Privater Schl\u00fcssel
 jsite.project.project.path=Seitenpfad
 jsite.project.project.edition=Edition
+jsite.project.project.uri=Anfrage-URI
 jsite.project.keygen.io-error=<html><b>Kommunikation fehlgeschlagen</b><br><br>Die Kommunikation mit dem Freenet Node<br>ergab folgende Fehlermeldung:<br><br><code>{0}</code><br><br>Bitte vergewissern Sie sich, dass der Node l\u00e4uft und dass Sie<br> den korrekten Hostnamen und die korrekte Portnummer auf der<br>\u201eNode Einstellungen\u201c Seite eingegeben haben.</html>
 jsite.project.warning.no-local-path=<html><b>Kein lokaler Pfad</b><br><br>Sie haben keinen lokalen Pfad f\u00fcr die einzuf\u00fcgenden Dateien angegeben.<br>Es ist nicht m\u00f6glich, ohne lokalen Pfad weiter zu machen.</html>
 jsite.project.warning.no-path=<html><b>Kein Freesite-Pfad</b><br><br>Sie haben keinen Pfad f\u00fcr die Freesite angegeben.<br>Es ist nicht m\u00f6glich, ohne einen Freesite-Pfad weiter zu machen.</html>