Revision: 3874
Author: [email protected]
Date: Thu Aug 12 08:23:09 2010
Log: NEW - bug 2941: Can't read full licensing message
http://trillian.sqlpower.ca/bugzilla/show_bug.cgi?id=2941

Added a HTMLUserPrompter which displays the question message in a JEditorPane and formats it using an HTMLEditorKit.
http://code.google.com/p/power-architect/source/detail?r=3874

Modified:
/trunk/src/main/java/ca/sqlpower/architect/enterprise/ServerInfoProvider.java

=======================================
--- /trunk/src/main/java/ca/sqlpower/architect/enterprise/ServerInfoProvider.java Mon May 17 08:22:11 2010 +++ /trunk/src/main/java/ca/sqlpower/architect/enterprise/ServerInfoProvider.java Thu Aug 12 08:23:09 2010
@@ -26,8 +26,9 @@
 import java.util.HashMap;
 import java.util.Map;

-import javax.swing.JOptionPane;
 import javax.swing.SwingUtilities;
+import javax.swing.event.HyperlinkEvent;
+import javax.swing.event.HyperlinkListener;

 import org.apache.http.auth.AuthScope;
 import org.apache.http.auth.UsernamePasswordCredentials;
@@ -43,11 +44,15 @@

 import ca.sqlpower.enterprise.client.SPServerInfo;
 import ca.sqlpower.enterprise.client.ServerProperties;
+import ca.sqlpower.util.BrowserUtil;
+import ca.sqlpower.util.HTMLUserPrompter;
+import ca.sqlpower.util.UserPrompter.UserPromptOptions;
+import ca.sqlpower.util.UserPrompter.UserPromptResponse;
 import ca.sqlpower.util.Version;

 public abstract class ServerInfoProvider {

- public static final String defaultWatermarkMessage = "This version of SQL Power Architect is for EVALUATION PURPOSES ONLY. To obtain a full Production License, please visit www.sqlpower.ca/architect-e"; + public static final String defaultWatermarkMessage = "<html>This version of SQL Power Architect is for EVALUATION PURPOSES ONLY. To obtain a full Production License, please visit <a href=\"http://www.sqlpower.ca/architect-e\";>www.sqlpower.ca/architect-e</a></html>";

private static Map<String,Version> version = new HashMap<String, Version>();

@@ -146,11 +151,28 @@
                        if (!licensedServer) {
                                SwingUtilities.invokeLater(new Runnable() {
                                        public void run() {
-                                               JOptionPane.showMessageDialog(
-                                                               null,
-                                                               
watermarkMessage,
-                                                               "SQL Power Architect 
Server License",
-                                                               
JOptionPane.WARNING_MESSAGE);
+                                           HyperlinkListener hyperlinkListener 
= new HyperlinkListener() {
+                            @Override
+                            public void hyperlinkUpdate(HyperlinkEvent e) {
+                                try {
+ if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
+                                        if (e.getURL() != null) {
+ BrowserUtil.launch(e.getURL().toString());
+                                        }
+                                    }
+                                } catch (IOException ex) {
+                                    throw new RuntimeException(ex);
+                                }
+                            }
+                        };
+                                           HTMLUserPrompter htmlPrompter = new 
HTMLUserPrompter(
+                                                   UserPromptOptions.OK,
+                                                   UserPromptResponse.OK,
+                                                   null,
+                                                   watermarkMessage,
+                                                   hyperlinkListener,
+                                                   "OK");
+                                           htmlPrompter.promptUser("");
                                        }
                                });
                        }

Reply via email to