Tools__ToDoListBrowser.st
author Claus Gittinger <cg@exept.de>
Thu, 03 Apr 2008 14:52:47 +0200
changeset 8044 1b889062670d
parent 7996 7074ccb92b99
child 8045 af9f2e2fb059
permissions -rw-r--r--
delayed update
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:libtool' }"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ NameSpace: Tools }"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
ApplicationModel subclass:#ToDoListBrowser
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
     6
	instanceVariableNames:'toDoList shownCopyOfToDoList selectionIndexHolder
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
     7
		currentSortOrder'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	classVariableNames:'TheOneAndOnlyToDoListBrowser'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	poolDictionaries:''
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
	category:'Interface-Smalltalk-ToDo'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
!ToDoListBrowser class methodsFor:'documentation'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
documentation
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
    documentation to be added.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
    [author:]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
        cg (cg@FUSI)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
    [instance variables:]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
    [class variables:]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
    [see also:]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
examples
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
  Starting the application:
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
                                                                [exBegin]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
    ToDoListBrowser open
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
                                                                [exEnd]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
  more examples to be added:
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
                                                                [exBegin]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
    ... add code fragment for 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    ... executable example here ...
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
                                                                [exEnd]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
history
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
    "Created: / 21-10-2006 / 15:05:53 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
!ToDoListBrowser class methodsFor:'class initialization'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
current
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    ^ TheOneAndOnlyToDoListBrowser
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
    "Created: / 21-10-2006 / 20:37:48 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
current:aBrowser
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    TheOneAndOnlyToDoListBrowser := aBrowser.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    "Created: / 21-10-2006 / 20:38:08 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
new
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
    |b|
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    b := super new.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    TheOneAndOnlyToDoListBrowser isNil ifTrue:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
        TheOneAndOnlyToDoListBrowser := b.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    ].
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
    ^ b
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    "Created: / 21-10-2006 / 20:39:03 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
!ToDoListBrowser class methodsFor:'interface specs'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
windowSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    "This resource specification was automatically generated
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
     by the UIPainter of ST/X."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
    "Do not manually edit this!! If it is corrupted,
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
     the UIPainter may not be able to read the specification."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
     UIPainter new openOnClass:ToDoListBrowser andSelector:#windowSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
     ToDoListBrowser new openInterface:#windowSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
     ToDoListBrowser open
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
    <resource: #canvas>
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
    ^ 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
     #(FullSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
        name: windowSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
        window: 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
       (WindowSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
          label: 'ToDoListBrowser'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
          name: 'ToDoListBrowser'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
          min: (Point 10 10)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
          max: (Point 1024 768)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
          bounds: (Rectangle 0 0 577 395)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
          menu: mainMenu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
        )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
        component: 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
       (SpecCollection
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
          collection: (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
           (DataSetSpec
7736
0ae76a027e90 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7733
diff changeset
   110
              name: 'Table'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
              model: selectionIndexHolder
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
              menu: itemMenu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
              hasHorizontalScrollBar: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
              hasVerticalScrollBar: true
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   116
              dataList: shownCopyOfToDoList
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
              doubleClickSelector: itemDoubleClicked:
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
              columnHolder: tableColumns
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
            )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
           )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
         
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
        )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
      )
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   124
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   125
    "Modified: / 18-02-2007 / 12:55:32 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
!ToDoListBrowser class methodsFor:'menu specs'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
itemMenu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
    "This resource specification was automatically generated
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
     by the MenuEditor of ST/X."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    "Do not manually edit this!! If it is corrupted,
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
     the MenuEditor may not be able to read the specification."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
    "
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   138
     MenuEditor new openOnClass:Tools::ToDoListBrowser andSelector:#itemMenu
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   139
     (Menu new fromLiteralArrayEncoding:(Tools::ToDoListBrowser itemMenu)) startUp
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
    <resource: #menu>
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
    ^ 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
     #(Menu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
        (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
         (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
            label: 'Browse'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
            itemValue: browseItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
            translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
          )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
         (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
            label: '-'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
          )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
         (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
            label: 'Remove'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
            itemValue: removeItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
            translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
          )
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   160
         (MenuItem
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   161
            label: 'Remove all Items for this Class'
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   162
            itemValue: removeItemsForClass
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   163
            translateLabel: true
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   164
          )
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   165
         (MenuItem
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   166
            label: 'Remove all Items for this Class and its Private Classes'
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   167
            itemValue: removeItemsForClassOrPrivateClass
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   168
            translateLabel: true
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   169
          )
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
         )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
        nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
        nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
      )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
mainMenu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    "This resource specification was automatically generated
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
     by the MenuEditor of ST/X."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
    "Do not manually edit this!! If it is corrupted,
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
     the MenuEditor may not be able to read the specification."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "
