Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CUP Eclipse Plugin
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Dr. Michael Petter
CUP Eclipse Plugin
Commits
69f5e1f7
Commit
69f5e1f7
authored
Feb 23, 2016
by
Michael Schwarz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove unneccessary import projectwide
parent
d76727b3
Changes
38
Hide whitespace changes
Inline
Side-by-side
Showing
38 changed files
with
107 additions
and
205 deletions
+107
-205
CupPlugin/src/de/tum/in/www2/cupplugin/Activator.java
CupPlugin/src/de/tum/in/www2/cupplugin/Activator.java
+1
-1
CupPlugin/src/de/tum/in/www2/cupplugin/PluginUtility.java
CupPlugin/src/de/tum/in/www2/cupplugin/PluginUtility.java
+4
-4
CupPlugin/src/de/tum/in/www2/cupplugin/commands/OpenDeclarationHandler.java
...um/in/www2/cupplugin/commands/OpenDeclarationHandler.java
+1
-0
CupPlugin/src/de/tum/in/www2/cupplugin/commands/OpenDefinitionHandler.java
...tum/in/www2/cupplugin/commands/OpenDefinitionHandler.java
+1
-0
CupPlugin/src/de/tum/in/www2/cupplugin/commands/RenameSymbolHandler.java
...e/tum/in/www2/cupplugin/commands/RenameSymbolHandler.java
+1
-0
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/GraphHelper.java
...tum/in/www2/cupplugin/conflictresolution/GraphHelper.java
+1
-6
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/PrecedenceToInsert.java
...www2/cupplugin/conflictresolution/PrecedenceToInsert.java
+3
-7
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ReduceReduceReorder.java
...ww2/cupplugin/conflictresolution/ReduceReduceReorder.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ReordersToDo.java
...um/in/www2/cupplugin/conflictresolution/ReordersToDo.java
+2
-7
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ResolutionStrategy.java
...www2/cupplugin/conflictresolution/ResolutionStrategy.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/debug/BreakpointMapper.java
.../src/de/tum/in/www2/cupplugin/debug/BreakpointMapper.java
+1
-1
CupPlugin/src/de/tum/in/www2/cupplugin/debug/Debugger.java
CupPlugin/src/de/tum/in/www2/cupplugin/debug/Debugger.java
+3
-3
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupContentAssistProcessor.java
.../in/www2/cupplugin/editors/CupContentAssistProcessor.java
+2
-1
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupContentOutlinePage.java
.../tum/in/www2/cupplugin/editors/CupContentOutlinePage.java
+22
-4
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupDocumentListener.java
...de/tum/in/www2/cupplugin/editors/CupDocumentListener.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupHyperlinkDetector.java
...e/tum/in/www2/cupplugin/editors/CupHyperlinkDetector.java
+0
-8
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupPartionScanner.java
...c/de/tum/in/www2/cupplugin/editors/CupPartionScanner.java
+1
-1
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupSourceViewerConfiguration.java
.../www2/cupplugin/editors/CupSourceViewerConfiguration.java
+1
-26
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupTextEditor.java
...n/src/de/tum/in/www2/cupplugin/editors/CupTextEditor.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupTextHover.java
...in/src/de/tum/in/www2/cupplugin/editors/CupTextHover.java
+1
-2
CupPlugin/src/de/tum/in/www2/cupplugin/editors/Jumper.java
CupPlugin/src/de/tum/in/www2/cupplugin/editors/Jumper.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/editors/MultiPageEditor.java
...src/de/tum/in/www2/cupplugin/editors/MultiPageEditor.java
+8
-3
CupPlugin/src/de/tum/in/www2/cupplugin/editors/MultiPageEditorContributor.java
...in/www2/cupplugin/editors/MultiPageEditorContributor.java
+1
-6
CupPlugin/src/de/tum/in/www2/cupplugin/views/BuildfileUpdater.java
.../src/de/tum/in/www2/cupplugin/views/BuildfileUpdater.java
+3
-1
CupPlugin/src/de/tum/in/www2/cupplugin/views/ConflictPanel.java
...gin/src/de/tum/in/www2/cupplugin/views/ConflictPanel.java
+10
-12
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupActionTableView.java
...rc/de/tum/in/www2/cupplugin/views/CupActionTableView.java
+0
-7
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupConflictGraphView.java
.../de/tum/in/www2/cupplugin/views/CupConflictGraphView.java
+1
-11
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupConflictsView.java
.../src/de/tum/in/www2/cupplugin/views/CupConflictsView.java
+10
-21
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupGraphBase.java
...ugin/src/de/tum/in/www2/cupplugin/views/CupGraphBase.java
+0
-3
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupOverviewView.java
...n/src/de/tum/in/www2/cupplugin/views/CupOverviewView.java
+0
-4
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupReduceGraphView.java
...rc/de/tum/in/www2/cupplugin/views/CupReduceGraphView.java
+2
-25
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupReduceTableView.java
...rc/de/tum/in/www2/cupplugin/views/CupReduceTableView.java
+1
-1
CupPlugin/src/de/tum/in/www2/cupplugin/widgets/ConflictStateTooltip.java
...e/tum/in/www2/cupplugin/widgets/ConflictStateTooltip.java
+0
-6
CupPlugin/src/de/tum/in/www2/cupplugin/widgets/MultipleTextTooltipBase.java
...um/in/www2/cupplugin/widgets/MultipleTextTooltipBase.java
+0
-1
CupPlugin/src/de/tum/in/www2/cupplugin/widgets/StateTooltip.java
...in/src/de/tum/in/www2/cupplugin/widgets/StateTooltip.java
+0
-5
CupPlugin/src/de/tum/in/www2/cupplugin/widgets/TooltipBase.java
...gin/src/de/tum/in/www2/cupplugin/widgets/TooltipBase.java
+0
-4
CupPlugin/src/de/tum/in/www2/cupplugin/wizards/CupFileWizard.java
...n/src/de/tum/in/www2/cupplugin/wizards/CupFileWizard.java
+20
-13
CupPlugin/src/de/tum/in/www2/cupplugin/wizards/CupJavaProjectWizard.java
...e/tum/in/www2/cupplugin/wizards/CupJavaProjectWizard.java
+6
-6
No files found.
CupPlugin/src/de/tum/in/www2/cupplugin/Activator.java
View file @
69f5e1f7
...
...
@@ -2,11 +2,11 @@ package de.tum.in.www2.cupplugin;
import
org.eclipse.core.resources.IResourceChangeEvent
;
import
org.eclipse.core.resources.IResourceChangeListener
;
import
org.eclipse.core.resources.IWorkspace
;
import
org.eclipse.core.resources.ResourcesPlugin
;
import
org.eclipse.jface.resource.ImageDescriptor
;
import
org.eclipse.ui.plugin.AbstractUIPlugin
;
import
org.osgi.framework.BundleContext
;
import
org.eclipse.core.resources.IWorkspace
;
import
de.tum.in.www2.cupplugin.debug.Debugger
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/PluginUtility.java
View file @
69f5e1f7
...
...
@@ -3,14 +3,14 @@ package de.tum.in.www2.cupplugin;
import
org.eclipse.core.commands.ExecutionEvent
;
import
org.eclipse.core.commands.ExecutionException
;
import
org.eclipse.core.resources.IFile
;
import
org.eclipse.swt.widgets.MessageBox
;
import
org.eclipse.ui.PlatformUI
;
import
org.eclipse.ui.handlers.HandlerUtil
;
import
org.eclipse.ui.texteditor.IDocumentProvider
;
import
org.eclipse.jface.text.BadLocationException
;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.jface.text.ITextSelection
;
import
org.eclipse.jface.text.source.ISourceViewer
;
import
org.eclipse.swt.widgets.MessageBox
;
import
org.eclipse.ui.PlatformUI
;
import
org.eclipse.ui.handlers.HandlerUtil
;
import
org.eclipse.ui.texteditor.IDocumentProvider
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/commands/OpenDeclarationHandler.java
View file @
69f5e1f7
...
...
@@ -3,6 +3,7 @@ package de.tum.in.www2.cupplugin.commands;
import
org.eclipse.core.commands.AbstractHandler
;
import
org.eclipse.core.commands.ExecutionEvent
;
import
org.eclipse.core.commands.ExecutionException
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/commands/OpenDefinitionHandler.java
View file @
69f5e1f7
...
...
@@ -4,6 +4,7 @@ import org.eclipse.core.commands.AbstractHandler;
import
org.eclipse.core.commands.ExecutionEvent
;
import
org.eclipse.core.commands.ExecutionException
;
import
org.eclipse.jface.text.IDocument
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/commands/RenameSymbolHandler.java
View file @
69f5e1f7
...
...
@@ -17,6 +17,7 @@ import org.eclipse.swt.widgets.Label;
import
org.eclipse.swt.widgets.Shell
;
import
org.eclipse.swt.widgets.Text
;
import
org.eclipse.ui.PlatformUI
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.analysis.Visitor
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/GraphHelper.java
View file @
69f5e1f7
...
...
@@ -3,14 +3,9 @@ import java.util.Collections;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.LinkedList
;
import
java.util.
List
;
import
java.util.
Map.Entry
;
import
java.util.Set
;
import
java.util.Stack
;
import
java.util.Map.Entry
;
import
de.in.tum.www2.cup.Conflict
;
import
de.in.tum.www2.cup.internal.terminal
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView.ShiftReduceDetails
;
public
abstract
class
GraphHelper
<
X
>
{
// Edges are stored in reverse order (i.e. there is a edge from a to b iff b has a explicit
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/PrecedenceToInsert.java
View file @
69f5e1f7
package
de.tum.in.www2.cupplugin.conflictresolution
;
import
java.util.Collections
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.Stack
;
import
java.util.Map.Entry
;
import
java.util.Stack
;
import
de.in.tum.www2.cup.Conflict
;
import
de.in.tum.www2.cup.ReduceReduceConflict
;
import
de.in.tum.www2.cup.ShiftReduceConflict
;
import
de.in.tum.www2.cup.ast.Precedence
;
import
de.in.tum.www2.cup.internal.terminal
;
import
de.tum.in.www2.cupplugin.Pair
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView.ShiftReduceDetails
;
class
PrecedenceToInsert
extends
GraphHelper
<
terminal
>
implements
ResolutionStrategy
{
public
class
PrecedenceToInsert
extends
GraphHelper
<
terminal
>
implements
ResolutionStrategy
{
private
HashMap
<
terminal
,
Precedence
.
Type
>
precs
=
new
HashMap
<>();
// These need to be inserted whenever an edge that contains the key is to be inserted
...
...
@@ -26,7 +22,7 @@ class PrecedenceToInsert extends GraphHelper<terminal> implements ResolutionStra
private
LinkedList
<
Pair
<
terminal
,
Precedence
.
Type
>>
result
;
// Exception can not be moved to GraphHelper as that is generic and because Java
class
PrecedenceCyclicException
extends
Exception
{
public
class
PrecedenceCyclicException
extends
Exception
{
/**
* Every Exception is expected to have one of those
*/
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ReduceReduceReorder.java
View file @
69f5e1f7
...
...
@@ -7,7 +7,6 @@ import java.util.List;
import
org.eclipse.jface.text.BadLocationException
;
import
org.eclipse.jface.text.IDocument
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.Production
;
import
de.in.tum.www2.cup.ast.ProductionRight
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ReordersToDo.java
View file @
69f5e1f7
...
...
@@ -4,19 +4,14 @@ import java.util.HashMap;
import
java.util.HashSet
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Stack
;
import
java.util.Map.Entry
;
import
java.util.Stack
;
import
de.in.tum.www2.cup.Conflict
;
import
de.in.tum.www2.cup.ReduceReduceConflict
;
import
de.in.tum.www2.cup.ShiftReduceConflict
;
import
de.in.tum.www2.cup.ast.Precedence
;
import
de.in.tum.www2.cup.internal.internal_error
;
import
de.in.tum.www2.cup.internal.lalr_item
;
import
de.in.tum.www2.cup.internal.lr_item_core
;
import
de.in.tum.www2.cup.internal.terminal
;
import
de.tum.in.www2.cupplugin.Pair
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView.ShiftReduceDetails
;
public
class
ReordersToDo
extends
GraphHelper
<
lr_item_core
>
implements
ResolutionStrategy
{
...
...
@@ -26,7 +21,7 @@ public class ReordersToDo extends GraphHelper<lr_item_core> implements Resolutio
edges
=
new
HashMap
<>();
}
class
OrderCyclicException
extends
Exception
{
public
class
OrderCyclicException
extends
Exception
{
/**
* Every Exception is expected to have one of those
*/
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/conflictresolution/ResolutionStrategy.java
View file @
69f5e1f7
package
de.tum.in.www2.cupplugin.conflictresolution
;
import
de.in.tum.www2.cup.Conflict
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView.ShiftReduceDetails
;
public
interface
ResolutionStrategy
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/debug/BreakpointMapper.java
View file @
69f5e1f7
...
...
@@ -2,10 +2,10 @@ package de.tum.in.www2.cupplugin.debug;
import
java.io.BufferedReader
;
import
java.io.InputStreamReader
;
import
java.util.List
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/debug/Debugger.java
View file @
69f5e1f7
...
...
@@ -11,9 +11,6 @@ import org.eclipse.debug.core.IBreakpointManager;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.swt.widgets.Display
;
import
de.tum.in.www2.cupplugin.editors.CupTextEditor
;
import
de.tum.in.www2.cupplugin.editors.RevisionManager
;
import
de.tum.in.www2.cupplugin.model.Model
;
import
de.in.tum.www2.cup.CupParser
;
import
de.in.tum.www2.cup.NoopErrorReporter
;
import
de.in.tum.www2.cup.analysis.FindNextCodeBlockLineVisitor
;
...
...
@@ -21,6 +18,9 @@ import de.in.tum.www2.cup.analysis.GetDebuggerMappingVisitor;
import
de.in.tum.www2.cup.analysis.GetDebuggerMappingVisitor.Mapping
;
import
de.in.tum.www2.cup.ast.ClassName
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.tum.in.www2.cupplugin.editors.CupTextEditor
;
import
de.tum.in.www2.cupplugin.editors.RevisionManager
;
import
de.tum.in.www2.cupplugin.model.Model
;
public
class
Debugger
{
private
static
final
String
DEFAULT_CLASS
=
"Parser"
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupContentAssistProcessor.java
View file @
69f5e1f7
...
...
@@ -18,7 +18,8 @@ import de.in.tum.www2.cup.CupSymbol;
import
de.in.tum.www2.cup.Declarations
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.tum.in.www2.cupplugin.IDisposable
;
import
de.tum.in.www2.cupplugin.model.*
;
import
de.tum.in.www2.cupplugin.model.ICupParserASTChangeObserver
;
import
de.tum.in.www2.cupplugin.model.Model
;
@SuppressWarnings
(
"restriction"
)
public
class
CupContentAssistProcessor
implements
IContentAssistProcessor
,
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupContentOutlinePage.java
View file @
69f5e1f7
...
...
@@ -30,14 +30,32 @@ import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.Utility
;
import
de.in.tum.www2.cup.analysis.*
;
import
de.in.tum.www2.cup.ast.*
;
import
de.in.tum.www2.cup.analysis.Visitor
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
import
de.in.tum.www2.cup.ast.ActionCodeBlock
;
import
de.in.tum.www2.cup.ast.ClassName
;
import
de.in.tum.www2.cup.ast.CodeBlock
;
import
de.in.tum.www2.cup.ast.Import
;
import
de.in.tum.www2.cup.ast.Name
;
import
de.in.tum.www2.cup.ast.NonTerminal
;
import
de.in.tum.www2.cup.ast.NonTerminalDeclaration
;
import
de.in.tum.www2.cup.ast.Package
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.Precedence
;
import
de.in.tum.www2.cup.ast.Production
;
import
de.in.tum.www2.cup.ast.ProductionRight
;
import
de.in.tum.www2.cup.ast.SpecialCodeBlock
;
import
de.in.tum.www2.cup.ast.StartWith
;
import
de.in.tum.www2.cup.ast.Terminal
;
import
de.in.tum.www2.cup.ast.TerminalDeclaration
;
import
de.in.tum.www2.cup.ast.TypedNonTerminalDeclaration
;
import
de.in.tum.www2.cup.ast.TypedTerminalDeclaration
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
import
de.tum.in.www2.cupplugin.controller.JobStatus
;
import
de.tum.in.www2.cupplugin.model.*
;
import
de.tum.in.www2.cupplugin.model.ICupParserASTChangeObserver
;
import
de.tum.in.www2.cupplugin.model.Model
;
// TODO: try changing to IContentOutlinePage and using a virtual view!
public
class
CupContentOutlinePage
extends
ContentOutlinePage
implements
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupDocumentListener.java
View file @
69f5e1f7
...
...
@@ -5,7 +5,6 @@ import org.eclipse.jface.text.DocumentEvent;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.jface.text.IDocumentListener
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.analysis.LocationPatchVisitor
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupHyperlinkDetector.java
View file @
69f5e1f7
...
...
@@ -3,27 +3,19 @@ package de.tum.in.www2.cupplugin.editors;
import
java.util.ArrayList
;
import
java.util.List
;
import
javax.swing.text.BadLocationException
;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.jface.text.IRegion
;
import
org.eclipse.jface.text.ITextViewer
;
import
org.eclipse.jface.text.Region
;
import
org.eclipse.jface.text.hyperlink.IHyperlink
;
import
org.eclipse.jface.text.hyperlink.IHyperlinkDetector
;
import
org.eclipse.swt.custom.StyleRange
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.analysis.Visitor
;
import
de.in.tum.www2.cup.analysis.WildcardVisitor
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
import
de.in.tum.www2.cup.ast.IHasDeclarationReference
;
import
de.in.tum.www2.cup.ast.IHasDefinitionReference
;
import
de.in.tum.www2.cup.ast.IWithName
;
import
de.in.tum.www2.cup.ast.Name
;
import
de.in.tum.www2.cup.ast.NonTerminal
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.Production
;
public
class
CupHyperlinkDetector
implements
IHyperlinkDetector
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupPartionScanner.java
View file @
69f5e1f7
...
...
@@ -11,9 +11,9 @@ import org.eclipse.jface.text.rules.IRule;
import
org.eclipse.jface.text.rules.IToken
;
import
org.eclipse.jface.text.rules.IWordDetector
;
import
org.eclipse.jface.text.rules.MultiLineRule
;
import
org.eclipse.jface.text.rules.WordRule
;
import
org.eclipse.jface.text.rules.RuleBasedPartitionScanner
;
import
org.eclipse.jface.text.rules.Token
;
import
org.eclipse.jface.text.rules.WordRule
;
public
class
CupPartionScanner
extends
RuleBasedPartitionScanner
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupSourceViewerConfiguration.java
View file @
69f5e1f7
package
de.tum.in.www2.cupplugin.editors
;
import
java.io.IOException
;
import
java.io.StringReader
;
import
java.util.Collections
;
import
java.util.EnumSet
;
import
java.util.HashSet
;
import
java.util.Set
;
import
java.util.WeakHashMap
;
import
org.eclipse.swt.widgets.Shell
;
import
org.eclipse.jface.text.BadLocationException
;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.jface.text.IInformationControlCreator
;
import
org.eclipse.jface.text.IInformationControl
;
import
org.eclipse.jface.text.ITextHover
;
import
org.eclipse.jface.text.TextAttribute
;
import
org.eclipse.jface.text.contentassist.ContentAssistant
;
import
org.eclipse.jface.text.contentassist.IContentAssistProcessor
;
import
org.eclipse.jface.text.contentassist.IContentAssistant
;
import
org.eclipse.jface.text.hyperlink.IHyperlinkDetector
;
import
org.eclipse.jface.text.hyperlink.IHyperlinkPresenter
;
import
org.eclipse.jface.text.hyperlink.MultipleHyperlinkPresenter
;
import
org.eclipse.jface.text.presentation.PresentationReconciler
;
import
org.eclipse.jface.text.rules.DefaultDamagerRepairer
;
import
org.eclipse.jface.text.rules.IToken
;
import
org.eclipse.jface.text.rules.ITokenScanner
;
import
org.eclipse.jface.text.rules.RuleBasedScanner
;
import
org.eclipse.jface.text.rules.Token
;
import
org.eclipse.jface.text.source.ISourceViewer
;
import
org.eclipse.jface.text.source.SourceViewerConfiguration
;
import
org.eclipse.swt.SWT
;
import
de.in.tum.www2.cup.CupScanner
;
import
de.in.tum.www2.cup.CupSymbol
;
import
de.in.tum.www2.cup.Declarations
;
import
de.in.tum.www2.cup.NoopErrorReporter
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
import
de.in.tum.www2.cup.ast.ActionCodeBlock
;
import
de.in.tum.www2.cup.ast.IProductionRightPart
;
import
de.in.tum.www2.cup.ast.LabeledProductionSymbolRef
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.ProductionRight
;
import
de.in.tum.www2.java.JavaScanner
;
import
de.in.tum.www2.java.JavaSymbol
;
import
de.tum.in.www2.cupplugin.IDisposable
;
import
de.tum.in.www2.cupplugin.PluginUtility
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
import
de.tum.in.www2.cupplugin.controller.JobStatus
;
import
de.tum.in.www2.cupplugin.model.ICupParserASTChangeObserver
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupTextEditor.java
View file @
69f5e1f7
...
...
@@ -16,7 +16,6 @@ import org.eclipse.jface.text.source.SourceViewer;
import
org.eclipse.swt.custom.StyledText
;
import
org.eclipse.swt.graphics.Color
;
import
org.eclipse.swt.widgets.Display
;
import
org.eclipse.ui.IEditorInput
;
import
org.eclipse.ui.IWorkbenchPart
;
import
org.eclipse.ui.editors.text.TextEditor
;
import
org.eclipse.ui.texteditor.AbstractTextEditor
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/CupTextHover.java
View file @
69f5e1f7
...
...
@@ -13,13 +13,12 @@ import de.in.tum.www2.cup.ast.AbstractNode;
import
de.in.tum.www2.cup.ast.IHasDeclarationReference
;
import
de.in.tum.www2.cup.ast.NonTerminal
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.ProductionSymbolRef
;
import
de.in.tum.www2.cup.ast.Terminal
;
import
de.in.tum.www2.cup.ast.TypedNonTerminalDeclaration
;
import
de.in.tum.www2.cup.ast.TypedTerminalDeclaration
;
import
de.tum.in.www2.cupplugin.IDisposable
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
import
de.tum.in.www2.cupplugin.controller.JobStatus
;
import
de.tum.in.www2.cupplugin.model.ICupParserASTChangeObserver
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/Jumper.java
View file @
69f5e1f7
...
...
@@ -7,7 +7,6 @@ import org.eclipse.jface.text.IRegion;
import
de.in.tum.www2.cup.ConflictType
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.Range
;
import
de.tum.in.www2.cupplugin.PluginUtility
;
public
class
Jumper
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/MultiPageEditor.java
View file @
69f5e1f7
...
...
@@ -16,11 +16,17 @@ import org.eclipse.jface.text.IDocument;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.swt.widgets.Display
;
import
org.eclipse.ui.*
;
import
org.eclipse.ui.IEditorInput
;
import
org.eclipse.ui.IEditorPart
;
import
org.eclipse.ui.IEditorSite
;
import
org.eclipse.ui.IFileEditorInput
;
import
org.eclipse.ui.IWorkbenchActionConstants
;
import
org.eclipse.ui.IWorkbenchPage
;
import
org.eclipse.ui.PartInitException
;
import
org.eclipse.ui.ide.IDE
;
import
org.eclipse.ui.part.FileEditorInput
;
import
org.eclipse.ui.part.MultiPageEditorPart
;
import
org.eclipse.ui.texteditor.IDocumentProvider
;
import
org.eclipse.ui.ide.IDE
;
import
org.eclipse.zest.core.viewers.IZoomableWorkbenchPart
;
import
org.eclipse.zest.core.viewers.ZoomContributionViewItem
;
...
...
@@ -32,7 +38,6 @@ import de.in.tum.www2.cup.internal.parse_action_row;
import
de.in.tum.www2.cup.internal.parse_action_table
;
import
de.in.tum.www2.cup.internal.parse_reduce_row
;
import
de.in.tum.www2.cup.internal.parse_reduce_table
;
import
de.in.tum.www2.cup.internal.reduce_action
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/editors/MultiPageEditorContributor.java
View file @
69f5e1f7
package
de.tum.in.www2.cupplugin.editors
;
import
org.eclipse.jface.action.*
;
import
org.eclipse.jface.dialogs.MessageDialog
;
import
org.eclipse.jface.action.IAction
;
import
org.eclipse.ui.IActionBars
;
import
org.eclipse.ui.IEditorPart
;
import
org.eclipse.ui.IWorkbenchActionConstants
;
import
org.eclipse.ui.PlatformUI
;
import
org.eclipse.ui.actions.ActionFactory
;
import
org.eclipse.ui.ide.IDE
;
import
org.eclipse.ui.ide.IDEActionFactory
;
import
org.eclipse.ui.part.MultiPageEditorActionBarContributor
;
import
org.eclipse.ui.texteditor.ITextEditor
;
import
org.eclipse.ui.texteditor.ITextEditorActionConstants
;
import
org.eclipse.zest.core.viewers.ZoomContributionViewItem
;
public
class
MultiPageEditorContributor
extends
MultiPageEditorActionBarContributor
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/BuildfileUpdater.java
View file @
69f5e1f7
...
...
@@ -21,7 +21,9 @@ import org.eclipse.core.resources.IFile;
import
org.eclipse.core.resources.IProject
;
import
org.eclipse.core.runtime.CoreException
;
import
org.eclipse.core.runtime.Path
;
import
org.w3c.dom.*
;
import
org.w3c.dom.Attr
;
import
org.w3c.dom.Document
;
import
org.w3c.dom.Node
;
import
org.xml.sax.SAXException
;
public
class
BuildfileUpdater
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/ConflictPanel.java
View file @
69f5e1f7
...
...
@@ -29,10 +29,8 @@ import de.in.tum.www2.cup.CupConflictState;
import
de.in.tum.www2.cup.Range
;
import
de.in.tum.www2.cup.ReduceReduceConflict
;
import
de.in.tum.www2.cup.ShiftReduceConflict
;
import
de.in.tum.www2.cup.ast.IProductionRightPart
;
import
de.in.tum.www2.cup.ast.Precedence
;
import
de.in.tum.www2.cup.ast.ProductionRight
;
import
de.in.tum.www2.cup.ast.ProductionSymbolRef
;
import
de.in.tum.www2.cup.internal.internal_error
;
import
de.in.tum.www2.cup.internal.lalr_item
;
import
de.in.tum.www2.cup.internal.lalr_state
;
...
...
@@ -41,21 +39,21 @@ import de.in.tum.www2.cup.internal.terminal;
import
de.tum.in.www2.cupplugin.Colors
;
import
de.tum.in.www2.cupplugin.Pair
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert.PrecedenceCyclicException
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReduceReduceReorder
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReordersToDo
;
import
de.tum.in.www2.cupplugin.conflictresolution.ResolutionStrategy
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert.PrecedenceCyclicException
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReordersToDo.OrderCyclicException
;
import
de.tum.in.www2.cupplugin.conflictresolution.ResolutionStrategy
;
import
de.tum.in.www2.cupplugin.views.CupConflictsView.ShiftReduceDetails
;
class
ConflictPanel
extends
Composite
{
private
final
CupConflictsView
cupConflictsView
;
private
static
final
int
BASE_HEIGHT
=
100
;
private
static
final
int
COLUMNS
=
3
;
private
static
final
int
HEADING_FONT_SIZE
=
14
;
private
Conflict
conflict
;
private
ShiftReduceDetails
srdetails
;
// Null if conflict is not a shift-reduce conflict
private
final
CupConflictsView
cupConflictsView
;
private
static
final
int
BASE_HEIGHT
=
100
;
private
static
final
int
COLUMNS
=
3
;
private
static
final
int
HEADING_FONT_SIZE
=
14
;
private
Conflict
conflict
;
private
ShiftReduceDetails
srdetails
;
// Null if conflict is not a shift-reduce conflict
private
boolean
partOfCurrentConnected
=
false
;
private
boolean
forceEnableDropdown
=
false
;
...
...
@@ -259,7 +257,7 @@ class ConflictPanel extends Composite {
}
else
if
(
conflict
instanceof
ShiftReduceConflict
)
{
ShiftReduceConflict
src
=
(
ShiftReduceConflict
)
conflict
;
srdetails
=
this
.
cupConflictsView
.
new
ShiftReduceDetails
(
src
,
crm
);
srdetails
=
cupConflictsView
.
new
ShiftReduceDetails
(
src
,
crm
);
changeColors
(
backgroundColorShiftReduce
,
foregroundColorShiftReduce
);
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupActionTableView.java
View file @
69f5e1f7
...
...
@@ -11,27 +11,20 @@ import org.eclipse.jface.viewers.ILabelProviderListener;
import
org.eclipse.jface.viewers.IStructuredSelection
;
import
org.eclipse.jface.viewers.ITableLabelProvider
;
import
org.eclipse.jface.viewers.ITreeContentProvider
;
import
org.eclipse.jface.viewers.StyledCellLabelProvider
;
import
org.eclipse.jface.viewers.TableViewer
;
import
org.eclipse.jface.viewers.TreeViewer
;
import
org.eclipse.jface.viewers.Viewer
;
import
org.eclipse.jface.viewers.ViewerCell
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.events.MouseEvent
;
import
org.eclipse.swt.events.MouseListener
;
import
org.eclipse.swt.events.SelectionAdapter
;
import
org.eclipse.swt.events.SelectionEvent
;
import
org.eclipse.swt.graphics.Image
;
import
org.eclipse.swt.layout.FillLayout
;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.swt.widgets.Table
;
import
org.eclipse.swt.widgets.Tree
;
import
org.eclipse.swt.widgets.TreeColumn
;
import
org.eclipse.swt.widgets.TreeItem
;
import
de.in.tum.www2.cup.CupContext
;
import
de.in.tum.www2.cup.LALRResult
;
import
de.in.tum.www2.cup.internal.lalr_state
;
import
de.in.tum.www2.cup.internal.parse_action
;
import
de.in.tum.www2.cup.internal.parse_action_row
;
import
de.in.tum.www2.cup.internal.parse_action_table
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupConflictGraphView.java
View file @
69f5e1f7
...
...
@@ -4,21 +4,14 @@ import java.lang.reflect.Field;
import
java.lang.reflect.InvocationTargetException
;
import
java.lang.reflect.Method
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Collections
;
import
java.util.EnumSet
;
import
java.util.Enumeration
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Stack
;
import
org.eclipse.core.runtime.jobs.Job
;
import
org.eclipse.draw2d.IFigure
;
import
org.eclipse.draw2d.MarginBorder
;
import
org.eclipse.draw2d.geometry.Dimension
;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.jface.viewers.ArrayContentProvider
;
import
org.eclipse.jface.viewers.LabelProvider
;
...
...
@@ -38,7 +31,6 @@ import org.eclipse.swt.graphics.Rectangle;
import
org.eclipse.swt.layout.FillLayout
;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.layout.GridLayout
;
import
org.eclipse.swt.layout.RowLayout
;
import
org.eclipse.swt.widgets.Button
;
import
org.eclipse.swt.widgets.Combo
;
import
org.eclipse.swt.widgets.Composite
;
...
...
@@ -47,7 +39,6 @@ import org.eclipse.swt.widgets.Event;
import
org.eclipse.swt.widgets.Label
;
import
org.eclipse.swt.widgets.Link
;
import
org.eclipse.swt.widgets.Listener
;
import
org.eclipse.swt.widgets.ScrollBar
;
import
org.eclipse.zest.core.viewers.AbstractZoomableViewer
;
import
org.eclipse.zest.core.viewers.EntityConnectionData
;
import
org.eclipse.zest.core.viewers.GraphViewer
;
...
...
@@ -78,14 +69,13 @@ import de.in.tum.www2.cup.ReduceReduceConflict;
import
de.in.tum.www2.cup.ShiftReduceConflict
;
import
de.in.tum.www2.cup.ast.Symbol
;
import
de.in.tum.www2.cup.internal.lalr_state
;
import
de.in.tum.www2.cup.internal.lalr_transition
;
import
de.tum.in.www2.cupplugin.Colors
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
import
de.tum.in.www2.cupplugin.controller.JobStatus
;
import
de.tum.in.www2.cupplugin.editors.ICupEditorPageVisibility
;
import
de.tum.in.www2.cupplugin.editors.CupTextEditor
;
import
de.tum.in.www2.cupplugin.editors.ICupEditorPageVisibility
;
import
de.tum.in.www2.cupplugin.editors.Jumper
;
import
de.tum.in.www2.cupplugin.model.ICupParserLaLrChangeObserver
;
import
de.tum.in.www2.cupplugin.model.Model
;
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupConflictsView.java
View file @
69f5e1f7
...
...
@@ -18,56 +18,43 @@ import org.eclipse.jface.text.BadLocationException;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.custom.ScrolledComposite
;
import
org.eclipse.swt.events.MouseEvent
;
import
org.eclipse.swt.events.MouseWheelListener
;
import
org.eclipse.swt.events.SelectionEvent
;
import
org.eclipse.swt.events.SelectionListener
;
import
org.eclipse.swt.graphics.Color
;
import
org.eclipse.swt.graphics.Point
;
import
org.eclipse.swt.layout.FillLayout
;
import
org.eclipse.swt.layout.GridData
;
import
org.eclipse.swt.layout.GridLayout
;
import
org.eclipse.swt.widgets.Button
;
import
org.eclipse.swt.widgets.Composite
;
import
org.eclipse.swt.widgets.Display
;
import
org.eclipse.swt.widgets.Event
;
import
org.eclipse.swt.widgets.Label
;
import
org.eclipse.swt.widgets.Listener
;
import
org.eclipse.swt.widgets.MessageBox
;
import
org.eclipse.swt.widgets.Shell
;
import
org.eclipse.ui.IFileEditorInput
;
import
org.xml.sax.SAXException
;
import
com.sun.xml.internal.ws.policy.privateutil.PolicyUtils.Collections
;
import
de.in.tum.www2.cup.Conflict
;
import
de.in.tum.www2.cup.ConflictResolutionManager
;
import
de.in.tum.www2.cup.LALRResult
;
import
de.in.tum.www2.cup.Position
;
import
de.in.tum.www2.cup.ReduceReduceConflict
;
import
de.in.tum.www2.cup.ShiftReduceConflict
;
import
de.in.tum.www2.cup.ast.AbstractNode
;
import
de.in.tum.www2.cup.ast.IProductionRightPart
;
import
de.in.tum.www2.cup.ast.ParserResult
;
import
de.in.tum.www2.cup.ast.Precedence
;
import
de.in.tum.www2.cup.ast.Production
;
import
de.in.tum.www2.cup.ast.ProductionRight
;
import
de.in.tum.www2.cup.ast.ProductionSymbolRef
;
import
de.in.tum.www2.cup.ast.SymbolDeclaration
;
import
de.in.tum.www2.cup.ast.Terminal
;
import
de.in.tum.www2.cup.internal.internal_error
;
import
de.in.tum.www2.cup.internal.lalr_item
;
import
de.in.tum.www2.cup.internal.lr_item_core
;
import
de.in.tum.www2.cup.internal.terminal
;
import
de.tum.in.www2.cupplugin.Colors
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert.PrecedenceCyclicException
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReduceReduceReorder
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReordersToDo
;
import
de.tum.in.www2.cupplugin.conflictresolution.ResolutionStrategy
;
import
de.tum.in.www2.cupplugin.conflictresolution.PrecedenceToInsert.PrecedenceCyclicException
;
import
de.tum.in.www2.cupplugin.conflictresolution.ReordersToDo.OrderCyclicException
;
import
de.tum.in.www2.cupplugin.con
troller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.con
flictresolution.ResolutionStrategy
;
import
de.tum.in.www2.cupplugin.controller.Controller
;
import
de.tum.in.www2.cupplugin.controller.Controller.JobsToDo
;
import
de.tum.in.www2.cupplugin.controller.IRegisterForControllerChanges
;
import
de.tum.in.www2.cupplugin.controller.JobStatus
;
import
de.tum.in.www2.cupplugin.editors.CupTextEditor
;
...
...
@@ -82,7 +69,7 @@ public class CupConflictsView extends FailableView
private
static
final
int
OUTER_MARGIN
=
10
;
static
final
int
INNER_MARGIN
=
5
;
static
final
String
TRESHOLD_STRING
=
"~~ CUP-ECLIPSE:CONFLICT-RES-RR ~~ "
;
public
static
final
String
TRESHOLD_STRING
=
"~~ CUP-ECLIPSE:CONFLICT-RES-RR ~~ "
;
Jumper
jumper
;
private
CupTextEditor
editor
;
...
...
@@ -99,8 +86,9 @@ public class CupConflictsView extends FailableView
public
int
ignoreRRAfterLine
;
class
ShiftReduceDetails
{
terminal
shift
,
reduce
;
public
class
ShiftReduceDetails
{
public
terminal
shift
;
public
terminal
reduce
;
boolean
shiftAffectsOthers
,
reduceAffectsOthers
;
ShiftReduceDetails
(
ShiftReduceConflict
src
,
ConflictResolutionManager
crm
)
{
...
...
@@ -136,11 +124,12 @@ public class CupConflictsView extends FailableView
reduceAffectsOthers
=
insertingPrecAffectsOtherConflicts
(
reduce
);
}
boolean
shiftAndReducePrecedenceFromSameTerminal
()
{
public
boolean
shiftAndReducePrecedenceFromSameTerminal
()
{
return
shift
.
equals
(
reduce
);
}
}
public
CupConflictsView
(
Composite
realParent
,
Jumper
jumper
,
CupTextEditor
editor
)
{
super
(
realParent
);
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupGraphBase.java
View file @
69f5e1f7
...
...
@@ -16,10 +16,7 @@ import org.eclipse.zest.core.widgets.Graph;
import
org.eclipse.zest.core.widgets.GraphItem
;
import
de.in.tum.www2.cup.internal.lalr_state
;
import
de.tum.in.www2.cupplugin.views.CupConflictGraphView.ParserConflictNode
;
import
de.tum.in.www2.cupplugin.views.CupReduceGraphView.ParserReduceNode
;
import
de.tum.in.www2.cupplugin.widgets.ITooltip
;
import
de.tum.in.www2.cupplugin.widgets.StateTooltip
;
public
class
CupGraphBase
extends
FailableView
{
...
...
CupPlugin/src/de/tum/in/www2/cupplugin/views/CupOverviewView.java
View file @
69f5e1f7
...
...
@@ -7,10 +7,7 @@ import java.util.List;
import
org.eclipse.jface.text.IDocument
;
import
org.eclipse.swt.SWT
;
import
org.eclipse.swt.events.MouseEvent
;
import
org.eclipse.swt.events.MouseMoveListener
;
import
org.eclipse.swt.graphics.Color
;
import
org.eclipse.swt.graphics.Point
;
import
org.eclipse.swt.layout.FillLayout
;
import
org.eclipse.swt.layout.GridData
;