Author: tchemit Date: 2008-07-28 12:21:47 +0000 (Mon, 28 Jul 2008) New Revision: 932 Added: trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/AboutUI.java trunk/commandline/commandline-ui-action/src/main/uimodel/ trunk/commandline/commandline-ui-action/src/main/uimodel/org/ trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/ trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ui/ trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ui/JAboutUI.jaxx Modified: trunk/commandline/commandline-ui-action/pom.xml trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/AboutAction.java trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/QuitAction.java trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/SiteAction.java trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-en_GB.properties trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-fr_FR.properties Log: mise en place action About ajout de proprietes obligatoires supplementaires fix bug sur l'action Quit Modified: trunk/commandline/commandline-ui-action/pom.xml =================================================================== --- trunk/commandline/commandline-ui-action/pom.xml 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/pom.xml 2008-07-28 12:21:47 UTC (rev 932) @@ -100,6 +100,8 @@ </execution> </executions> </plugin> + + <!-- jaxx --> <plugin> <groupId>org.codelutin.jaxx</groupId> <artifactId>maven-jaxx-plugin</artifactId> @@ -109,6 +111,14 @@ </configuration> <executions> <execution> + <id>jaxx-generate</id> + <goals> + <goal>generate</goal> + </goals> + + </execution> + + <execution> <id>jaxx-generate-actions-provider</id> <goals> <goal>generate-actions-provider</goal> @@ -138,6 +148,14 @@ </configuration> </execution> </executions> + <dependencies> + <dependency> + <groupId>org.codelutin.jaxx</groupId> + <artifactId>jaxx-swing</artifactId> + <scope>compile</scope> + <version>${jaxx.version}</version> + </dependency> + </dependencies> </plugin> </plugins> </build> Added: trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/AboutUI.java =================================================================== --- trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/AboutUI.java (rev 0) +++ trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/AboutUI.java 2008-07-28 12:21:47 UTC (rev 932) @@ -0,0 +1,91 @@ +/** + * # #% Copyright (C) 2008 Code Lutin, Tony Chemit + * This program is free software; you + * can redistribute it and/or modify it under the terms of the GNU General + * Public License as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. This program is + * distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A + * PARTICULAR PURPOSE. See the GNU General Public License for more details. You + * should have received a copy of the GNU General Public License along with this + * program; if not, write to the Free Software Foundation, Inc., 59 Temple Place + * - Suite 330, Boston, MA 02111-1307, USA. + * # #% + */ +package org.codelutin.option.ui; + +import org.codelutin.util.VersionNumber; + +import javax.swing.JEditorPane; +import javax.swing.event.HyperlinkEvent; +import javax.swing.event.HyperlinkListener; +import javax.swing.text.html.HTMLDocument; +import javax.swing.text.html.HTMLEditorKit; +import javax.swing.text.html.HTMLFrameHyperlinkEvent; +import java.awt.Desktop; +import java.net.URL; + +/** @author chemit */ +public class AboutUI extends JAboutUI { + + public AboutUI() { + super(); + getApplicationWebsite().setEditorKit(new HTMLEditorKit()); + getApplicationWebsite().addHyperlinkListener(createHyperLinkListener(getApplicationWebsite())); + + getOrganisationWebsite().setEditorKit(new HTMLEditorKit()); + getOrganisationWebsite().addHyperlinkListener(createHyperLinkListener(getOrganisationWebsite())); + } + + public void init(javax.swing.JFrame frame, org.codelutin.option.Context c) { + if (frame != null) { + setLocationRelativeTo(frame); + } + org.codelutin.option.Config config = c.getMainConfig(); + String applicationName = (String) config.getProperty("projectName"); + + VersionNumber applicationVersion = (VersionNumber) config.getProperty("version"); + + getApplicationName().setText(applicationName + " v" + applicationVersion); + + URL applicationURL = (URL) config.getProperty("projectURL"); + getApplicationWebsite().setText("<a href=\"" + applicationURL + "\">" + applicationURL + "</a>"); + + String organisationName = (String) config.getProperty("organisationName"); + getOrganisationName().setText(organisationName); + + URL organisationURL = (URL) config.getProperty("organisationURL"); + getOrganisationWebsite().setText("<a href=\"" + organisationURL + "\">" + organisationURL + "</a>"); + + String copyright = (String) config.getProperty("copyright"); + getCopyright().setText(copyright); + pack(); + + } + + public HyperlinkListener createHyperLinkListener(final JEditorPane doc) { + return new HyperlinkListener() { + public void hyperlinkUpdate(HyperlinkEvent e) { + if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { + if (e instanceof HTMLFrameHyperlinkEvent) { + ((HTMLDocument) doc.getDocument()).processHTMLFrameHyperlinkEvent( + (HTMLFrameHyperlinkEvent) e); + } else { + try { + if ( + Desktop.isDesktopSupported() && + Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) { + Desktop.getDesktop().browse(e.getURL().toURI()); + } else { + doc.setPage(e.getURL()); + } + } catch (Exception eee) { + System.out.println("Error for : " + e.getURL()); + eee.printStackTrace(); + } + } + } + } + }; + } +} Modified: trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/AboutAction.java =================================================================== --- trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/AboutAction.java 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/AboutAction.java 2008-07-28 12:21:47 UTC (rev 932) @@ -14,6 +14,8 @@ */ package org.codelutin.option.ui.actions; +import org.codelutin.option.ui.AboutUI; + /** * Action pour afficher la dialogue de modification de configuration * @@ -31,6 +33,7 @@ public class AboutAction extends CommandLineBaseAction { private static final long serialVersionUID = 9050439968144935986L; + AboutUI aboutUI; public AboutAction(String name) { super(name); @@ -38,12 +41,22 @@ @Override public void doAction(java.awt.event.ActionEvent e) { - log.info("To be done!"); + getAboutUI().setVisible(true); } @Override public void disposeUI() { super.disposeUI(); + if (aboutUI != null) { + aboutUI = null; + } } + public AboutUI getAboutUI() { + if (aboutUI == null) { + aboutUI = new AboutUI(); + aboutUI.init(null, getContext()); + } + return aboutUI; + } } \ No newline at end of file Modified: trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/QuitAction.java =================================================================== --- trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/QuitAction.java 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/QuitAction.java 2008-07-28 12:21:47 UTC (rev 932) @@ -60,7 +60,7 @@ result = n == JOptionPane.YES_OPTION; } - + log.info("to treate ? " + result); return result; } Modified: trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/SiteAction.java =================================================================== --- trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/SiteAction.java 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/src/main/java/org/codelutin/option/ui/actions/SiteAction.java 2008-07-28 12:21:47 UTC (rev 932) @@ -47,7 +47,7 @@ if (!super.beforeAction(e) && !Desktop.isDesktopSupported() && !Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) { return false; } - siteUrl = (URL) getContext().getMainConfig().getProperty("siteURL"); + siteUrl = (URL) getContext().getMainConfig().getProperty("projectURL"); return siteUrl != null; } Modified: trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-en_GB.properties =================================================================== --- trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-en_GB.properties 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-en_GB.properties 2008-07-28 12:21:47 UTC (rev 932) @@ -20,3 +20,4 @@ commandline.no=No commandline.question=Quit commandline.yes=Yes +lutinutil.about= Modified: trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-fr_FR.properties =================================================================== --- trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-fr_FR.properties 2008-07-28 12:19:43 UTC (rev 931) +++ trunk/commandline/commandline-ui-action/src/main/resources/i18n/commandline-ui-action-fr_FR.properties 2008-07-28 12:21:47 UTC (rev 932) @@ -20,3 +20,4 @@ commandline.no=Non commandline.question=Quitter commandline.yes=Oui +lutinutil.about= Added: trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ui/JAboutUI.jaxx =================================================================== --- trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ui/JAboutUI.jaxx (rev 0) +++ trunk/commandline/commandline-ui-action/src/main/uimodel/org/codelutin/option/ui/JAboutUI.jaxx 2008-07-28 12:21:47 UTC (rev 932) @@ -0,0 +1,43 @@ +<JDialog title="commandline.action.about" undecorated='false' resizable='false' modal='true' locationRelativeTo="{null}" + defaultCloseOperation="dispose_on_close" + width="300" height="300"> + <!--onMouseClicked="dispose()"--> + + <Table insets='5,5,5,5'> + <row> + <cell> + <JLabel id="applicationName"/> + </cell> + </row> + <row> + <cell> + <JEditorPane id="applicationWebsite" contentType="text/html" editable='false' opaque='false'/> + </cell> + </row> + <row> + <cell fill='horizontal'> + <JSeparator orientation='horizontal'/> + </cell> + </row> + <row> + <cell> + <JLabel id="organisationName"/> + </cell> + </row> + <row> + <cell> + <JEditorPane id="organisationWebsite" contentType="text/html" editable='false'/> + </cell> + </row> + <row> + <cell fill='horizontal'> + <JSeparator orientation='horizontal'/> + </cell> + </row> + <row> + <cell> + <JLabel id="copyright"/> + </cell> + </row> + </Table> +</JDialog> \ No newline at end of file