Temporary commit: some more work on displaying source code.
authorJan Vrany <jan.vrany@fit.cvut.cz>
Fri, 19 Sep 2014 10:05:54 +0100
changeset 16 fc1898815ab6
parent 15 7cddd476fb00
child 17 c5ee4ea44165
Temporary commit: some more work on displaying source code.
Make.proto
Make.spec
VDBAbstractApplication.st
VDBDebuggerApplication.st
VDBSourceApplication.st
VDBStackApplication.st
abbrev.stc
bc.mak
jv_vdb.st
libInit.cc
--- a/Make.proto	Thu Sep 18 23:34:20 2014 +0100
+++ b/Make.proto	Fri Sep 19 10:05:54 2014 +0100
@@ -134,6 +134,7 @@
 $(OUTDIR)VDBDebuggerConsoleApplication.$(O) VDBDebuggerConsoleApplication.$(H): VDBDebuggerConsoleApplication.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 $(OUTDIR)VDBEventLogApplication.$(O) VDBEventLogApplication.$(H): VDBEventLogApplication.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 $(OUTDIR)VDBInferiorConsoleApplication.$(O) VDBInferiorConsoleApplication.$(H): VDBInferiorConsoleApplication.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
+$(OUTDIR)VDBSourceApplication.$(O) VDBSourceApplication.$(H): VDBSourceApplication.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 $(OUTDIR)VDBStackApplication.$(O) VDBStackApplication.$(H): VDBStackApplication.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 $(OUTDIR)VDBTabbingContainer.$(O) VDBTabbingContainer.$(H): VDBTabbingContainer.st $(INCLUDE_TOP)/jv/vdb/VDBAbstractApplication.$(H) $(INCLUDE_TOP)/jv/vdb/VDBAbstractContainer.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 
--- a/Make.spec	Thu Sep 18 23:34:20 2014 +0100
+++ b/Make.spec	Fri Sep 19 10:05:54 2014 +0100
@@ -58,6 +58,7 @@
 	VDBDebuggerConsoleApplication \
 	VDBEventLogApplication \
 	VDBInferiorConsoleApplication \
+	VDBSourceApplication \
 	VDBStackApplication \
 	VDBTabbingContainer \
 
@@ -73,6 +74,7 @@
     $(OUTDIR_SLASH)VDBDebuggerConsoleApplication.$(O) \
     $(OUTDIR_SLASH)VDBEventLogApplication.$(O) \
     $(OUTDIR_SLASH)VDBInferiorConsoleApplication.$(O) \
+    $(OUTDIR_SLASH)VDBSourceApplication.$(O) \
     $(OUTDIR_SLASH)VDBStackApplication.$(O) \
     $(OUTDIR_SLASH)VDBTabbingContainer.$(O) \
 
--- a/VDBAbstractApplication.st	Thu Sep 18 23:34:20 2014 +0100
+++ b/VDBAbstractApplication.st	Fri Sep 19 10:05:54 2014 +0100
@@ -7,6 +7,7 @@
 	category:'VDB-UI-Abstract'
 !
 
+
 !VDBAbstractApplication class methodsFor:'interface opening'!
 
 openFor: debugger
@@ -186,3 +187,10 @@
     "Created: / 06-06-2014 / 22:12:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
+!VDBAbstractApplication class methodsFor:'documentation'!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+! !
+
--- a/VDBDebuggerApplication.st	Thu Sep 18 23:34:20 2014 +0100
+++ b/VDBDebuggerApplication.st	Fri Sep 19 10:05:54 2014 +0100
@@ -1,7 +1,7 @@
 "{ Package: 'jv:vdb' }"
 
 VDBAbstractApplication subclass:#VDBDebuggerApplication
-	instanceVariableNames:'layoutSpecHolder containerBottom containerDock'
+	instanceVariableNames:'layoutSpecHolder containerBottom'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'VGB-UI'
@@ -18,16 +18,15 @@
      the UIPainter may not be able to read the specification."
 
     "
-     UIPainter new openOnClass:VDBDebuggerApplication andSelector:#windowSpec
-     VDBDebuggerApplication new openInterface:#windowSpec
-     VDBDebuggerApplication open
+     UIPainter new openOnClass:VDBDebuggerApplication andSelector:#layoutEclipseSpec
+     VDBDebuggerApplication new openInterface:#layoutEclipseSpec
     "
 
     <resource: #canvas>
 
     ^ 
     #(FullSpec
