VDBFrameApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 13 Oct 2017 21:38:13 +0100
changeset 48 0076f0700e5e
parent 46 6b857f3cec8c
child 49 2ec7f7ed9242
permissions -rw-r--r--
Added VDBVirtualMemoryMap, a model for memory maps
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'jv:vdb' }"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
VDBAbstractTreeApplication subclass:#VDBFrameApplication
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:'frameHolder selectedVariableHolder'
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'VDB-UI-Others'
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
48
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    12
46
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    13
!VDBFrameApplication class methodsFor:'accessing'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    14
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    15
windowTitle
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    16
    ^ 'Variables'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    17
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    18
    "Created: / 11-07-2017 / 16:37:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    19
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 44
diff changeset
    20
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    21
!VDBFrameApplication class methodsFor:'interface specs'!
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    22
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    23
columnsSpec
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    24
    "This resource specification was automatically generated
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    25
     by the DataSetBuilder of ST/X."
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    26
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    27
    "Do not manually edit this!! If it is corrupted,
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    28
     the DataSetBuilder may not be able to read the specification."
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    29
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    30
    "
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    31
     DataSetBuilder new openOnClass:VDBFrameApplication andSelector:#columnsSpec
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    32
    "
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    33
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    34
    <resource: #tableColumns>
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    35
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    36
    ^#(
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    37
      (DataSetColumnSpec
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    38
         label: 'Value'
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    39
         labelAlignment: left
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    40
         labelButtonType: Button
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    41
         width: 1.0
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    42
         height: heightOfFirstRow
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    43
         menuFromApplication: false
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    44
         printSelector: value
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    45
         backgroundSelector: backgroundColor
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    46
         showRowSeparator: false
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    47
         showColSeparator: false
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    48
       )
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    49
      )
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    50
    
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    51
! !
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    52
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    53
!VDBFrameApplication class methodsFor:'menu specs'!
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    54
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    55
contextMenu
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    56
    "This resource specification was automatically generated
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    57
     by the MenuEditor of ST/X."
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    58
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    59
    "Do not manually edit this!! If it is corrupted,
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    60
     the MenuEditor may not be able to read the specification."
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    61
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    62
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    63
    "
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    64
     MenuEditor new openOnClass:VDBFrameApplication andSelector:#contextMenu
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    65
     (Menu new fromLiteralArrayEncoding:(VDBFrameApplication contextMenu)) startUp
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    66
    "
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    67
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    68
    <resource: #menu>
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    69
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    70
    ^ 
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    71
     #(Menu
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    72
        (
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    73
         (MenuItem
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    74
            label: 'Copy Value'
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    75
            itemValue: doCopyValue
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    76
          )
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    77
         (MenuItem
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    78
            label: '-'
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    79
          )
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    80
         (MenuItem
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    81
            label: 'Menu Slice'
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    82
            submenuChannel: contextMenuInspectSlice
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    83
            isMenuSlice: true
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    84
          )
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    85
         )
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    86
        nil
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    87
        nil
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    88
      )
42
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    89
! !
a6f5f470a947 Display variable values in frame view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    90
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
!VDBFrameApplication class methodsFor:'plugIn spec'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
aspectSelectors
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    "This resource specification was automatically generated
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
     by the UIPainter of ST/X."
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    "Do not manually edit this. If it is corrupted,
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
     the UIPainter may not be able to read the specification."
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
    "Return a description of exported aspects;
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
     these can be connected to aspects of an embedding application
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
     (if this app is embedded in a subCanvas)."
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    ^ #(
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
        #debuggerHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
        #frameHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
        #selectedVariableHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
      ).
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    "Modified: / 27-02-2015 / 16:04:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
!VDBFrameApplication class methodsFor:'startup-web applications'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
initialPageSpec
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
    "this is only required for web-applications"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    ^ self shouldImplement
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
pageSpecs
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    "this is only required for web-applications"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
    ^ self shouldImplement
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   127
!VDBFrameApplication methodsFor:'actions'!
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   128
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   129
doDoubleClick
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   130
    "Invoked when user double-clicks to list item."
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   131
    
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   132
    self doCopyValue
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   133
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   134
    "Created: / 13-06-2017 / 17:09:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   135
! !
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   136
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
!VDBFrameApplication methodsFor:'aspects'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
frameHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
    "return/create the 'frameHolder' value holder (automatically generated)"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
    frameHolder isNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
        frameHolder := ValueHolder new.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
        frameHolder addDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
    ^ frameHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
frameHolder:something
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    "set the 'frameHolder' value holder (automatically generated)"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
    |oldValue newValue|
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
    frameHolder notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
        oldValue := frameHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
        frameHolder removeDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
    frameHolder := something.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
    frameHolder notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
        frameHolder addDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
    newValue := frameHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
    oldValue ~~ newValue ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
        self update:#value with:newValue from:frameHolder.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
selectedVariableHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
    "return/create the 'selectedVariableHolder' value holder (automatically generated)"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
    selectedVariableHolder isNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
        selectedVariableHolder := ValueHolder new.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
        selectedVariableHolder addDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
    ^ selectedVariableHolder
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
selectedVariableHolder:something
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
    "set the 'selectedVariableHolder' value holder (automatically generated)"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
    |oldValue newValue|
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
    selectedVariableHolder notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
        oldValue := selectedVariableHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
        selectedVariableHolder removeDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
    selectedVariableHolder := something.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
    selectedVariableHolder notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
        selectedVariableHolder addDependent:self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
    newValue := selectedVariableHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
    oldValue ~~ newValue ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
        self update:#value with:newValue from:selectedVariableHolder.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
!VDBFrameApplication methodsFor:'change & update'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
update:aspect with:param from:sender
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
    "Invoked when an object that I depend upon sends a change notification."
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
    sender == frameHolder ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
         self enqueueDelayedUpdateInternalList.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
         ^ self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
    super update:aspect with:param from:sender
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
    "Modified: / 27-02-2015 / 15:45:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
!VDBFrameApplication methodsFor:'change & update-delayed'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
delayedUpdateInternalList
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
    | frame root |
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
     debugger isNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
        self internalListHolder root children:#().
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
        ^ self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
    ].   
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
    frame := frameHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
    frame isNil ifTrue:[ 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
        self internalListHolder root children:#().
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
        ^ self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
    root := self internalListHolder root.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
    root children:
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
        (frame variables collect:[:v | VDBVariablePresenter new setVariable: v; parent: root; yourself]).
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
    root expand.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
    internalListView notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
        internalListView invalidate.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
    ]
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
    "Created: / 27-02-2015 / 15:47:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   234
!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   235
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   236
delayedUpdateSelection
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   237
    | internalSelection |
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
    internalSelection := self internalSelectionHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
    internalSelection notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
        self selectedVariableHolder value: internalSelection variable
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
    ] ifFalse:[ 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
        self selectedVariableHolder value: nil
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
    "Modified: / 27-02-2015 / 16:05:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   249
!VDBFrameApplication methodsFor:'drag & drop'!
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
dropObjects:aCollectionOfDropObjects
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
    "drop manager wants to drop.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
     This is ony sent, if #canDrop: returned true.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
     Must be redefined in order for drop to work."
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
    ^ self shouldImplement
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
! !
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
44
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   259
!VDBFrameApplication methodsFor:'menu actions'!
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   260
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   261
doCopyValue
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   262
    internalListView setClipboardText: (self selectedVariableHolder value varobj value)
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   263
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   264
    "Modified: / 13-06-2017 / 14:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   265
! !
41cc5a7840fe Debugger UI improvements
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
   266
48
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   267
!VDBFrameApplication class methodsFor:'documentation'!
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   268
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   269
version_HG
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   270
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   271
    ^ '$Changeset: <not expanded> $'
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   272
! !
0076f0700e5e Added VDBVirtualMemoryMap, a model for memory maps
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
   273