Tools__BreakpointBrowser.st
author Claus Gittinger <cg@exept.de>
Wed, 20 Aug 2008 21:40:26 +0200
changeset 8234 971ce68b9ff6
parent 8233 e2f89abb11d9
child 8241 ea82422336bb
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8234
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     1
"
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     2
 COPYRIGHT (c) 2008 by eXept Software AG
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     3
              All Rights Reserved
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     4
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     5
 This software is furnished under a license and may be used
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     6
 only in accordance with the terms of that license and with the
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     8
 be provided or otherwise made available to, or used by, any
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
     9
 other person.  No title to or ownership of the software is
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    10
 hereby transferred.
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    11
"
8233
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"{ NameSpace: Tools }"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
ApplicationModel subclass:#BreakpointBrowser
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	instanceVariableNames:'updatingLabelShown breakpointList shownCopyOfBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
		selectionIndexHolder currentSortColumn currentSortIsReverse
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
		showHalts showAssertions showCodeBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
		showCodeBreakpointsFor showMethodBreakpoints codeView'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	classVariableNames:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
	poolDictionaries:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
	category:'Interface-Smalltalk-Breakpoints'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
Object subclass:#BreakpointListEntry
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
	instanceVariableNames:'type arg className selector lineNumber info enabled'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	classVariableNames:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	poolDictionaries:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
	privateIn:BreakpointBrowser
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
RBProgramNodeVisitor subclass:#MessageArgumentExtractor
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	instanceVariableNames:'callBack selectorToSearch'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
	classVariableNames:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
	poolDictionaries:''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
	privateIn:BreakpointBrowser
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!BreakpointBrowser class methodsFor:'documentation'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
8234
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    42
copyright
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    43
"
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    44
 COPYRIGHT (c) 2008 by eXept Software AG
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    45
              All Rights Reserved
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    46
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    47
 This software is furnished under a license and may be used
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    48
 only in accordance with the terms of that license and with the
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    49
 inclusion of the above copyright notice.   This software may not
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    50
 be provided or otherwise made available to, or used by, any
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    51
 other person.  No title to or ownership of the software is
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    52
 hereby transferred.
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    53
"
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    54
!
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    55
8233
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
documentation
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
"
8234
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
    58
    tool to list breakpoints (breakPoint/halt/assert)
8233
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    [author:]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
        cg (cg@FUSI)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