-       name: windowSpec
+       name: layoutEclipseSpec
        window: 
       (WindowSpec
          label: 'Visual Debugger'
@@ -39,30 +38,46 @@
        component: 
       (SpecCollection
          collection: (
-          (SubCanvasSpec
-             name: 'ContainerBottom'
+          (VariableVerticalPanelSpec
+             name: 'VariableVerticalPanel'
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
-             level: 0
-             hasHorizontalScrollBar: false
-             hasVerticalScrollBar: false
-             clientHolder: containerBottom
-             subAspectHolders: 
-            (Array
-               
-              (SubChannelInfoSpec
-                 subAspect: debuggerHolder
-                 aspect: debuggerHolder
-               )
+             component: 
+            (SpecCollection
+               collection: (
+                (SubCanvasSpec
+                   name: 'StackCanvas'
+                   hasHorizontalScrollBar: false
+                   hasVerticalScrollBar: false
+                   majorKey: VDBStackApplication
+                   createNewApplication: true
+                   createNewBuilder: true
+                 )
+                (SubCanvasSpec
+                   name: 'ContainerBottom'
+                   level: 0
+                   hasHorizontalScrollBar: false
+                   hasVerticalScrollBar: false
+                   clientHolder: containerBottom
+                   subAspectHolders: 
+                  (Array
+                     
+                    (SubChannelInfoSpec
+                       subAspect: debuggerHolder
+                       aspect: debuggerHolder
+                     )
+                   )
+                   createNewApplication: true
+                   createNewBuilder: true
+                 )
+                )
+              
              )
-             createNewApplication: true
-             createNewBuilder: true
+             handles: (Any 0.5 1.0)
            )
           )
         
        )
      )
-
-    "Created: / 17-09-2014 / 22:34:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 layoutSingleSpec
@@ -299,11 +314,11 @@
     "return/create the 'layoutSpecHolder' value holder (automatically generated)"
 
     layoutSpecHolder isNil ifTrue:[
-        layoutSpecHolder := ValueHolder with: #layoutSingleSpec.
+        layoutSpecHolder := ValueHolder with: #layoutEclipseSpec.
     ].
     ^ layoutSpecHolder
 
-    "Modified: / 17-09-2014 / 22:49:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 18-09-2014 / 23:35:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !VDBDebuggerApplication methodsFor:'aspects-containers'!
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/VDBSourceApplication.st	Fri Sep 19 10:05:54 2014 +0100
@@ -0,0 +1,115 @@
+"{ Package: 'jv:vdb' }"
+
+VDBAbstractApplication subclass:#VDBSourceApplication
+	instanceVariableNames:'sourceFilenameHolder sourceStringHolder'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'VDB-UI-Others'
+!
+
+!VDBSourceApplication class methodsFor:'interface specs'!
+
+windowSpec
+    "This resource specification was automatically generated
+     by the UIPainter of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the UIPainter may not be able to read the specification."
+
+    "
+     UIPainter new openOnClass:VDBSourceApplication andSelector:#windowSpec
+     VDBSourceApplication new openInterface:#windowSpec
+     VDBSourceApplication open
+    "
+
+    <resource: #canvas>
+
+    ^ 
+    #(FullSpec
+       name: windowSpec
+       window: 
+      (WindowSpec
+         label: 'Source View'
+         name: 'Source View'
+         min: (Point 10 10)
+         bounds: (Rectangle 0 0 300 300)
+       )
+       component: 
+      (SpecCollection
+         collection: (
+          (TextEditorSpec
+             name: 'SourceView'
+             layout: (LayoutFrame 0 0 0 0 0 1 0 1)
+             model: sourceStringHolder
+             hasHorizontalScrollBar: true
+             hasVerticalScrollBar: true
+             hasKeyboardFocusInitially: false
+             postBuildCallback: postBuildSourceView:
+             viewClassName: 'Tools::CodeView2'
+           )
+          )
+        
+       )
+     )
+! !
+
+!VDBSourceApplication class methodsFor:'plugIn spec'!
+
+aspectSelectors
+    "This resource specification was automatically generated
+     by the UIPainter of ST/X."
+
+    "Do not manually edit this. If it is corrupted,
+     the UIPainter may not be able to read the specification."
+
+    "Return a description of exported aspects;
+     these can be connected to aspects of an embedding application
+     (if this app is embedded in a subCanvas)."
+
+    ^ #(
+        #debuggerHolder
+      ).
+
+! !
+
+!VDBSourceApplication methodsFor:'aspects'!
+
+sourceFilenameHolder
+    "return/create the 'sourceFilenameHolder' value holder (automatically generated)"
+
+    sourceFilenameHolder isNil ifTrue:[
+        sourceFilenameHolder := ValueHolder new.
+    ].
+    ^ sourceFilenameHolder
+!
+
+sourceFilenameHolder:aValueModel
+    "set the 'sourceFilenameHolder' value holder (automatically generated)"
+
+    sourceFilenameHolder := aValueModel.
+!
+
+sourceStringHolder
+    "return/create the 'sourceFilenameHolder' value holder (automatically generated)"
+
+    sourceStringHolder isNil ifTrue:[
+        sourceStringHolder := 
+            PluggableAdaptor 
+                on: self sourceFilenameHolder 
+                getter: [ :model | model value isNil ifTrue:['No source'] ifFalse:[model value asFilename contents asString ] ]  
+    ].
+    ^ sourceStringHolder
+
+    "Created: / 19-09-2014 / 00:03:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!VDBSourceApplication methodsFor:'hooks'!
+
+postBuildSourceView: aCodeView2
+    aCodeView2 
+        readOnly: true;
+        services: #()
+
+    "Modified: / 19-09-2014 / 00:18:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/VDBStackApplication.st	Thu Sep 18 23:34:20 2014 +0100
+++ b/VDBStackApplication.st	Fri Sep 19 10:05:54 2014 +0100
@@ -4,7 +4,7 @@
 	instanceVariableNames:'selectionHolder listHolder'
 	classVariableNames:''
 	poolDictionaries:''
