From: <kp...@us...> - 2010-08-24 12:45:27
|
Revision: 18407 http://jedit.svn.sourceforge.net/jedit/?rev=18407&view=rev Author: kpouer Date: 2010-08-24 12:45:21 +0000 (Tue, 24 Aug 2010) Log Message: ----------- fix mib tree construction done in a Work thread Modified Paths: -------------- plugins/MibSideKick/trunk/docs/MibSideKick.html plugins/MibSideKick/trunk/src/gatchan/jedit/mibsidekick/MibSidekickParser.java Modified: plugins/MibSideKick/trunk/docs/MibSideKick.html =================================================================== --- plugins/MibSideKick/trunk/docs/MibSideKick.html 2010-08-24 11:27:04 UTC (rev 18406) +++ plugins/MibSideKick/trunk/docs/MibSideKick.html 2010-08-24 12:45:21 UTC (rev 18407) @@ -11,7 +11,7 @@ <tr> <td valign="top" style="font-weight:bold;font-size:x-large">MibSideKick</td> <td align="right" valign="top" style="font-size:small"> - <span style="font-weight:bold">Version 1.2.1 (Jul 23, 2010)</span><br> + <span style="font-weight:bold">Version 1.2.2 (Aug 24, 2010)</span><br> Matthieu Casanova <cho...@gm...> </td> </tr> </table> @@ -47,9 +47,10 @@ </tbody> </table> <ul> - <li>1.2.1 (Jul 23, 2010)</li> + <li>1.2.1 (Aug 24, 2010)</li> <ul> <li>Fixed NPE when import paths doesn't exist</li> + <li>Fixed mib tree construction not being done in AWT Thread resulting in some exceptions when using Substance Look & Feel</li> </ul> <li>1.2.0 (Apr 23, 2009)</li> <ul> Modified: plugins/MibSideKick/trunk/src/gatchan/jedit/mibsidekick/MibSidekickParser.java =================================================================== --- plugins/MibSideKick/trunk/src/gatchan/jedit/mibsidekick/MibSidekickParser.java 2010-08-24 11:27:04 UTC (rev 18406) +++ plugins/MibSideKick/trunk/src/gatchan/jedit/mibsidekick/MibSidekickParser.java 2010-08-24 12:45:21 UTC (rev 18407) @@ -29,13 +29,16 @@ import net.percederberg.mibble.browser.MibTreeBuilder; import org.gjt.sp.jedit.Buffer; import org.gjt.sp.util.Log; +import org.gjt.sp.util.ThreadUtilities; import sidekick.SideKickParsedData; import sidekick.SideKickParser; import javax.swing.tree.MutableTreeNode; import javax.swing.tree.TreeModel; import javax.swing.text.Segment; +import java.awt.*; import java.io.*; +import java.lang.reflect.InvocationTargetException; import java.util.Iterator; import java.util.Collection; @@ -70,18 +73,25 @@ } // loader.addResourceDir("mibs/iana"); // loader.addResourceDir("mibs/ietf"); - Mib mib = loader.load(file); - SideKickParsedData datas = new SideKickParsedData(buffer.getPath()); - MibTreeBuilder tree = MibTreeBuilder.getInstance(); - tree.addMib(mib); - TreeModel model = tree.getTree().getModel(); - Object root = model.getRoot(); - int count = model.getChildCount(root); - for (int i = 0; i < count; i++) + final Mib mib = loader.load(file); + final SideKickParsedData datas = new SideKickParsedData(buffer.getPath()); + final MibTreeBuilder tree = MibTreeBuilder.getInstance(); + Runnable runnable = new Runnable() { - Object child = model.getChild(root, i); - datas.root.add((MutableTreeNode) child); - } + public void run() + { + tree.addMib(mib); + TreeModel model = tree.getTree().getModel(); + Object root = model.getRoot(); + int count = model.getChildCount(root); + for (int i = 0; i < count; i++) + { + Object child = model.getChild(root, i); + datas.root.add((MutableTreeNode) child); + } + } + }; + EventQueue.invokeAndWait(runnable); return datas; } catch (IOException e) @@ -113,6 +123,12 @@ } + catch (InterruptedException e) + { + } + catch (InvocationTargetException e) + { + } return null; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |