VDBRegisterPresenter.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 20 Jun 2019 16:11:12 +0100
changeset 174 3f6f51330641
parent 110 7150377a44e1
child 229 229ed681f4aa
permissions -rw-r--r--
UI: add "Edit" button to settings application to edit GDB and VDB init scripts
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
110
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
jv:vdb - Visual / VM Debugger
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
Copyright (C) 2015-now Jan Vrany
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
"{ Package: 'jv:vdb' }"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"{ NameSpace: Smalltalk }"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
VDBAbstractPresenter subclass:#VDBRegisterPresenter
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
	instanceVariableNames:'register'
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
	classVariableNames:''
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
	poolDictionaries:''
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	category:'VDB-Presentation'
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
!VDBRegisterPresenter class methodsFor:'documentation'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
copyright
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
jv:vdb - Visual / VM Debugger
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
Copyright (C) 2015-now Jan Vrany
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
!VDBRegisterPresenter class methodsFor:'menu specs'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
contextMenu
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
    "This resource specification was automatically generated
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
     by the MenuEditor of ST/X."
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
    "Do not manually edit this!! If it is corrupted,
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
     the MenuEditor may not be able to read the specification."
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
    "
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
     MenuEditor new openOnClass:VDBRegisterPresenter andSelector:#contextMenu
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
     (Menu new fromLiteralArrayEncoding:(VDBRegisterPresenter contextMenu)) startUp
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    "
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    <resource: #menu>
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
    ^ 
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
     #(Menu
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
        (
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
         (MenuItem
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
            label: 'Copy Value'
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
            itemValue: doCopyValue
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
            isVisible: true
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
          )
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
         )
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
        nil
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
        nil
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
      )
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
!VDBRegisterPresenter methodsFor:'accessing'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
label
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    ^ register name
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
    "Created: / 27-02-2015 / 15:57:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
    "Modified: / 27-09-2018 / 21:04:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
register
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    ^ register
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
    "Created: / 27-09-2018 / 20:39:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
subject
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
    "Return an instance of GDB object that this presenter displays."
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
    ^ register
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    "Modified: / 05-02-2018 / 13:08:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
tooltip
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
    ^ self valueString
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    "Created: / 29-07-2018 / 21:35:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
value
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    ^ register value
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
    "Created: / 02-06-2017 / 07:32:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
    "Modified: / 28-01-2018 / 22:49:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
valueString
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
    ^ register value
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
    "Created: / 11-06-2017 / 23:25:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    "Modified: / 01-09-2018 / 00:55:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
!VDBRegisterPresenter methodsFor:'initialization'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
setRegister:aGDBRegisterWithValue 
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    register := aGDBRegisterWithValue
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
    "Created: / 27-09-2018 / 20:38:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
!VDBRegisterPresenter methodsFor:'menu actions'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
doCopyValue
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    self doCopy: register value.
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    "Created: / 16-01-2018 / 23:28:56 / jv"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
    "Modified: / 28-01-2018 / 22:55:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
!VDBRegisterPresenter methodsFor:'protocol-queries'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
hasChildren
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
    ^ false
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
    "Created: / 28-01-2018 / 22:49:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    "Modified: / 27-09-2018 / 20:38:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
!VDBRegisterPresenter methodsFor:'testing'!
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
isRegisterPresenter
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
    ^ true
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
! !
7150377a44e1 UI: add register view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138