Minor fixes in the UI - redraw stack list when execution state changes.
authorJan Vrany <jan.vrany@fit.cvut.cz>
Tue, 30 Sep 2014 00:32:42 +0100
changeset 31 00f6de198c7f
parent 30 1851cfc16f27
child 32 8f4784723270
Minor fixes in the UI - redraw stack list when execution state changes.
VDBDebuggerApplication.st
VDBIconLibrary.st
VDBStackApplication.st
VDBThreadGroupPresenter.st
VDBThreadPresenter.st
application/applicationWinRC.rc
tests/tests.rc
vdb.rc
--- a/VDBDebuggerApplication.st	Mon Sep 29 23:59:11 2014 +0100
+++ b/VDBDebuggerApplication.st	Tue Sep 30 00:32:42 2014 +0100
@@ -690,9 +690,10 @@
 !
 
 doExecTerminate
-    self notYetImplemented
+    self shouldImplement.
+"/    self doExec: GDBMI_exec_abort new
 
-    "Modified: / 21-09-2014 / 21:52:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-09-2014 / 00:21:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !VDBDebuggerApplication class methodsFor:'documentation'!
--- a/VDBIconLibrary.st	Mon Sep 29 23:59:11 2014 +0100
+++ b/VDBIconLibrary.st	Tue Sep 30 00:32:42 2014 +0100
@@ -158,10 +158,34 @@
     ^Icon
         constantNamed:'VDBIconLibrary threadGroupRunning16x16'
         ifAbsentPut:[(Depth8Image new) width:16; height:16; bits:(ByteArray fromPackedString:'
-I"TEB0XFC@\GB!!XTEAPTEBXQDP8OD!!@SEATHE!!XVE!!P&APTKA XLA0\JB  QDQDQI"HVE!!XVE!!XVE!!XVE!!XVH"X"E!!\WE1\WE1\WE1\WE2H&H!!X''I2\''I2\''
+I"TEB0XFC@\GA0\GA0\G@BXQDP8OD!!@SEB (JB (J@\&APTKA XLA0\JB \GA0\GI"HVE!!XVE!!XVE!!XVE!!XVH"X"E!!\WE1\WE1\WE1\WE2H&H!!X''I2\''I2\''
+I2\''E1\"I"LVJ"(+E1\WE1\WE1\WH2X]E"(.J"0+I2\''I2\WE14&HAX*K"8.J"4WFA\WE1 _I!!,VJ"</K2</J!! XFA XF2X\E"(/K2<*LQ XFA XFA0&GAX*
+LB(,J1 XFA XFA $I!!8VJ"(+FA XFA XFA XG"XZE"T%IRT%IRT%IRT%IQ$&HRD!!HRD!!HRD!!HRD!!HRD!!I"X&I"X&I"X&I"X&I"X&I @@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[136 152 192 144 160 192 152 168 200 160 176 200 168 184 208 40 80 136 48 88 144 56 96 152 64 104 160 136 160 192 64 104 152 40 88 144 48 96 144 160 184 208 80 152 208 88 160 216 104 168 216 72 152 208 96 168 216 120 176 216 128 184 224 144 192 224 208 240 248 232 248 248 240 248 248 97 95 61 97 95 65 120 108 54 113 102 58 135 114 50 105 95 61 128 108 50 128 108 54 97 89 65 150 121 47 143 114 47 113 95 58 255 255 255 255 255 255 232 248 248 144 192 224 56 96 152 31 132 78 194 222 207 86 166 120 68 154 105 147 197 135 88 171 113 97 176 96 115 179 143]; mask:((ImageMask new) width:16; height:16; bits:(ByteArray fromPackedString:'_?9??7??_?=??7??_?=??7??_?=??7??_?=??7??@@@b') ; yourself); yourself]
+!
+
+threadGroupStopped16x16
+    "This resource specification was automatically generated
+     by the ImageEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the ImageEditor may not be able to read the specification."
+
+    "
+     self threadGroupStopped16x16 inspect
+     ImageEditor openOnClass:self andSelector:#threadGroupStopped16x16
+     Icon flushCachedIcons
+    "
+
+    <resource: #image>
+
+    ^Icon
+        constantNamed:'VDBIconLibrary threadGroupStopped16x16'
+        ifAbsentPut:[(Depth8Image new) width:16; height:16; bits:(ByteArray fromPackedString:'
+I"TEB0XFC@\GA0\GA0\G@BXQDP8OD!!@SEB (JB (J@\&APTKA XLA0\JB \GA0\GI"HVE!!XVE!!XVE!!XVE!!XVH"X"E!!\WE1\WE1\WE1\WE2H&H!!X''I2\''I2\''
 I2\''E1\"I"LVE1\WE1\WE1\WE1\WH2X]E!!\''I2\''I2\''I2\WE14&HAXXI1\WFA\WFA\WE1 _I!!,VFB\''I2\''I1 XFA XF2X\E!! XFA XFA XFA XFA0&GAXX
 FA XFA XFA XFA $I!!8VFA XFA XFA XFA XG"XZE"T%IRT%IRT%IRT%IQ$&HRD!!HRD!!HRD!!HRD!!HRD!!I"X&I"X&I"X&I"X&I"X&I @@@@@@@@@@@@@@@@@@
-@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[136 152 192 144 160 192 152 168 200 160 176 200 168 184 208 40 80 136 48 88 144 56 96 152 64 104 160 136 160 192 64 104 152 40 88 144 48 96 144 160 184 208 80 152 208 88 160 216 104 168 216 72 152 208 96 168 216 120 176 216 128 184 224 144 192 224 208 240 248 232 248 248 240 248 248 97 95 61 97 95 65 120 108 54 113 102 58 135 114 50 105 95 61 128 108 50 128 108 54 97 89 65 150 121 47 143 114 47 113 95 58 255 255 255 255 255 255 232 248 248]; mask:((ImageMask new) width:16; height:16; bits:(ByteArray fromPackedString:'_?=??7??_?=??7??_?=??7??_?=??7??_?=??7??@@@b') ; yourself); yourself]
+@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[136 152 192 144 160 192 152 168 200 160 176 200 168 184 208 40 80 136 48 88 144 56 96 152 64 104 160 136 160 192 64 104 152 40 88 144 48 96 144 160 184 208 80 152 208 88 160 216 104 168 216 72 152 208 96 168 216 120 176 216 128 184 224 144 192 224 208 240 248 232 248 248 240 248 248 97 95 61 97 95 65 120 108 54 113 102 58 135 114 50 105 95 61 128 108 50 128 108 54 97 89 65 150 121 47 143 114 47 113 95 58 255 255 255 255 255 255 232 248 248 144 192 224]; mask:((ImageMask new) width:16; height:16; bits:(ByteArray fromPackedString:'_?9??7??_?=??7??_?=??7??_?=??7??_?=??7??@@@b') ; yourself); yourself]
 !
 
 threadRunning16x16
--- a/VDBStackApplication.st	Mon Sep 29 23:59:11 2014 +0100
+++ b/VDBStackApplication.st	Tue Sep 30 00:32:42 2014 +0100
@@ -2,7 +2,8 @@
 
 VDBAbstractApplication subclass:#VDBStackApplication
 	instanceVariableNames:'selectedThreadGroupHolder selectedThreadHolder
-		selectedFrameHolder internalListHolder internalSelectionHolder'
+		selectedFrameHolder internalListHolder internalListView
+		internalSelectionHolder'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'VDB-UI-Others'
@@ -52,6 +53,7 @@
              showLines: false
              useDefaultIcons: false
              showRoot: false
+             postBuildCallback: postBuildInternalListView:
            )
           )
         