7457
ed5148073e7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7454
diff changeset
   184
     MenuEditor new openOnClass:Tools::ToDoListBrowser andSelector:#mainMenu
ed5148073e7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7454
diff changeset
   185
     (Menu new fromLiteralArrayEncoding:(Tools::ToDoListBrowser mainMenu)) startUp
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    <resource: #menu>
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    ^ 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
     #(Menu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
        (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
         (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
            label: 'File'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
            translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
            submenu: 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
           (Menu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
              (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
               (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
                  label: 'Exit'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
                  itemValue: closeRequest
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
                  translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
                )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
               )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
            )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
          )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
         (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
            label: 'List'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
            translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
            submenu: 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
           (Menu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
              (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
               (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
                  label: 'Clear'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
                  itemValue: clearList
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
                  translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
                )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
               )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
            )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
          )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
         (MenuItem
7464
2aa6281ee0a2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7457
diff changeset
   226
            label: 'MENU_Help'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
            translateLabel: true
7457
ed5148073e7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7454
diff changeset
   228
            startGroup: conditionalRight
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
            submenu: 
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
           (Menu
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
              (
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
               (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
                  label: 'Documentation'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
                  itemValue: openDocumentation
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
                  translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
                )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
               (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
                  label: '-'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
                )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
               (MenuItem
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
                  label: 'About this Application...'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
                  itemValue: openAboutThisApplication
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
                  translateLabel: true
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
                )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
               )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
              nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
            )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
          )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
         )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
        nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
        nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
      )
7464
2aa6281ee0a2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7457
diff changeset
   254
2aa6281ee0a2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7457
diff changeset
   255
    "Modified: / 23-10-2006 / 23:22:45 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
!ToDoListBrowser class methodsFor:'tableColumns specs'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
tableColumns
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
    "This resource specification was automatically generated
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
     by the DataSetBuilder of ST/X."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
    "Do not manually edit this!! If it is corrupted,
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
     the DataSetBuilder may not be able to read the specification."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
     DataSetBuilder new openOnClass:ToDoListBrowser andSelector:#tableColumns
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
    "
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
    <resource: #tableColumns>
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
    ^#(
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
      (DataSetColumnSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
         label: 'Type'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
         labelButtonType: Button
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
         width: 32
7740
1be4f085540e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7736
diff changeset
   278
         model: severityString
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
         canSelect: false
7996
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   280
         labelActionSelector: sortBy:
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   281
         labelActionArgument: 'severity'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
       )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
      (DataSetColumnSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
         label: 'Prio'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
         labelButtonType: Button
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
         width: 30
7996
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   287
         model: priorityString
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
         canSelect: false
7740
1be4f085540e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7736
diff changeset
   289
         labelActionSelector: sortBy:
1be4f085540e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7736
diff changeset
   290
         labelActionArgument: 'priority'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
       )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
      (DataSetColumnSpec
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
         label: 'Time'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
         labelButtonType: Button
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
         width: 50
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
         model: time
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
         canSelect: false
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   298
         labelAlignment: left
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   299
         labelActionSelector: sortBy:
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   300
         labelActionArgument: 'timestamp'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
       )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
      (DataSetColumnSpec
7733
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   303
         label: 'Message'
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   304
         labelButtonType: Button
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   305
         model: message
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   306
         canSelect: false
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   307
         labelAlignment: left
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   308
         labelActionSelector: sortBy:
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   309
         labelActionArgument: 'message'
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   310
       )
a51ccac4ce79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7649
diff changeset
   311
      (DataSetColumnSpec
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
         label: 'Where'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
         labelButtonType: Button
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
         model: methodOrClassName
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
         canSelect: false
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   316
         labelAlignment: left
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   317
         labelActionSelector: sortBy:
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   318
         labelActionArgument: 'methodOrClassName'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
       )
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
      )
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   321
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   322
    "Modified: / 25-10-2006 / 01:05:50 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
!ToDoListBrowser methodsFor:'accessing'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
addEntry:anEntry
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
    self toDoList add:anEntry
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
    "Created: / 21-10-2006 / 15:38:08 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
    "Modified: / 21-10-2006 / 21:14:31 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   334
selectedTodoListEntry
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   335
    ^ self todoListEntryAtIndex:(self selectionIndex).
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   336
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   337
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   338
selectionIndex
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   339
    ^ self selectionIndexHolder value
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   340
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   341
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
selectionIndexHolder
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
    selectionIndexHolder isNil ifTrue:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
        selectionIndexHolder := nil asValue.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
    ].
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
    ^ selectionIndexHolder
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
    "Created: / 22-10-2006 / 02:00:41 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   351
