VDBStackApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 14 Mar 2018 10:07:45 +0000
changeset 66 a6439bb6d8bc
parent 55 fd2637e6d153
child 72 4e8268dabaf7
permissions -rw-r--r--
UI: add support to "pin" menus, i.e., turn them into a floating toolboxes This spares us the need of explicit toolbar in the UI and gives the user the freedom of turning every menu into always-visible toolbar is it suits her (actual) need. This idea is taken from good old NeXTstep UI. For now, this is only supported for "Exec" menu, but the support is generic so it would work any menu.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
49
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     1
"
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     2
jv:vdb - Visual / VM Debugger
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     3
Copyright (C) 2015-now Jan Vrany
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     4
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     5
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     6
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     7
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
     8
"
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
"{ Package: 'jv:vdb' }"
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
    11
"{ NameSpace: Smalltalk }"
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
    12
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
    13
VDBAbstractTreeApplication subclass:#VDBStackApplication
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    14
	instanceVariableNames:'selectedThreadGroupHolder selectedThreadHolder
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
    15
		selectedFrameHolder'
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
	classVariableNames:''
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	poolDictionaries:''
16
fc1898815ab6 Temporary commit: some more work on displaying source code.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
    18
	category:'VDB-UI-Others'
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
!
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
49
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    21
!VDBStackApplication class methodsFor:'documentation'!
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    22
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    23
copyright
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    24
"
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    25
jv:vdb - Visual / VM Debugger
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    26
Copyright (C) 2015-now Jan Vrany
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    27
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    28
This software is licensed under 'Creative Commons Attribution-NonCommercial 4.0 International License'
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    29
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    30
You may find a full license text in LICENSE.txt or at http://creativecommons.org/licenses/by-nc/4.0/
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    31
"
2ec7f7ed9242 License this package under 'Creative Commons Attribution-NonCommercial 4.0 International License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 46
diff changeset
    32
! !
15
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    33
46
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    34
!VDBStackApplication class methodsFor:'accessing'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    35
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    36
windowTitle
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    37
    ^ 'Backtrace'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    38
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    39
    "Created: / 11-07-2017 / 16:37:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    40
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 42
diff changeset
    41
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
!VDBStackApplication class methodsFor:'plugIn spec'!
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
aspectSelectors
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
    "This resource specification was automatically generated
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
     by the UIPainter of ST/X."
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    "Do not manually edit this. If it is corrupted,
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
     the UIPainter may not be able to read the specification."
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    "Return a description of exported aspects;
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
     these can be connected to aspects of an embedding application
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
     (if this app is embedded in a subCanvas)."
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    ^ #(
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
        #debuggerHolder
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    57
        #selectedFrameHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    58
        #selectedThreadGroupHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    59
        #selectedThreadHolder
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
      ).
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
! !
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
!VDBStackApplication methodsFor:'aspects'!
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    66
selectedFrameHolder
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    "return/create the 'selectionHolder' value holder (automatically generated)"
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    69
    selectedFrameHolder isNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    70
        selectedFrameHolder := ValueHolder new.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    71
        selectedFrameHolder addDependent:self.
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
    ].
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    73
    ^ selectedFrameHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    74
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    75
    "Created: / 21-09-2014 / 23:51:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    76
!
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    77
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    78
selectedFrameHolder:aValueModel
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    79
    "set the 'selectionHolder' value holder (automatically generated)"
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    80
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    81
    |oldValue newValue|
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
    82
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    83
    selectedFrameHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    84
        oldValue := selectedFrameHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    85
        selectedFrameHolder removeDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    86
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    87
    selectedFrameHolder := aValueModel.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    88
    selectedFrameHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    89
        selectedFrameHolder addDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    90
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    91
    newValue := selectedFrameHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    92
    oldValue ~~ newValue ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    93
        self update:#value with:newValue from:selectedFrameHolder.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    94
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    95
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    96
    "Created: / 21-09-2014 / 23:50:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    97