@@ -271,9 +273,12 @@
             root children anElement children anElement expand.
         ]
     ].
+    internalListView notNil ifTrue:[  
+        internalListView invalidate.
+    ]
 
     "Created: / 20-09-2014 / 23:05:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 22-09-2014 / 00:04:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-09-2014 / 00:02:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 updateInternalSelection
@@ -344,6 +349,12 @@
 
 !VDBStackApplication methodsFor:'event handling'!
 
+onRunningEvent: event
+    self enqueueUpdateInternalList.
+
+    "Created: / 30-09-2014 / 00:02:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 onStoppedEvent: event
     self enqueueUpdateInternalList.
     self enqueueUpdateInternalSelectionAfterThreadStopped:event stoppedThread.
@@ -375,6 +386,12 @@
 
     "Created: / 18-09-2014 / 00:29:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 20-09-2014 / 23:50:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+postBuildInternalListView: aView
+    internalListView := aView
+
+    "Modified: / 30-09-2014 / 00:00:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !VDBStackApplication methodsFor:'initialization & release'!
@@ -383,12 +400,13 @@
     "Register for debugger events. To be overrided by subclasses"
 
     debugger announcer
+        when: GDBRunningEvent           send: #onRunningEvent: to: self;
         when: GDBStoppedEvent           send: #onStoppedEvent: to: self;
         when: GDBThreadExitedEvent      send: #onThreadExitedEvent: to: self;
         when: GDBThreadGroupExitedEvent send: #onThreadGroupExitedEvent: to: self
 
     "Created: / 07-06-2014 / 14:33:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 18-09-2014 / 23:30:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-09-2014 / 00:02:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !VDBStackApplication methodsFor:'menu actions'!