!BreakpointBrowser class methodsFor:'interface specs'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
windowSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
     by the UIPainter of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
     the UIPainter may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
     UIPainter new openOnClass:Tools::BreakpointBrowser andSelector:#windowSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
     Tools::BreakpointBrowser new openInterface:#windowSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
     Tools::BreakpointBrowser open
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    <resource: #canvas>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
    ^ 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
     #(FullSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
        name: windowSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
        window: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
       (WindowSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
          label: 'Breakpoint Browser'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
          name: 'Breakpoint Browser'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
          min: (Point 10 10)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
          max: (Point 1024 768)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
          bounds: (Rectangle 0 0 680 691)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
          menu: mainMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
        )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
        component: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
       (SpecCollection
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
          collection: (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
           (MenuPanelSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
              name: 'ToolBar1'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
              layout: (LayoutFrame 0 0.0 0 0 0 1.0 40 0)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
              menu: toolBarMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
              textDefault: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
           (VariableVerticalPanelSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
              name: 'VariableVerticalPanel1'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
              layout: (LayoutFrame 0 0 40 0 0 1 0 1)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
              snapMode: both
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
              component: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
             (SpecCollection
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
                collection: (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
                 (DataSetSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
                    name: 'Table'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
                    model: selectionIndexHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
                    menu: itemMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
                    hasHorizontalScrollBar: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
                    hasVerticalScrollBar: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
                    dataList: shownCopyOfBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
                    doubleClickSelector: itemDoubleClicked:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
                    columnHolder: tableColumns
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
                  )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
                 (TextEditorSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
                    name: 'TextEditor1'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
                    hasHorizontalScrollBar: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
                    hasVerticalScrollBar: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
                    hasKeyboardFocusInitially: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
                    viewClassName: 'CodeView'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
                    postBuildCallback: postBuildCodeView:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
                  )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
                 )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
               
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
              )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
              handles: (Any 0.5 1.0)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
           (LabelSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
              label: 'Updating...'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
              name: 'Label1'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
              layout: (LayoutFrame 0 0 32 0 0 1 0 1)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
              visibilityChannel: updatingLabelShown
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
              translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
           )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
         
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
        )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
!BreakpointBrowser class methodsFor:'menu specs'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
itemMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
     by the MenuEditor of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
     the MenuEditor may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
     MenuEditor new openOnClass:Tools::BreakpointBrowser andSelector:#itemMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
     (Menu new fromLiteralArrayEncoding:(Tools::BreakpointBrowser itemMenu)) startUp
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
    <resource: #menu>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
    ^ 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
     #(Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
        (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
            label: 'Browse'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
            itemValue: browseItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
         )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
mainMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
     by the MenuEditor of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
     the MenuEditor may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
     MenuEditor new openOnClass:Tools::BreakpointBrowser andSelector:#mainMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
     (Menu new fromLiteralArrayEncoding:(Tools::BreakpointBrowser mainMenu)) startUp
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    <resource: #menu>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    ^ 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
     #(Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
        (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
            label: 'File'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
            submenu: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
           (Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
              (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
                  label: 'Exit'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
                  itemValue: closeRequest
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
               )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
            label: 'View'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
            submenu: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
           (Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
              (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
                  label: 'Update List'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
                  itemValue: updateList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
                  label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
                  label: 'Assertions'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
                  itemValue: showAssertions:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
                  hideMenuOnActivated: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
                  indication: showAssertions
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
                  label: 'Halts'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
                  itemValue: showHalts:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
                  hideMenuOnActivated: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
                  indication: showHalts
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
                  label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
                  label: 'Code Breakpoints'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
                  itemValue: showCodeBreakpoints:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
                  hideMenuOnActivated: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
                  indication: showCodeBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
                  enabled: showCodeBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
                  label: ' '
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
                  submenuChannel: codeBreakpointMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
                  label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
                  label: 'Method Breakpoints'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
                  itemValue: showMethodBreakpoints:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
                  hideMenuOnActivated: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
                  indication: showMethodBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
               )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
            label: 'Enable'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
            submenu: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
           (Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
              (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
                  label: 'Assertions'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
                  itemValue: enableAssertions:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
                  indication: enableAssertions
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
                  label: 'Halts'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
                  itemValue: enableHalts:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
                  indication: enableHalts
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
                  label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
                  label: 'Code Breakpoints'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
                  submenuChannel: enabledCodeBreakpointMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
               )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
            label: 'Help'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
            startGroup: right
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
            submenu: 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
           (Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
              (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
                  label: 'Documentation'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
                  itemValue: openDocumentation
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
                  label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
               (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
                  label: 'About this Application...'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
                  itemValue: openAboutThisApplication
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
                  translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
                )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
               )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
              nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
            )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
         )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
toolBarMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
     by the MenuEditor of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
     the MenuEditor may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
     MenuEditor new openOnClass:Tools::BreakpointBrowser andSelector:#toolBarMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
     (Menu new fromLiteralArrayEncoding:(Tools::BreakpointBrowser toolBarMenu)) startUp
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
    <resource: #menu>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
    ^ 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
     #(Menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
        (
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
            label: 'Update List'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
            itemValue: updateList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
            isButton: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
            labelImage: (ResourceRetriever XPToolbarIconLibrary reloadIcon)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
            label: '-'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
         (MenuItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
            enabled: hasSelectionHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
            label: 'Browse Selected Method'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
            itemValue: browseSelectedItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
            translateLabel: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
            isButton: true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
            labelImage: (ResourceRetriever XPToolbarIconLibrary startNewSystemBrowserIcon)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
          )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
         )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
        nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
!BreakpointBrowser class methodsFor:'tableColumns specs'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
tableColumns
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
     by the DataSetBuilder of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
     the DataSetBuilder may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
     DataSetBuilder new openOnClass:Tools::BreakpointBrowser andSelector:#tableColumns
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
    <resource: #tableColumns>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
    ^#(
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
         label: 'Type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
         labelActionArgument: 'type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
         width: 60
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
         model: type
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
         label: 'Arg'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
         labelActionArgument: 'type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
         width: 50
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
         model: arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
         label: 'Class'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
         labelActionArgument: 'className'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
         width: 150
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
         model: className
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
         label: 'Method'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
         labelActionArgument: 'selector'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
         width: 200
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
         model: selector
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
         label: 'Line'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
         labelActionArgument: 'lineNumber'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
         width: 35
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
         model: lineNumber
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
         label: 'Info'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
         labelActionArgument: 'info'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
         model: info
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
    
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
tableColumns_v1
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    "This resource specification was automatically generated
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
     by the DataSetBuilder of ST/X."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
    "Do not manually edit this!! If it is corrupted,
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
     the DataSetBuilder may not be able to read the specification."
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
     DataSetBuilder new openOnClass:Tools::BreakpointBrowser andSelector:#tableColumns
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
    "
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
    <resource: #tableColumns>
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
    ^#(
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
         label: 'Enabled'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
         width: 50
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
         editorType: CheckToggle
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
         rendererType: CheckToggle
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
         model: enabled
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
         label: 'Type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
         labelActionArgument: 'type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
         width: 60
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
         model: type
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
         label: 'Arg'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
         labelActionArgument: 'type'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
         width: 50
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
         model: arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
         label: 'Class'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
         labelActionArgument: 'className'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
         width: 150
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
         model: className
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
         label: 'Method'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
         labelActionArgument: 'selector'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
         width: 200
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
         model: selector
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   529
         label: 'Line'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
         labelActionArgument: 'lineNumber'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
         width: 35
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
         model: lineNumber
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
      (DataSetColumnSpec
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
         label: 'Info'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
         labelAlignment: left
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
         activeHelpKey: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   544
         activeHelpKeyForLabel: ''
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
         labelButtonType: Button
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
         labelActionSelector: sortBy:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
         labelActionArgument: 'info'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
         model: info
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
         canSelect: false
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
       )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
      )
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
!BreakpointBrowser methodsFor:'accessing'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
breakpointListEntryAtIndex:idx
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
    ^ shownCopyOfBreakpointList at:idx ifAbsent:nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   558
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   559
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
selectedBreakpointListEntry
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
    ^ self breakpointListEntryAtIndex:(self selectionIndex).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
selectionIndex
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
    ^ self selectionIndexHolder value
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
shownCopyOfBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
    shownCopyOfBreakpointList isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
        shownCopyOfBreakpointList := List new
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
    ^ shownCopyOfBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
    "Created: / 18-02-2007 / 12:53:01 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
updatingLabelShown
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
    updatingLabelShown isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
        updatingLabelShown := true asValue
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
    ^ updatingLabelShown
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
!BreakpointBrowser methodsFor:'aspects'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
enableAssertions
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
    ^ (Smalltalk at:#IgnoreAssertion ifAbsent:false) not
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
enableAssertions:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
    ^ Smalltalk at:#IgnoreAssertion put:aBoolean not
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
enableHalts
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
    ^ (Smalltalk at:#IgnoreHalt ifAbsent:false) not
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
enableHalts:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
    ^ Smalltalk at:#IgnoreHalt put:aBoolean not
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
hasSelectionHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
    ^ BlockValue
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
        with:[:selIndex | selIndex notNil and:[selIndex ~~ 0]] 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
        argument:self selectionIndexHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
selectionIndexHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
    selectionIndexHolder isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
        selectionIndexHolder := nil asValue.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
        selectionIndexHolder onChangeSend:#updateCode to:self
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
    ^ selectionIndexHolder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
    "Created: / 22-10-2006 / 02:00:41 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
showAssertions
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
    ^ showAssertions ? true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
showAssertions:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
    showAssertions := aBoolean.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
    self updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   632
showCodeBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   633
    ^ showCodeBreakpoints ? true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
showCodeBreakpoints:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
    showCodeBreakpoints := aBoolean.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
    self updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   641
showHalts
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   642
    ^ showHalts ? true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
showHalts:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
    showHalts := aBoolean.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
    self updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
showMethodBreakpoints
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
    ^ showMethodBreakpoints ? true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
showMethodBreakpoints:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
    showMethodBreakpoints := aBoolean.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
    self updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
!BreakpointBrowser methodsFor:'change & update'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
delayedUpdate:something with:aParameter from:changedObject
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
"/    changedObject == toDoList ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
"/        self updateShownToDoList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
"/        ^ self
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   665
"/    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
filter
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    |newList|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   670
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   671
    newList := breakpointList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   672
    self showHalts ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
        newList := newList reject:[:entry | entry isHalt].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   674
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
    self showCodeBreakpoints ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   676
        newList := newList reject:[:entry | entry isCodeBreakpoint].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   677
    ] ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   678
        newList := newList reject:[:entry | 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
                                |flag|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   680
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   681
                                flag := (showCodeBreakpointsFor at:(entry arg ? '<nil>') ifAbsentPut:[true asValue]) value.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   682
                                entry isCodeBreakpoint
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
                                and:[ flag not ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
                           ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
    self showMethodBreakpoints ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
        newList := newList reject:[:entry | entry isMethodBreakpoint].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
    self showAssertions ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
        newList := newList reject:[:entry | entry isAssertion].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
    shownCopyOfBreakpointList contents:newList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   695
update:something with:aParameter from:changedObject
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
    ^ super update:something with:aParameter from:changedObject
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   697
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   698
    "Created: / 18-02-2007 / 12:54:32 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   699
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   700
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
updateBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
    |newShowCodeBreakpointsFor messages update |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   704
    breakpointList removeAll.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   705
    newShowCodeBreakpointsFor := Dictionary new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   706
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
    messages := #( 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
                    (#breakPoint:       #breakpoint)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
                    (#breakPoint:info:  #breakpoint)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
                    (#halt              #halt)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
                    (#halt:             #halt)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
                    (#assert:           #assertion)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   713
                    (#assert:message:   #assertion)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
                ).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
    update := [:cls :mthd :sel |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
        |entry type|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
        mthd isWrapped ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   720
            mthd isBreakpointed ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
                type := #trap
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   722
            ] ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   723
                mthd isTraced ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   724
                    type := #trace
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   725
                ] ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   726
                    type := #probe
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   727
                ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   728
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   729
            entry := BreakpointListEntry new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   730
            entry 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
                type:#wrap 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   732
                arg:type 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   733
                className:cls name 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
                selector:sel
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
                lineNumber:nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
                info:nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
                enabled:true.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
            breakpointList add:entry.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   740
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   741
        messages pairsDo:[:bpSel :type|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
            |tree extractor|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   744
            (mthd sends:bpSel) ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
                tree := mthd parseTree.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
                tree isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   747
                    entry := BreakpointListEntry new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   748
                    entry 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   749
                        type:type 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   750
                        arg:nil 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   751
                        className:cls name 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   752
                        selector:sel
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   753
                        lineNumber:nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   754
                        info:nil
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   755
                        enabled:true.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   756
                    breakpointList add:entry.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   757
                ] ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   758
                    extractor := MessageArgumentExtractor new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   759
                    extractor selectorToSearch:bpSel.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   760
                    extractor callBack:[:lineNo :argument :infoMessage |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   761
                        argument notNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   762
                            newShowCodeBreakpointsFor 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   763
                                at:argument 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   764
                                put:(showCodeBreakpointsFor
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   765
                                        at:argument
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   766
                                        ifAbsent:[true asValue])
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   767
                        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   768
                        entry := BreakpointListEntry new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   769
                        entry 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   770
                            type:type 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   771
                            arg:argument 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   772
                            className:cls name 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   773
                            selector:sel 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   774
                            lineNumber:lineNo
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   775
                            info:infoMessage
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   776
                            enabled:true.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   777
                        breakpointList add:entry.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   778
                    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   779
                    tree acceptVisitor:extractor.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
                ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   781
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   782
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   783
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   784
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   785
    Smalltalk allClassesDo:[:cls |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   786
        cls selectorsAndMethodsDo:[:sel :mthd |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   787
            update value:cls value:mthd value:sel
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   788
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   789
        cls class selectorsAndMethodsDo:[:sel :mthd |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   790
            update value:cls class value:mthd value:sel
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   791
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   792
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   793
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   794
    showCodeBreakpointsFor := newShowCodeBreakpointsFor.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   795
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   796
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   797
updateCode
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   798
    |entry method|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   799
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   800
    entry := self selectedBreakpointListEntry.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   801
    entry isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   802
        codeView contents:nil.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   803
        ^ self
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   804
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   805
    method := entry method.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   806
    method isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   807
        codeView contents:'OOPS - no source found'.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   808
    ] ifFalse:[        
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   809
        codeView contents:(method source).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   810
        entry lineNumber notNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   811
            codeView cursorLine:entry lineNumber col:1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   812
            codeView selectLine:entry lineNumber.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   813
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   814
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   815
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   816
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   817
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   818
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   819
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   820
updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   821
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   822
    self shownCopyOfBreakpointList contents:breakpointList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   823
    self filter.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   824
    self resort.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   825
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   826
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   827
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   828
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   829
!BreakpointBrowser methodsFor:'initialization & release'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   830
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   831
initialize
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   832
    super initialize.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   833
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   834
    showCodeBreakpointsFor := Dictionary new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   835
    breakpointList := List new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   836
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   837
    currentSortColumn := #type.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   838
    currentSortIsReverse := false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   839
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   840
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   841
postBuildCodeView:aView
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   842
    codeView := aView
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   843
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   844
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   845
postOpenWith:aBuilder
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   846
    super postOpenWith:aBuilder.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   847
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   848
    self enqueueMessage:#updateList for:self arguments:#().
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   849
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   850
    "Modified: / 18-02-2007 / 12:55:57 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   851
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   852
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   853
!BreakpointBrowser methodsFor:'menu actions'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   854
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   855
openAboutThisApplication
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   856
    super openAboutThisApplication
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   857
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   858
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   859
openDocumentation
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   860
    HTMLDocumentView openFullOnDocumentationFile:'tools/misc/TOP.html#BREAKPOINTLIST'.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   861
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   862
    "/ add application-specific help files under the 'doc/online/<language>/help/appName'
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   863
    "/ directory, and open a viewer with:
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   864
    "/ HTMLDocumentView openFullOnDocumentationFile:'help/<MyApplication>/TOP.html'.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   865
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   866
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   867
!BreakpointBrowser methodsFor:'menu actions-item'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   868
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   869
browseItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   870
    (self breakpointListEntryAtIndex:self selectionIndexHolder value) browse
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   871
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   872
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   873
removeItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   874
    breakpointList remove:(self selectedBreakpointListEntry)
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   875
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   876
    "Created: / 22-10-2006 / 10:45:52 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   877
    "Modified: / 18-02-2007 / 12:57:58 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   878
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   879
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   880
removeItems:entriesToRemove
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   881
    entriesToRemove do:[:entryToRemove |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   882
        toDoList remove:entryToRemove
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   883
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   884
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   885
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   886
!BreakpointBrowser methodsFor:'menus-dynamic'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   887
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   888
codeBreakpointMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   889
    <resource: #programMenu >
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   890
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   891
    |breakpointArgs menu|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   892
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   893
    breakpointArgs := Set new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   894
    breakpointList 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   895
                        select:[:entry | entry arg notNil]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   896
                        thenDo:[:entry | breakpointArgs add:entry arg].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   897
    (breakpointList contains:[:entry | entry arg isNil]) ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   898
        breakpointArgs add:'<nil>'.    
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   899
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   900
    breakpointArgs := breakpointArgs asSortedCollection.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   901
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   902
    menu := Menu new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   903
    breakpointArgs do:[:arg| 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   904
        | menuItem |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   905
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   906
        menuItem := MenuItem new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   907
        menuItem label:arg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   908
        menuItem translateLabel:false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   909
        menuItem indication:(showCodeBreakpointsFor at:arg ifAbsentPut:[true asValue]).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   910
        menuItem hideMenuOnActivated:false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   911
        menuItem value:[:onOff |   
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   912
            (showCodeBreakpointsFor at:arg ifAbsentPut:[true asValue]) value:onOff.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   913
            self updateShownBreakpointList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   914
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   915
        menu addItem:menuItem.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   916
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   917
    menu findGuiResourcesIn:self.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   918
    ^ menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   919
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   920
    "Modified: / 27-03-2007 / 10:54:29 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   921
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   922
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   923
enabledCodeBreakpointMenu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   924
    <resource: #programMenu >
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   925
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   926
    |breakpointArgs menu enabledCodeBreakpointHolders|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   927
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   928
    enabledCodeBreakpointHolders := Dictionary new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   929
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   930
    breakpointArgs := Set new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   931
    breakpointList 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   932
                        select:[:entry | entry arg notNil]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   933
                        thenDo:[:entry | breakpointArgs add:entry arg].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   934
    (breakpointList contains:[:entry | entry arg isNil]) ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   935
        breakpointArgs add:'<nil>'.    
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   936
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   937
    breakpointArgs := breakpointArgs asSortedCollection.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   938
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   939
    menu := Menu new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   940
    breakpointArgs do:[:arg| 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   941
        | menuItem |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   942
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   943
        menuItem := MenuItem new.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
        menuItem label:arg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   945
        menuItem translateLabel:false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   946
        menuItem indication:(enabledCodeBreakpointHolders at:arg ifAbsentPut:[ (Object isBreakPointEnabled:arg) asValue ]).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   947
        menuItem hideMenuOnActivated:false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
        menuItem value:[:onOff |   
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
            (enabledCodeBreakpointHolders at:arg ifAbsentPut:[(Object isBreakPointEnabled:arg) asValue]) value:onOff.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
            onOff ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   951
                Object disableBreakPoint:arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   952
            ] ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   953
                Object enableBreakPoint:arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   954
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   955
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   956
        menu addItem:menuItem.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   957
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
    menu findGuiResourcesIn:self.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
    ^ menu
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   960
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   961
    "Modified: / 27-03-2007 / 10:54:29 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   962
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   963
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   964
!BreakpointBrowser methodsFor:'user actions'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
browseSelectedItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   967
    (self selectedBreakpointListEntry) browse
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   968
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   969
    "Created: / 22-10-2006 / 01:49:13 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   970
    "Modified: / 18-02-2007 / 12:56:30 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   971
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   972
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   973
itemDoubleClicked:itemIndex
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   974
    self browseSelectedItem
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   975
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   976
    "Created: / 22-10-2006 / 01:49:13 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   977
    "Modified: / 18-02-2007 / 12:56:30 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   978
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   979
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   980
resort
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   981
    |sortBlock sortBlock1|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   982
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   983
    currentSortColumn isNil ifTrue:[^ self ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   984
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
    sortBlock := sortBlock1 := [:a :b |
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   986
                                    |vA vB|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   987
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   988
                                    vA := (a perform:currentSortColumn).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
                                    vB := (b perform:currentSortColumn).
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   990
                                    vA = vB ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   991
                                        currentSortColumn == #type ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   992
                                            vA := a arg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   993
                                            vB := b arg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   994
                                            vA = vB ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   995
                                                vA := a className.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   996
                                                vB := b className.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   997
                                                vA = vB ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
                                                    vA := a selector.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
                                                    vB := b selector.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
                                                    vA = vB ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1001
                                                        vA := a lineNumber.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1002
                                                        vB := b lineNumber.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1003
                                                    ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
                                                ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
                                            ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
                                        ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1007
                                    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1008
                                    (vA ? '') < (vB ? '')
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1009
                               ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1010
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1011
    currentSortIsReverse ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1012
        sortBlock := [:a :b | (sortBlock1 value:a value:b) not ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1013
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1014
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
    "/ temporary hack - should make a copy of the real list
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
    self shownCopyOfBreakpointList sort:sortBlock
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1018
    "Created: / 25-10-2006 / 01:01:26 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1019
    "Modified: / 18-02-2007 / 13:02:19 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1020
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1021
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1022
sortBy:instanceName
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1023
    self sortBy:instanceName withReverse:true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1024
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1025
    "Created: / 25-10-2006 / 00:53:55 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1026
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1028
sortBy:instanceName withReverse:aBoolean
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1029
    |aSymbol|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
    aSymbol := instanceName asSymbol.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1032
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1033
    currentSortColumn isNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
        currentSortColumn := aSymbol.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
        currentSortIsReverse := false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
    ] ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
        currentSortColumn = aSymbol ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
            "/ same column like before - change sort order ifReverse is true
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
            aBoolean ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
                currentSortIsReverse := currentSortIsReverse not.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
        ] ifFalse:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1043
            "/ another column - remark column
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1044
            currentSortColumn := aSymbol.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1045
        ]
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1046
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1047
    self resort.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1048
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1049
    "Created: / 25-10-2006 / 00:54:59 / cg"
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1051
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1052
updateList
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1053
    self updatingLabelShown value:true.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1054
    "/ cg: mhmh why is this needed ????
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1055
    Delay waitForSeconds:0.1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1056
    self windowGroup repairDamage.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1057
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1058
    self withWaitCursorDo:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1059
        self updateBreakpointList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1060
        self updateShownBreakpointList.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1061
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1062
    self updatingLabelShown value:false.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1063
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1064
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1065
!BreakpointBrowser::BreakpointListEntry methodsFor:'accessing'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1066
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1067
arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1068
    ^ arg
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1069
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1070
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1071
className
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1072
    ^ className
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1073
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1074
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1075
enabled
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1076
    ^ enabled
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1077
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1078
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
info
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
    ^ info
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1082
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
lineNumber
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
    ^ lineNumber
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
selector
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
    ^ selector
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
type
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
    ^ type
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1095
type:typeArg arg:argArg className:classNameArg selector:selectorArg lineNumber:lineNumberArg info:infoArg enabled:enabledArg 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1096
    type := typeArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
    arg := argArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
    className := classNameArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1099
    selector := selectorArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1100
    lineNumber := lineNumberArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1101
    info := infoArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1102
    enabled := enabledArg.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1104
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1105
!BreakpointBrowser::BreakpointListEntry methodsFor:'actions'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1106
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1107
browse
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
    |browser|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
    browser := UserPreferences systemBrowserClass
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1111
        openInClass:(Smalltalk classNamed:className) selector:selector.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
    lineNumber notNil ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
        browser codeView cursorLine:lineNumber col:1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
        browser codeView selectLine:lineNumber.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1118
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1119
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
method
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1121
    ^ (Smalltalk classNamed:className) compiledMethodAt:selector.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1122
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1123
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1124
!BreakpointBrowser::BreakpointListEntry methodsFor:'testing'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1125
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1126
isAssertion
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
    ^ type == #assertion
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1129
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1130
isCodeBreakpoint
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
    ^ type == #breakpoint
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1132
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1133
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
isHalt
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
    ^ type == #halt
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1137
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1138
isMethodBreakpoint
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
    ^ type == #wrap
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
!BreakpointBrowser::MessageArgumentExtractor methodsFor:'accessing'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1143
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1144
callBack:something
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1145
    callBack := something.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1146
!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1147
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1148
selectorToSearch:something
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1149
    selectorToSearch := something.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1150
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1151
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1152
!BreakpointBrowser::MessageArgumentExtractor methodsFor:'visiting'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1153
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1154
acceptMessageNode: aMessageNode
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1155
    |arg1Node arg1 arg2Node arg2 argument infoMessage|
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1156
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1157
    aMessageNode selector == selectorToSearch ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
        aMessageNode arguments size > 0 ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
            arg1Node := aMessageNode arguments first.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
            arg1Node isLiteral ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1161
                arg1 := arg1Node value.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1162
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1163
            aMessageNode arguments size > 1 ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1164
                arg2Node := aMessageNode arguments second.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1165
                arg2Node isLiteral ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1166
                    arg2 := arg2Node value.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1167
                ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1168
            ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1169
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1170
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1171
        selectorToSearch == #halt: ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1172
            infoMessage := arg1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1173
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
        selectorToSearch == #breakPoint: ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1175
            argument := arg1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1176
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1177
        selectorToSearch == #breakPoint:info: ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1178
            argument := arg1.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1179
            infoMessage := arg2.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1180
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1181
        selectorToSearch == #assert: ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1182
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1183
        selectorToSearch == #assert:message: ifTrue:[
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1184
            infoMessage := arg2.
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1185
        ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1186
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
        callBack 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1188
            value:aMessageNode firstLineNumber 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1189
            value:argument 
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
            value:infoMessage
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
    ].
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1192
    super acceptMessageNode: aMessageNode
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1193
! !
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1194
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1195
!BreakpointBrowser class methodsFor:'documentation'!
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1196
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1197
version
8234
971ce68b9ff6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8233
diff changeset
  1198
    ^ '$Header: /cvs/stx/stx/libtool/Tools__BreakpointBrowser.st,v 1.2 2008-08-20 19:40:26 cg Exp $'
8233
e2f89abb11d9 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
! !