shownCopyOfToDoList
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   352
    shownCopyOfToDoList isNil ifTrue:[
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   353
        shownCopyOfToDoList := List new
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   354
    ].
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   355
    ^ shownCopyOfToDoList
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   356
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   357
    "Created: / 18-02-2007 / 12:53:01 / cg"
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   358
!
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   359
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
toDoList
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
    toDoList isNil ifTrue:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
        toDoList := ToDoList theOneAndOnlyToDoList.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
    ].
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
    ^ toDoList
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
    "Created: / 21-10-2006 / 20:57:18 / cg"
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   367
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   368
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   369
todoListEntryAtIndex:idx
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   370
    ^ shownCopyOfToDoList at:idx
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   373
!ToDoListBrowser methodsFor:'change & update'!
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   374
8044
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   375
delayedUpdate:something with:aParameter from:changedObject
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   376
    changedObject == toDoList ifTrue:[
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   377
        self updateShownToDoList.
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   378
        ^ self
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   379
    ].
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   380
!
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   381
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   382
update:something with:aParameter from:changedObject
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   383
    changedObject == toDoList ifTrue:[
8044
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   384
        self enqueueDelayedUpdate:something with:aParameter from:changedObject.
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   385
        ^ self
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   386
    ].
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   387
    ^ super update:something with:aParameter from:changedObject
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   388
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   389
    "Created: / 18-02-2007 / 12:54:32 / cg"
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   390
!
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   391
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   392
updateShownToDoList
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   393
    self shownCopyOfToDoList contents:(self toDoList).
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   394
    self resort.
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   395
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   396
    "Created: / 18-02-2007 / 12:54:58 / cg"
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   397
! !
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   398
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
!ToDoListBrowser methodsFor:'initialization & release'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
closeDownViews
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
    "This is a hook method generated by the Browser.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
     It will be invoked when your app/dialog-window is really closed.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
     See also #closeDownViews, which is invoked before and may suppress the close
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
     or ask the user for confirmation."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    "/ change the code below as required ...
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    "/ This should cleanup any leftover resources
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
    "/ (for example, temporary files)
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
    "/ super closeRequest will initiate the closeDown
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
    "/ add your code here
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
    "/ do not remove the one below ...
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
    ^ super closeDownViews
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
closeRequest
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
    "This is a hook method generated by the Browser.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
     It will be invoked when your app/dialog-window is about to be
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
     closed (this method has a chance to suppress the close).
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
     See also #closeDownViews, which is invoked when the close is really done."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
    "/ change the code below as required ...
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
    "/ Closing can be suppressed, by simply returning.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
    "/ The 'super closeRequest' at the end will initiate the real closeDown
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
    ("self hasUnsavedChanges" false) ifTrue:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
        (self confirm:(resources string:'Close without saving ?')) ifFalse:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
            ^ self
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
        ]
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
    ].
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
    ^ super closeRequest
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    "Modified: / 21-10-2006 / 19:21:02 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
postBuildWith:aBuilder
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   440
    self toDoList addDependent:self.
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   441
    self updateShownToDoList.
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   443
    ToDoList autoload.
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   444
    ToDoListEntry autoload.
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   445
    CompilerWarningToDoListEntry autoload.
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
    ^ super postBuildWith:aBuilder
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   448
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   449
    "Modified: / 18-02-2007 / 12:55:57 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
postOpenWith:aBuilder
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
    "This is a hook method generated by the Browser.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
     It will be invoked right after the applications window has been opened.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
     Add any app-specific actions here (starting background processes etc.).
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
     See also #postBuildWith:, which is invoked before opening."
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    "/ add any code here ...
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    ^ super postOpenWith:aBuilder
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
release
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   464
    self toDoList removeDependent:self.
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
    self == TheOneAndOnlyToDoListBrowser ifTrue:[
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
        TheOneAndOnlyToDoListBrowser := nil
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
    ].
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
    super release.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
    "Created: / 21-10-2006 / 20:40:31 / cg"
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   471
    "Modified: / 18-02-2007 / 12:57:07 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
!ToDoListBrowser methodsFor:'menu actions'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
clearList
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
    toDoList removeAll
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
    "Created: / 22-10-2006 / 00:02:15 / cg"
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
openAboutThisApplication
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
    super openAboutThisApplication
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
openDocumentation
7933
cc2c54e4043b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7740
diff changeset
   487
    HTMLDocumentView openFullOnDocumentationFile:'tools\misc\TOP.html#TODOLIST'.
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    "/ add application-specific help files under the 'doc/online/<language>/help/appName'
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
    "/ directory, and open a viewer with:
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
    "/ HTMLDocumentView openFullOnDocumentationFile:'help/<MyApplication>/TOP.html'.
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
!ToDoListBrowser methodsFor:'menu actions-item'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
browseItem
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   497
    (self todoListEntryAtIndex:self selectionIndexHolder value) browse
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
    "Created: / 22-10-2006 / 02:00:20 / cg"
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   500
    "Modified: / 18-02-2007 / 12:56:49 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
