@@ -12,6 +12,7 @@ import java.awt.GridBagConstraints
1212import java.awt.Dimension
1313import java.awt.GridBagLayout
1414import java.awt.Point
15+ import java.awt.event.*
1516
1617// import javax.swing.*
1718import javax.swing.border.EmptyBorder
@@ -20,6 +21,11 @@ import javax.swing.border.CompoundBorder
2021import javax.swing.SwingUtilities as SU
2122import javax.swing.JPanel
2223
24+
25+ import java.awt.Desktop
26+ import javax.swing.event.HyperlinkEvent
27+ import javax.swing.event.HyperlinkListener
28+
2329import groovy.swing.SwingBuilder
2430
2531import org.freeplane.core.ui.components.UITools as ui
@@ -100,16 +106,27 @@ class ToM_ui{
100106 }
101107
102108 def static createInstructionsPane (String html ){
103- swing. editorPane(
109+ def editor = swing. editorPane(
104110 editable : false ,
105111 contentType : " text/html" ,
106112 text : html,
107113 // margin : new Insets(30,10,30,10),
108- // border : new EmptyBorder(6 , 10, 6, 10 ), //new LineBorder(Color.black, 1),
109- border : new CompoundBorder (new LineBorder (Color . gray, 1 ),new EmptyBorder (5 , 10 , 5 , 10 ))
114+ border : new EmptyBorder (2 , 10 , 2 , 0 ), // new LineBorder(Color.black, 1),
115+ // border : new CompoundBorder(new LineBorder(Color.gray, 1),new EmptyBorder(5, 10, 5, 10))
110116 // preferredSize: new Dimension(minContentPaneWidth, 500),
111117 // lineWrap : true
112118 )
119+ editor. addHyperlinkListener(e -> {
120+ if (HyperlinkEvent.EventType . ACTIVATED . equals(e. getEventType())) {
121+ Desktop desktop = Desktop . getDesktop();
122+ try {
123+ desktop. browse(e. getURL(). toURI());
124+ } catch (Exception ex) {
125+ ex. printStackTrace();
126+ }
127+ }
128+ })
129+ return editor
113130 }
114131
115132 def static resizeContentPanel (comp , height ){
0 commit comments