--- a/VDBThreadGroupPresenter.st	Mon Sep 29 23:59:11 2014 +0100
+++ b/VDBThreadGroupPresenter.st	Tue Sep 30 00:32:42 2014 +0100
@@ -10,9 +10,12 @@
 !VDBThreadGroupPresenter methodsFor:'accessing'!
 
 icon
-    ^ VDBIconLibrary threadGroupRunning16x16
+    threadGroup isRunning ifTrue:[ ^ VDBIconLibrary threadGroupRunning16x16 ].
+    threadGroup isStopped ifTrue:[ ^ VDBIconLibrary threadGroupStopped16x16 ].
+    ^ nil
 
     "Created: / 22-09-2014 / 22:13:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-09-2014 / 00:31:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 label
--- a/VDBThreadPresenter.st	Mon Sep 29 23:59:11 2014 +0100
+++ b/VDBThreadPresenter.st	Tue Sep 30 00:32:42 2014 +0100
@@ -46,10 +46,11 @@
      *** to optimize: redefine by subClass"
 
      thread isDead ifTrue:[ ^ #() ].
+     thread isRunning ifTrue:[ ^ #() ].
      ^ thread stack collect:[ :f | VDBFramePresenter new setFrame: f; parent: self ]
 
     "Created: / 21-09-2014 / 23:42:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 22-09-2014 / 00:54:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 30-09-2014 / 00:04:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !VDBThreadPresenter methodsFor:'testing'!
--- a/application/applicationWinRC.rc	Mon Sep 29 23:59:11 2014 +0100
+++ b/application/applicationWinRC.rc	Tue Sep 30 00:32:42 2014 +0100
@@ -39,7 +39,7 @@
       VALUE "LegalCopyright", "Copyring (C) 2014 Jan Vrany\0"
       VALUE "ProductName", "Visual Debugger\0"
       VALUE "ProductVersion", "6.2.4.0\0"
-      VALUE "ProductDate", "Mon, 29 Sep 2014 22:57:42 GMT\0"
+      VALUE "ProductDate", "Mon, 29 Sep 2014 23:32:09 GMT\0"
     END
   END
 
--- a/tests/tests.rc	Mon Sep 29 23:59:11 2014 +0100
+++ b/tests/tests.rc	Tue Sep 30 00:32:42 2014 +0100
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
       VALUE "ProductName", "LibraryName\0"
       VALUE "ProductVersion", "6.2.4.0\0"
-      VALUE "ProductDate", "Mon, 29 Sep 2014 22:57:41 GMT\0"
+      VALUE "ProductDate", "Mon, 29 Sep 2014 23:32:08 GMT\0"
     END
 
   END
--- a/vdb.rc	Mon Sep 29 23:59:11 2014 +0100
+++ b/vdb.rc	Tue Sep 30 00:32:42 2014 +0100
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
       VALUE "ProductName", "LibraryName\0"
       VALUE "ProductVersion", "6.2.4.0\0"
-      VALUE "ProductDate", "Mon, 29 Sep 2014 22:57:39 GMT\0"
+      VALUE "ProductDate", "Mon, 29 Sep 2014 23:32:06 GMT\0"
     END
 
   END