removeItem
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   504
    toDoList remove:(self selectedTodoListEntry)
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
    "Created: / 22-10-2006 / 10:45:52 / cg"
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   507
    "Modified: / 18-02-2007 / 12:57:58 / cg"
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   508
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   509
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   510
removeItems:entriesToRemove
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   511
    entriesToRemove do:[:entryToRemove |
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   512
        toDoList remove:entryToRemove
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   513
    ].
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   514
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   515
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   516
removeItemsForClass
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   517
    |cls entriesToRemove|
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   518
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   519
    cls := self selectedTodoListEntry problemClass.
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   520
    entriesToRemove := toDoList select:[:entry | entry problemClass == cls].
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   521
    self removeItems:entriesToRemove
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   522
!
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   523
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   524
removeItemsForClassOrPrivateClass
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   525
    |cls entriesToRemove|
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   526
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   527
    cls := self selectedTodoListEntry problemClass.
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   528
    entriesToRemove := toDoList select:[:entry | entry problemClass == cls
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   529
                                                 or:[ entry problemClass topOwningClass == cls]].
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   530
    self removeItems:entriesToRemove
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
!ToDoListBrowser methodsFor:'user actions'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
itemDoubleClicked:itemIndex
7986
ecee84d41552 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7933
diff changeset
   536
    (self selectedTodoListEntry) browse
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
    "Created: / 22-10-2006 / 01:49:13 / cg"
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   539
    "Modified: / 18-02-2007 / 12:56:30 / cg"
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   540
!
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   541
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   542
resort
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   543
    |sortBlock sortBlock1 col|
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   544
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   545
    currentSortOrder isNil ifTrue:[^ self ].
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   546
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   547
    col := currentSortOrder at:#column.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   548
7996
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   549
    sortBlock := sortBlock1 := [:a :b |
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   550
                                    |vA vB|
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   551
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   552
                                    vA := (a perform:col).
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   553
                                    vB := (b perform:col).
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   554
                                    vA = vB ifTrue:[
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   555
                                        col == #severity ifTrue:[
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   556
                                            vA := a priority.
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   557
                                            vB := b priority.
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   558
                                        ]
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   559
                                    ].
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   560
                                    vA < vB
7074ccb92b99 presentation
Claus Gittinger <cg@exept.de>
parents: 7986
diff changeset
   561
                               ].
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   562
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   563
    (currentSortOrder at:#reverse) ifTrue:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   564
        sortBlock := [:a :b | (sortBlock1 value:a value:b) not ].
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   565
    ].
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   566
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   567
    "/ temporary hack - should make a copy of the real list
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   568
    self shownCopyOfToDoList sort:sortBlock
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   569
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   570
    "Created: / 25-10-2006 / 01:01:26 / cg"
7649
b7d62f6f5485 two separate lists: todo and shown (sorted) todo
Claus Gittinger <cg@exept.de>
parents: 7469
diff changeset
   571
    "Modified: / 18-02-2007 / 13:02:19 / cg"
7469
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   572
!
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   573
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   574
sortBy:instanceName
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   575
    self sortBy:instanceName withReverse:true
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   576
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   577
    "Created: / 25-10-2006 / 00:53:55 / cg"
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   578
!
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   579
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   580
sortBy:instanceName withReverse:aBoolean
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   581
    |aSymbol|
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   582
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   583
    aSymbol := instanceName asSymbol.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   584
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   585
    currentSortOrder isNil ifTrue:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   586
        currentSortOrder := Dictionary new.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   587
        currentSortOrder at:#column put:aSymbol.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   588
        currentSortOrder at:#reverse put:false.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   589
    ] ifFalse:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   590
        (currentSortOrder at:#column) = aSymbol ifTrue:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   591
            "/ same column like before - change sort order ifReverse is true
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   592
            aBoolean ifTrue:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   593
                | isReverse |
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   594
                isReverse := currentSortOrder at:#reverse.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   595
                currentSortOrder at:#reverse put:(isReverse not).
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   596
            ].
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   597
        ] ifFalse:[
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   598
            "/ another column - remark column
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   599
            currentSortOrder at:#column put:aSymbol.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   600
        ]
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   601
    ].
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   602
    self resort.
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   603
65c6d565a3cc sorting
Claus Gittinger <cg@exept.de>
parents: 7464
diff changeset
   604
    "Created: / 25-10-2006 / 00:54:59 / cg"
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
! !
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
!ToDoListBrowser class methodsFor:'documentation'!
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
version
8044
1b889062670d delayed update
Claus Gittinger <cg@exept.de>
parents: 7996
diff changeset
   610
    ^ '$Header: /cvs/stx/stx/libtool/Tools__ToDoListBrowser.st,v 1.13 2008-04-03 12:52:47 cg Exp $'
7443
a917d853cc8f initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
! !