-	category:'VDB-UI-Execution-State'
+	category:'VDB-UI-Others'
 !
 
 
--- a/abbrev.stc	Thu Sep 18 23:34:20 2014 +0100
+++ b/abbrev.stc	Fri Sep 19 10:05:54 2014 +0100
@@ -9,5 +9,6 @@
 VDBDebuggerConsoleApplication VDBDebuggerConsoleApplication jv:vdb 'VDB-UI-Console' 1
 VDBEventLogApplication VDBEventLogApplication jv:vdb 'VDB-UI-Events' 1
 VDBInferiorConsoleApplication VDBInferiorConsoleApplication jv:vdb 'VDB-UI-Console' 1
-VDBStackApplication VDBStackApplication jv:vdb 'VDB-UI-Execution-State' 1
+VDBSourceApplication VDBSourceApplication jv:vdb 'VDB-UI-Others' 1
+VDBStackApplication VDBStackApplication jv:vdb 'VDB-UI-Others' 1
 VDBTabbingContainer VDBTabbingContainer jv:vdb 'VDB-UI-Containers' 1
--- a/bc.mak	Thu Sep 18 23:34:20 2014 +0100
+++ b/bc.mak	Fri Sep 19 10:05:54 2014 +0100
@@ -80,6 +80,7 @@
 $(OUTDIR)VDBDebuggerConsoleApplication.$(O) VDBDebuggerConsoleApplication.$(H): VDBDebuggerConsoleApplication.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 $(OUTDIR)VDBEventLogApplication.$(O) VDBEventLogApplication.$(H): VDBEventLogApplication.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 $(OUTDIR)VDBInferiorConsoleApplication.$(O) VDBInferiorConsoleApplication.$(H): VDBInferiorConsoleApplication.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
+$(OUTDIR)VDBSourceApplication.$(O) VDBSourceApplication.$(H): VDBSourceApplication.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 $(OUTDIR)VDBStackApplication.$(O) VDBStackApplication.$(H): VDBStackApplication.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 $(OUTDIR)VDBTabbingContainer.$(O) VDBTabbingContainer.$(H): VDBTabbingContainer.st $(INCLUDE_TOP)\jv\vdb\VDBAbstractApplication.$(H) $(INCLUDE_TOP)\jv\vdb\VDBAbstractContainer.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 
--- a/jv_vdb.st	Thu Sep 18 23:34:20 2014 +0100
+++ b/jv_vdb.st	Fri Sep 19 10:05:54 2014 +0100
@@ -77,6 +77,7 @@
         VDBDebuggerConsoleApplication
         VDBEventLogApplication
         VDBInferiorConsoleApplication
+        VDBSourceApplication
         VDBStackApplication
         VDBTabbingContainer
     )
--- a/libInit.cc	Thu Sep 18 23:34:20 2014 +0100
+++ b/libInit.cc	Fri Sep 19 10:05:54 2014 +0100
@@ -35,6 +35,7 @@
 _VDBDebuggerConsoleApplication_Init(pass,__pRT__,snd);
 _VDBEventLogApplication_Init(pass,__pRT__,snd);
 _VDBInferiorConsoleApplication_Init(pass,__pRT__,snd);
+_VDBSourceApplication_Init(pass,__pRT__,snd);
 _VDBStackApplication_Init(pass,__pRT__,snd);
 _VDBTabbingContainer_Init(pass,__pRT__,snd);