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("");
}
});
}