!
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    98
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
    99
selectedThreadGroupHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   100
    "return/create the 'selectedThreadGroupHolder' value holder (automatically generated)"
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   101
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   102
    selectedThreadGroupHolder isNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   103
        selectedThreadGroupHolder := ValueHolder new.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   104
        selectedThreadGroupHolder addDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   105
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   106
    ^ selectedThreadGroupHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   107
!
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   108
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   109
selectedThreadGroupHolder:something
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   110
    "set the 'selectedThreadGroupHolder' value holder (automatically generated)"
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   111
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   112
    |oldValue newValue|
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   113
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   114
    selectedThreadGroupHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   115
        oldValue := selectedThreadGroupHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   116
        selectedThreadGroupHolder removeDependent:self.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   117
    ].
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   118
    selectedThreadGroupHolder := something.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   119
    selectedThreadGroupHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   120
        selectedThreadGroupHolder addDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   121
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   122
    newValue := selectedThreadGroupHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   123
    oldValue ~~ newValue ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   124
        self update:#value with:newValue from:selectedThreadGroupHolder.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   125
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   126
!
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   127
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   128
selectedThreadHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   129
    "return/create the 'selectedThreadHolder' value holder (automatically generated)"
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   130
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   131
    selectedThreadHolder isNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   132
        selectedThreadHolder := ValueHolder new.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   133
        selectedThreadHolder addDependent:self.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   134
    ].
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   135
    ^ selectedThreadHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   136
!
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   137
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   138
selectedThreadHolder:something
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   139
    "set the 'selectedThreadHolder' value holder (automatically generated)"
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   140
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   141
    |oldValue newValue|
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   142
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   143
    selectedThreadHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   144
        oldValue := selectedThreadHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   145
        selectedThreadHolder removeDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   146
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   147
    selectedThreadHolder := something.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   148
    selectedThreadHolder notNil ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   149
        selectedThreadHolder addDependent:self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   150
    ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   151
    newValue := selectedThreadHolder value.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   152
    oldValue ~~ newValue ifTrue:[
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   153
        self update:#value with:newValue from:selectedThreadHolder.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   154
    ].
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   155
! !
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   156
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   157
!VDBStackApplication methodsFor:'change & update'!
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   158
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   159
enqueueUpdateAfterThreadStopped:aGDBThread 
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   160
    self enqueueDelayedUpdate:#delayedUpdateAfterThreadStopped:
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   161
        with:aGDBThread
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   162
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   163
    "Created: / 22-09-2014 / 23:15:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   164
    "Modified: / 17-01-2018 / 06:52:50 / jv"
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   165
!
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   167
update:aspect with:param from:sender
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   168
    "Invoked when an object that I depend upon sends a change notification."
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   169
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   170
    "stub code automatically generated - please change as required"
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   171
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   172
    sender == selectedFrameHolder ifTrue:[
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   173
         self updateInternalSelection.
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   174
         ^ self.
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   175
    ].
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   176
    super update:aspect with:param from:sender
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   177
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   178
    "Modified: / 27-02-2015 / 15:44:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   179
!
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   180
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   181
updateInternalSelection
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   182
"/    | selection internalSelection |
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   183
"/
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   184
"/    selection := self selectionHolder value.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   185
"/    internalSelection := self internalListHolder value 
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   186
"/            detect:[:e | e value == selection ] ifNone:[ nil ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   187
"/    self internalSelectionHolder
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   188
"/        value: internalSelection
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   189
"/        withoutNotifying: self.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   190
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   191
    "Created: / 20-09-2014 / 23:05:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   192
    "Modified: / 21-09-2014 / 23:52:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   193
