1.1 --- a/lib/jedit/plugin/isabelle/IsabelleParser.scala Sun Aug 24 18:57:43 2008 +0200
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,61 +0,0 @@
1.4 -/* Title: jedit/plugin/IsabelleParser.scala
1.5 - ID: $Id$
1.6 - Author: Makarius
1.7 -
1.8 -Isabelle parser setup for Sidekick plugin.
1.9 -*/
1.10 -
1.11 -package isabelle.jedit
1.12 -
1.13 -import javax.swing.text.Position
1.14 -import javax.swing.tree.DefaultMutableTreeNode
1.15 -import javax.swing.tree.DefaultTreeModel
1.16 -
1.17 -import org.gjt.sp.jedit.Buffer
1.18 -import org.gjt.sp.util.Log
1.19 -
1.20 -import sidekick.Asset
1.21 -import sidekick.SideKickParsedData
1.22 -import sidekick.SideKickParser
1.23 -import errorlist.DefaultErrorSource
1.24 -
1.25 -
1.26 -private class IsabelleAsset(name: String, content: String) extends Asset(name)
1.27 -{
1.28 - override def getShortString() = { name }
1.29 - override def getLongString() = { content }
1.30 - override def getIcon() = { null }
1.31 -}
1.32 -
1.33 -
1.34 -class IsabelleParser extends SideKickParser("isabelle") {
1.35 - private var stopped = false
1.36 -
1.37 - override def stop () { stopped = true }
1.38 -
1.39 - def parse(buffer: Buffer, e: DefaultErrorSource): SideKickParsedData = {
1.40 - stopped = false
1.41 -
1.42 - var text: String = null
1.43 - var data: SideKickParsedData = null
1.44 -
1.45 - try {
1.46 - buffer.readLock()
1.47 - text = buffer.getText(0, buffer.getLength())
1.48 - data = new SideKickParsedData(buffer.getName())
1.49 -
1.50 - val asset = new IsabelleAsset("theory", null)
1.51 - asset.setStart(buffer.createPosition(0))
1.52 - asset.setEnd(buffer.createPosition(buffer.getLength()))
1.53 -
1.54 - val node = new DefaultMutableTreeNode(asset)
1.55 - data.root.insert(node, node.getChildCount())
1.56 -
1.57 - } finally {
1.58 - buffer.readUnlock()
1.59 - }
1.60 -
1.61 - data
1.62 - }
1.63 -}
1.64 -