VDBBreakpointApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Fri, 25 Jan 2019 13:33:51 +0000
changeset 143 df7f89efd39d
parent 49 2ec7f7ed9242
child 264 23960fcb9dac
permissions -rw-r--r--
A complete rewrite of simple console ..that is not using `TerminalView`. The original (previous) implementation had various problems that were hard to fix, namely loosing some stream output in some cases. New (current) implementation uses custom console view (1VDBSimpleDebuggerConsoleView`) based on `TextCollector` rather than `TerminalView`. The resulting code is much much simpler, it does not use internal pipes nor REPL / pipe reader processes. Whole REPL runs completely in UI process.
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
"
46
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
"{ Package: 'jv:vdb' }"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
"{ NameSpace: Smalltalk }"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
VDBAbstractApplication subclass:#VDBBreakpointApplication
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
	instanceVariableNames:'breakpointHolder enabledHolder'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
	classVariableNames:''
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
	poolDictionaries:''
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
	category:'VDB-UI-Others'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
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
    20
!VDBBreakpointApplication 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
    21
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
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
    23
"
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
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
    25
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
    26
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
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
    28
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
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
    30
"
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
! !
46
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
!VDBBreakpointApplication class methodsFor:'interface specs'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
windowSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
    "This resource specification was automatically generated
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
     by the UIPainter of ST/X."
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
    "Do not manually edit this!! If it is corrupted,
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
     the UIPainter may not be able to read the specification."
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    "
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
     UIPainter new openOnClass:VDBBreakpointApplication andSelector:#windowSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
     VDBBreakpointApplication new openInterface:#windowSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
     VDBBreakpointApplication open
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
    "
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    <resource: #canvas>
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
    ^ 
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    #(FullSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
       name: windowSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
       window: 
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
      (WindowSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
         label: 'Breakpoint'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
         name: 'Breakpoint'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
         labelChannel: titleHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
         min: (Point 10 10)
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
         bounds: (Rectangle 0 0 300 300)
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
       )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
       component: 
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
      (SpecCollection
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
         collection: (
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
          (VerticalPanelViewSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
             name: 'Controls'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
             layout: (LayoutFrame 5 0 5 0 -5 1 -5 1)
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
             horizontalLayout: fit
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
             verticalLayout: topSpaceFit
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
             horizontalSpace: 3
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
             verticalSpace: 3
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
             component: 
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
            (SpecCollection
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
               collection: (
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
                (LabelSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
                   label: 'Condition'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
                   name: 'ConditionLabel'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
                   translateLabel: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
                   adjust: left
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
                   enableDisableColorChannel: enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
                   useDefaultExtent: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
                 )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
                (ComboBoxSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
                   name: 'Condition'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
                   enableChannel: enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
                   model: breakpointConditionHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
                   acceptOnPointerLeave: false
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
                   useDefaultExtent: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
                 )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
                (LabelSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
                   label: 'Script'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
                   name: 'ScriptLabel'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
                   translateLabel: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
                   adjust: left
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
                   enableDisableColorChannel: enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
                   useDefaultExtent: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
                 )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
                (TextEditorSpec
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
                   name: 'TextEditor1'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
                   enableChannel: enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
                   model: breakpointScriptHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
                   hasHorizontalScrollBar: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
                   hasVerticalScrollBar: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
                   hasKeyboardFocusInitially: false
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
                   extent: (Point 290 198)
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
                   useDynamicPreferredHeight: true
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
                 )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
                )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
              
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
             )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
           )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
          )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
        
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
       )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
     )
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
!VDBBreakpointApplication class methodsFor:'plugIn spec'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
aspectSelectors
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    "This resource specification was automatically generated
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
     by the UIPainter of ST/X."
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
    "Do not manually edit this. If it is corrupted,
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
     the UIPainter may not be able to read the specification."
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    "Return a description of exported aspects;
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
     these can be connected to aspects of an embedding application
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
     (if this app is embedded in a subCanvas)."
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
    ^ #(
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
        #breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
        #debuggerHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
      ).
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
!VDBBreakpointApplication methodsFor:'aspects'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
breakpointConditionHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
    ^ (AspectAdaptor forAspect: #condition) subjectChannel: self breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
    "Created: / 12-07-2017 / 11:06:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
    "return/create the 'breakpointHolder' value holder (automatically generated)"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    breakpointHolder isNil ifTrue:[
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
        breakpointHolder := ValueHolder new.
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    ].
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
    ^ breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
breakpointHolder:aValueModel
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
    "set the 'breakpointHolder' value holder (automatically generated)"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
    breakpointHolder := aValueModel.
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
breakpointScriptHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
    ^ (AspectAdaptor forAspect: #script) subjectChannel: self breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
    "Created: / 12-07-2017 / 11:07:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
    "return/create the 'breakpointHolder' value holder (automatically generated)"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
    enabledHolder isNil ifTrue:[
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
        enabledHolder := (AspectAdaptor forAspect: #notNil) subjectChannel: self breakpointHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
    ].
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
    ^ enabledHolder
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
    "Created: / 14-07-2017 / 10:29:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
!VDBBreakpointApplication class methodsFor:'documentation'!
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
version_HG
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
    ^ '$Changeset: <not expanded> $'
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
! !
6b857f3cec8c Initial support for breakpoints
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183