!
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   194
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   195
updateSelection
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   196
    | internalSelection frame thread group |
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   197
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   198
    internalSelection := self internalSelectionHolder value.
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   199
    internalSelection notNil ifTrue:[ 
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   200
        internalSelection isFramePresenter ifTrue:[
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   201
            frame := internalSelection frame.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   202
            thread := frame thread.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   203
            group := thread group.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   204
        ] ifFalse:[ 
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   205
            internalSelection isThreadPresenter ifTrue:[ 
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   206
                thread := internalSelection thread.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   207
                group := thread group.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   208
            ] ifFalse:[  
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   209
                group := internalSelection threadGroup.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   210
            ]
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   211
        ].
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   212
    ].
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   213
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   214
    self selectedThreadGroupHolder value: group withoutNotifying: self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   215
    self selectedThreadHolder value: thread withoutNotifying: self.
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   216
    self selectedFrameHolder value: frame withoutNotifying: self.
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   217
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   218
    "Created: / 20-09-2014 / 23:10:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
23
ed5f4b55cee5 Added toolbar and icons. Show all thread groups and threads in stack view.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 17
diff changeset
   219
    "Modified: / 22-09-2014 / 00:17:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
! !
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
25
e0f3744cd77d When execution is stopped. pre-select frame of stopped thread.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   222
!VDBStackApplication methodsFor:'change & update-delayed'!
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   224
delayedUpdateAfterThreadStopped:thread 
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   225
    "/ It may happen that by te time we get here the thread is running
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   226
    "/ again, so care for this.
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   227
    
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   228
    thread isStopped ifTrue:[
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   229
        |threadP framePs frameP|
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   230
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   231
        threadP := self internalListHolder value root 
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   232
                recursiveDetect:[:e | e isThreadPresenter and:[ e thread == thread ] ].
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   233
        framePs := threadP children.
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   234
        framePs notEmpty ifTrue:[
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   235
            frameP := threadP children first.
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   236
            frameP parent expand.
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   237
            self internalSelectionHolder value:frameP
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   238
        ].
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   239
    ].
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   240
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   241
    "Created: / 22-09-2014 / 23:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   242
    "Modified: / 06-07-2017 / 08:56:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   243
    "Modified: / 16-01-2018 / 20:22:04 / jv"
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   244
!
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   245
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   246
delayedUpdateInternalList
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   247
    | root  list |
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   249
    debugger isNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   250
        self internalListHolder root children:#().
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   251
        ^ self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   252
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   253
    root := self internalListHolder root.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   254
    list := debugger inferiors 
38
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   255
            select:[:inferior | true "inferior isRunning or:[ inferior isStopped ]" ]
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   256
            thenCollect:[:inferior | 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   257
                (VDBThreadGroupPresenter new)
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   258
                    setThreadGroup:inferior;
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   259
                    parent:root
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   260
            ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   261
    root children:list.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   262
    root expand.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   263
    root children size == 1 ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   264
        root children anElement expand.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   265
        root children anElement children size == 1 ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   266
            root children anElement children anElement expand.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   267
        ]
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   268
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   269
    internalListView notNil ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   270
        internalListView invalidate.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   271
    ]
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   272
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   273
    "Created: / 20-09-2014 / 23:05:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
38
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   274
    "Modified: / 02-03-2015 / 06:43:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
e0f3744cd77d When execution is stopped. pre-select frame of stopped thread.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   275
!
e0f3744cd77d When execution is stopped. pre-select frame of stopped thread.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   276
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   277
delayedUpdateSelection
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   278
    | internalSelection frame thread group |
