lib/jedit/plugin/isabelle_parser.scala
changeset 28048 05d9a05f9d15
parent 27988 efc6d38d16d2
equal deleted inserted replaced
28047:8dcf4349cf6f 28048:05d9a05f9d15
     9 
     9 
    10 import javax.swing.text.Position
    10 import javax.swing.text.Position
    11 import javax.swing.tree.DefaultMutableTreeNode
    11 import javax.swing.tree.DefaultMutableTreeNode
    12 import javax.swing.tree.DefaultTreeModel
    12 import javax.swing.tree.DefaultTreeModel
    13 
    13 
    14 import org.gjt.sp.jedit.Buffer
    14 import org.gjt.sp.jedit.{Buffer, EditPane}
    15 import org.gjt.sp.util.Log
    15 import org.gjt.sp.util.Log
    16 
    16 
    17 import sidekick.Asset
       
    18 import sidekick.SideKickParsedData
       
    19 import sidekick.SideKickParser
       
    20 import errorlist.DefaultErrorSource
    17 import errorlist.DefaultErrorSource
       
    18 import sidekick.{Asset, SideKickParser, SideKickParsedData, SideKickCompletion}
    21 
    19 
    22 
    20 
    23 private class IsabelleAsset(name: String, content: String) extends Asset(name)
    21 private class IsabelleAsset(name: String, content: String) extends Asset(name)
    24 {
    22 {
    25   override def getShortString() = { name }
    23   override def getShortString() = { name }
    27   override def getIcon() = { null }
    25   override def getIcon() = { null }
    28 }
    26 }
    29 
    27 
    30 
    28 
    31 class IsabelleParser extends SideKickParser("isabelle") {
    29 class IsabelleParser extends SideKickParser("isabelle") {
       
    30 
       
    31   /* parsing */
       
    32 
    32   private var stopped = false
    33   private var stopped = false
    33 
    34 
    34   override def stop () { stopped = true }
    35   override def stop () { stopped = true }
    35 
    36 
    36   def parse(buffer: Buffer, e: DefaultErrorSource): SideKickParsedData = {
    37   def parse(buffer: Buffer, e: DefaultErrorSource): SideKickParsedData = {
    56       buffer.readUnlock()
    57       buffer.readUnlock()
    57     }
    58     }
    58 
    59 
    59     data
    60     data
    60   }
    61   }
       
    62 
       
    63 
       
    64   /* completion */
       
    65 
       
    66   override def supportsCompletion = true
       
    67   override def canCompleteAnywhere = true
       
    68 
       
    69   override def complete(pane: EditPane, caret: Int): SideKickCompletion = null
       
    70 
    61 }
    71 }
    62 
    72