src/Tools/jEdit/src/jedit/IsabelleSideKickParser.scala
changeset 34526 b504abb6eff6
parent 34503 7d0726f19d04
child 34554 7dc6c231da40
equal deleted inserted replaced
34525:452a588f7954 34526:b504abb6eff6
    30     val data = new SideKickParsedData(buffer.getName)
    30     val data = new SideKickParsedData(buffer.getName)
    31 
    31 
    32     val prover_setup = Isabelle.plugin.prover_setup(buffer)
    32     val prover_setup = Isabelle.plugin.prover_setup(buffer)
    33     if (prover_setup.isDefined) {
    33     if (prover_setup.isDefined) {
    34         val document = prover_setup.get.prover.document
    34         val document = prover_setup.get.prover.document
    35         val commands = document.commands
    35         for (command <- document.commands)
    36         while (!stopped && commands.hasNext) {
    36           data.root.add(command.root_node.swing_node)
    37           data.root.add(commands.next.root_node.swing_node)
    37         
    38         }
       
    39         if (stopped) data.root.add(new DefaultMutableTreeNode("<parser stopped>"))
    38         if (stopped) data.root.add(new DefaultMutableTreeNode("<parser stopped>"))
    40     } else {
    39     } else {
    41       data.root.add(new DefaultMutableTreeNode("<buffer inactive>"))
    40       data.root.add(new DefaultMutableTreeNode("<buffer inactive>"))
    42     }
    41     }
    43 
    42 
    49 
    48 
    50   override def supportsCompletion = true
    49   override def supportsCompletion = true
    51   override def canCompleteAnywhere = true
    50   override def canCompleteAnywhere = true
    52   override def getInstantCompletionTriggers = "\\"
    51   override def getInstantCompletionTriggers = "\\"
    53 
    52 
    54   override def complete(pane: EditPane, caret: Int): SideKickCompletion = {
    53   override def complete(pane: EditPane, caret: Int): SideKickCompletion = null /*{
    55     val buffer = pane.getBuffer
    54     val buffer = pane.getBuffer
    56     val ps = Isabelle.prover_setup(buffer)
    55     val ps = Isabelle.prover_setup(buffer)
    57     if (ps.isDefined) {
    56     if (ps.isDefined) {
    58       val completions = ps.get.prover.completions
    57       val completions = ps.get.prover.completions
    59       def before_caret(i : Int) = buffer.getText(0 max caret - i, i)
    58       def before_caret(i : Int) = buffer.getText(0 max caret - i, i)
    81         list.add(decoded)
    80         list.add(decoded)
    82         if (decoded != s) descriptions.add(s) else descriptions.add(null)
    81         if (decoded != s) descriptions.add(s) else descriptions.add(null)
    83       }
    82       }
    84       return new IsabelleSideKickCompletion(pane.getView, text, list, descriptions)
    83       return new IsabelleSideKickCompletion(pane.getView, text, list, descriptions)
    85     } else return null
    84     } else return null
    86   }
    85   }*/
    87 
    86 
    88 }
    87 }
    89 
    88 
    90 private class IsabelleSideKickCompletion(view: View, text: String,
    89 private class IsabelleSideKickCompletion(view: View, text: String,
    91                                          items: java.util.List[String],
    90                                          items: java.util.List[String],