25
e0f3744cd77d When execution is stopped. pre-select frame of stopped thread.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   279
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   280
    internalSelection := self internalSelectionHolder value.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   281
    internalSelection notNil ifTrue:[ 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   282
        internalSelection isFramePresenter ifTrue:[
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   283
            frame := internalSelection frame.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   284
            thread := frame thread.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   285
            group := thread group.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   286
        ] ifFalse:[ 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   287
            internalSelection isThreadPresenter ifTrue:[ 
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   288
                thread := internalSelection thread.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   289
                group := thread group.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   290
            ] ifFalse:[  
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   291
                group := internalSelection threadGroup.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   292
            ]
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   293
        ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   294
    ].
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   295
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   296
    self selectedThreadGroupHolder value: group withoutNotifying: self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   297
    self selectedThreadHolder value: thread withoutNotifying: self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   298
    self selectedFrameHolder value: frame withoutNotifying: self.
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   299
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   300
    "Created: / 27-02-2015 / 15:33:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
! !
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
!VDBStackApplication methodsFor:'event handling'!
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
31
00f6de198c7f Minor fixes in the UI - redraw stack list when execution state changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 25
diff changeset
   305
onRunningEvent: event
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   306
    internalListView invalidate
31
00f6de198c7f Minor fixes in the UI - redraw stack list when execution state changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 25
diff changeset
   307
00f6de198c7f Minor fixes in the UI - redraw stack list when execution state changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 25
diff changeset
   308
    "Created: / 30-09-2014 / 00:02:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   309
    "Modified: / 17-01-2018 / 06:59:11 / jv"
31
00f6de198c7f Minor fixes in the UI - redraw stack list when execution state changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 25
diff changeset
   310
!
00f6de198c7f Minor fixes in the UI - redraw stack list when execution state changes.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 25
diff changeset
   311
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
onStoppedEvent: event
53
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   313
    | stoppedThread |
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   314
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   315
    self enqueueDelayedUpdateInternalList.
53
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   316
    stoppedThread := event stoppedThread.
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   317
    stoppedThread notNil ifTrue:[
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   318
        self enqueueUpdateAfterThreadStopped:event stoppedThread.
53
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   319
    ].
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
    "Created: / 17-09-2014 / 23:04:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
25
e0f3744cd77d When execution is stopped. pre-select frame of stopped thread.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 24
diff changeset
   322
    "Modified: / 22-09-2014 / 23:26:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
53
738e2f6626bf Win32: initial support for Windows.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 49
diff changeset
   323
    "Modified: / 15-01-2018 / 11:51:51 / jv"
15
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   324
!
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   325
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   326
onThreadGroupExitedEvent: event
37
f417fe8685c5 Initial support for variables
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 34
diff changeset
   327
    self enqueueDelayedUpdateInternalList.
15
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   328
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   329
    "Created: / 18-09-2014 / 23:30:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
17
c5ee4ea44165 Some more work on source displaying
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   330
    "Modified: / 20-09-2014 / 23:08:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
38
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   331
!
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   332
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   333
onThreadGroupStartedEvent: event
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   334
    self enqueueDelayedUpdateInternalList.
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   335
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   336
    "Created: / 02-03-2015 / 06:42:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
! !
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
!VDBStackApplication methodsFor:'initialization & release'!
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   341
subscribe   
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
    "Register for debugger events. To be overrided by subclasses"
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
    debugger announcer
38
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   345
        when: GDBRunningEvent               send: #onRunningEvent: to: self;
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   346
        when: GDBStoppedEvent               send: #onStoppedEvent: to: self;
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   347
        when: GDBThreadGroupStartedEvent    send: #onThreadGroupStartedEvent: to: self;
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   348
        when: GDBThreadGroupExitedEvent     send: #onThreadGroupExitedEvent: to: self
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
    "Created: / 07-06-2014 / 14:33:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
38
9b861cb882c8 Show al thread groupd, even terminated ones
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
   351
    "Modified: / 02-03-2015 / 06:42:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
55
fd2637e6d153 UI: refactored updates in thread / stack view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   352
    "Modified: / 17-01-2018 / 06:56:46 / jv"
13
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
! !
d06924d8ca0a Minor fixes in UI - allow to open stack window as floating tool window.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
15
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   355
!VDBStackApplication class methodsFor:'documentation'!
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   356
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   357
version_HG
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   358
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   359
    ^ '$Changeset: <not expanded> $'
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   360
! !
7cddd476fb00 Fix in stack application: react on thread / inferior termination.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
   361