AbstractFileApplicationNoteBookComponent.st
author Claus Gittinger <cg@exept.de>
Thu, 30 Oct 2008 16:51:37 +0100
changeset 8387 44efd774e4fc
parent 7689 f044f38e823c
child 8683 128a252ae16a
permissions -rw-r--r--
care for wide filenames
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5140
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     1
"
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     2
 COPYRIGHT (c) 2002 by eXept Software AG
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     3
              All Rights Reserved
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     4
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     5
 This software is furnished under a license and may be used
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     6
 only in accordance with the terms of that license and with the
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     8
 be provided or otherwise made available to, or used by, any
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
     9
 other person.  No title to or ownership of the software is
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    10
 hereby transferred.
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    11
"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
321c1729db5b initial checkin
penk
parents:
diff changeset
    13
321c1729db5b initial checkin
penk
parents:
diff changeset
    14
ApplicationModel subclass:#AbstractFileApplicationNoteBookComponent
321c1729db5b initial checkin
penk
parents:
diff changeset
    15
	instanceVariableNames:'sameFileIndex item type notifyChannel'
321c1729db5b initial checkin
penk
parents:
diff changeset
    16
	classVariableNames:''
321c1729db5b initial checkin
penk
parents:
diff changeset
    17
	poolDictionaries:''
321c1729db5b initial checkin
penk
parents:
diff changeset
    18
	category:'Interface-Tools-File'
321c1729db5b initial checkin
penk
parents:
diff changeset
    19
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    20
5140
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    21
!AbstractFileApplicationNoteBookComponent class methodsFor:'documentation'!
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    22
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    23
copyright
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    24
"
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    25
 COPYRIGHT (c) 2002 by eXept Software AG
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    26
              All Rights Reserved
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    27
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    28
 This software is furnished under a license and may be used
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    29
 only in accordance with the terms of that license and with the
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    31
 be provided or otherwise made available to, or used by, any
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    32
 other person.  No title to or ownership of the software is
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    33
 hereby transferred.
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    34
"
5967
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    35
!
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    36
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    37
documentation
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    38
"
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    39
    [Author:]
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    40
        Christian Penk
ff5e8356fcb7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5737
diff changeset
    41
"
5140
36c7da05d814 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5120
diff changeset
    42
! !
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    43
321c1729db5b initial checkin
penk
parents:
diff changeset
    44
!AbstractFileApplicationNoteBookComponent class methodsFor:'defaults'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    45
321c1729db5b initial checkin
penk
parents:
diff changeset
    46
tabStringFor:aApplicationType
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    47
    "the formatString shown in a tab (language translated)"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    48
321c1729db5b initial checkin
penk
parents:
diff changeset
    49
    ^ nil
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    50
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    51
    "Modified: / 01-03-2007 / 21:43:10 / cg"
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    52
!
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    53
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    54
tabStringFor:aApplicationType forContents:shownContents
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    55
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    56
    ^ nil
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    57
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
    58
    "Created: / 01-03-2007 / 21:35:39 / cg"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    59
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
    60
321c1729db5b initial checkin
penk
parents:
diff changeset
    61
!AbstractFileApplicationNoteBookComponent class methodsFor:'queries'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    62
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
    63
canOpenItem:anItem
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    64
321c1729db5b initial checkin
penk
parents:
diff changeset
    65
"
321c1729db5b initial checkin
penk
parents:
diff changeset
    66
    example:
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
    67
    ^ (anItem suffix == 'cc')
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    68
"
321c1729db5b initial checkin
penk
parents:
diff changeset
    69
    ^ false
321c1729db5b initial checkin
penk
parents:
diff changeset
    70
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    71
321c1729db5b initial checkin
penk
parents:
diff changeset
    72
wantNewApplicationAnyway
321c1729db5b initial checkin
penk
parents:
diff changeset
    73
321c1729db5b initial checkin
penk
parents:
diff changeset
    74
    ^ true
321c1729db5b initial checkin
penk
parents:
diff changeset
    75
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
    76
321c1729db5b initial checkin
penk
parents:
diff changeset
    77
!AbstractFileApplicationNoteBookComponent methodsFor:'accessing'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    78
4529
134c48ecdef5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4523
diff changeset
    79
notify:msg
134c48ecdef5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4523
diff changeset
    80
    self notifyChannel value:msg
134c48ecdef5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4523
diff changeset
    81
!
134c48ecdef5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4523
diff changeset
    82
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    83
notifyChannel
321c1729db5b initial checkin
penk
parents:
diff changeset
    84
    notifyChannel isNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
    85
        self masterApplication notNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
    86
            notifyChannel := masterApplication notifyChannel.
321c1729db5b initial checkin
penk
parents:
diff changeset
    87
        ] ifFalse:[
321c1729db5b initial checkin
penk
parents:
diff changeset
    88
            notifyChannel := ValueHolder with:''.
321c1729db5b initial checkin
penk
parents:
diff changeset
    89
        ].
321c1729db5b initial checkin
penk
parents:
diff changeset
    90
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
    91
    ^ notifyChannel
321c1729db5b initial checkin
penk
parents:
diff changeset
    92
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    93
321c1729db5b initial checkin
penk
parents:
diff changeset
    94
sameFileIndex
321c1729db5b initial checkin
penk
parents:
diff changeset
    95
321c1729db5b initial checkin
penk
parents:
diff changeset
    96
    ^ sameFileIndex
321c1729db5b initial checkin
penk
parents:
diff changeset
    97
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    98
321c1729db5b initial checkin
penk
parents:
diff changeset
    99
sameFileIndex:something
321c1729db5b initial checkin
penk
parents:
diff changeset
   100
321c1729db5b initial checkin
penk
parents:
diff changeset
   101
    sameFileIndex := something.
321c1729db5b initial checkin
penk
parents:
diff changeset
   102
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
   103
321c1729db5b initial checkin
penk
parents:
diff changeset
   104
!AbstractFileApplicationNoteBookComponent methodsFor:'actions'!
321c1729db5b initial checkin
penk
parents:
diff changeset
   105
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
   106
changeItem:anItem
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   107
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
   108
    ^ self item:anItem.
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   109
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   110
321c1729db5b initial checkin
penk
parents:
diff changeset
   111
doClose
321c1729db5b initial checkin
penk
parents:
diff changeset
   112
    |master|
321c1729db5b initial checkin
penk
parents:
diff changeset
   113
321c1729db5b initial checkin
penk
parents:
diff changeset
   114
    "/ tell the NoteBookApplication to close me
321c1729db5b initial checkin
penk
parents:
diff changeset
   115
    (master := self masterApplication) notNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   116
        master closeSubCanvas:self.
3933
2e083e6e224f must send #release manually (to release processes)
Claus Gittinger <cg@exept.de>
parents: 3892
diff changeset
   117
        self release.
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   118
    ] ifFalse:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   119
        self closeRequest.
321c1729db5b initial checkin
penk
parents:
diff changeset
   120
    ].
3954
78e29a3ea4c1 next stage
penk
parents: 3933
diff changeset
   121
    ^ true
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   122
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
   123
5120
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   124
!AbstractFileApplicationNoteBookComponent methodsFor:'aspects'!
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   125
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   126
cursorColLabelHolder
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   127
    ^ ''
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   128
!
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   129
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   130
cursorLineLabelHolder
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   131
    ^ ''
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   132
!
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   133
5528
54e3fbee2822 fileEncoding
Claus Gittinger <cg@exept.de>
parents: 5460
diff changeset
   134
fileEncodingHolder
5586
aba072239d9a default encoding
Claus Gittinger <cg@exept.de>
parents: 5528
diff changeset
   135
    ^ #'iso8859-1'
5528
54e3fbee2822 fileEncoding
Claus Gittinger <cg@exept.de>
parents: 5460
diff changeset
   136
!
54e3fbee2822 fileEncoding
Claus Gittinger <cg@exept.de>
parents: 5460
diff changeset
   137
5737
c5a659e2c4c7 added lockFileEncoding
Claus Gittinger <cg@exept.de>
parents: 5604
diff changeset
   138
lockFileEncodingHolder
7289
1ce678e321fb lockEncoding fix
Claus Gittinger <cg@exept.de>
parents: 7105
diff changeset
   139
    ^ nil 
5737
c5a659e2c4c7 added lockFileEncoding
Claus Gittinger <cg@exept.de>
parents: 5604
diff changeset
   140
!
c5a659e2c4c7 added lockFileEncoding
Claus Gittinger <cg@exept.de>
parents: 5604
diff changeset
   141
5120
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   142
modeLabelHolder
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   143
    ^ ''
7105
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   144
!
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   145
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   146
modeLabelMenu
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   147
    ^ nil
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   148
215c0573cf42 edit mode menu
Claus Gittinger <cg@exept.de>
parents: 5967
diff changeset
   149
    "Created: / 11-09-2006 / 12:32:37 / cg"
5120
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   150
! !
e4c15c9d82ba *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5010
diff changeset
   151
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   152
!AbstractFileApplicationNoteBookComponent methodsFor:'queries'!
321c1729db5b initial checkin
penk
parents:
diff changeset
   153
7468
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   154
additionalInfo
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   155
    ^ ''
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   156
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   157
    "Created: / 24-10-2006 / 12:25:51 / cg"
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   158
!
5fa8d2662e45 additional info
Claus Gittinger <cg@exept.de>
parents: 7289
diff changeset
   159
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   160
fileName
321c1729db5b initial checkin
penk
parents:
diff changeset
   161
321c1729db5b initial checkin
penk
parents:
diff changeset
   162
    item notNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   163
        ^ item fileName.
321c1729db5b initial checkin
penk
parents:
diff changeset
   164
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
   165
    ^ nil
321c1729db5b initial checkin
penk
parents:
diff changeset
   166
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   167
321c1729db5b initial checkin
penk
parents:
diff changeset
   168
getDirWithoutFileName:aFileName
321c1729db5b initial checkin
penk
parents:
diff changeset
   169
321c1729db5b initial checkin
penk
parents:
diff changeset
   170
    | dir |
321c1729db5b initial checkin
penk
parents:
diff changeset
   171
    aFileName isNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   172
        ^ aFileName.    
321c1729db5b initial checkin
penk
parents:
diff changeset
   173
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
   174
    dir := aFileName asFilename.
321c1729db5b initial checkin
penk
parents:
diff changeset
   175
    dir isDirectory ifFalse:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   176
        dir := dir directory.
321c1729db5b initial checkin
penk
parents:
diff changeset
   177
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
   178
    ^ dir.
321c1729db5b initial checkin
penk
parents:
diff changeset
   179
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   180
321c1729db5b initial checkin
penk
parents:
diff changeset
   181
getTabString
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   182
    "get the tab string from the application"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   183
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   184
    ^ (Unicode16String 
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   185
        streamContents:[:stream |
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   186
            |formatString valueString|
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   187
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   188
            valueString := self getTabValueString.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   189
            valueString isNil ifTrue:[
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   190
                valueString := resources string:'<unnamed>'
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   191
            ].
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   192
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   193
            formatString := self class tabStringFor:type.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   194
            formatString isNil ifTrue:[
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   195
                "/ default: take the class name
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   196
                formatString := self className.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   197
            ].
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   198
            stream nextPutAll:(resources string:formatString with:valueString).
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   199
        ]) asSingleByteStringIfPossible
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   200
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   201
    "Modified: / 01-03-2007 / 21:45:02 / cg"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   202
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   203
321c1729db5b initial checkin
penk
parents:
diff changeset
   204
getTabStringEnd
321c1729db5b initial checkin
penk
parents:
diff changeset
   205
321c1729db5b initial checkin
penk
parents:
diff changeset
   206
" get the tab string from the application list on the class side "
321c1729db5b initial checkin
penk
parents:
diff changeset
   207
5460
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   208
    | stream|
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   209
321c1729db5b initial checkin
penk
parents:
diff changeset
   210
    self item notNil ifTrue:[
321c1729db5b initial checkin
penk
parents:
diff changeset
   211
        stream := WriteStream on:''.
5460
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   212
        self type = #directoryDescription ifTrue:[
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   213
            stream nextPutAll:self fileName directory baseName.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   214
            stream space.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   215
            stream nextPut:$[.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   216
            stream nextPutAll:self fileName baseName.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   217
            stream nextPut:$].
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   218
        ] ifFalse:[
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   219
            stream nextPutAll:self fileName baseName.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   220
            stream space.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   221
            self sameFileIndex notNil ifTrue:[
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   222
                stream nextPutAll:self sameFileIndex asString.
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   223
            ].
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   224
        ].
5460
305f441da48a window label and tab string changed
penk
parents: 5140
diff changeset
   225
        ^ stream contents.
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   226
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
   227
    ^ nil
321c1729db5b initial checkin
penk
parents:
diff changeset
   228
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   229
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   230
getTabValueString
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   231
    "the item shown in a tab (not language translated)"
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   232
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   233
    self item isNil ifTrue:[^ nil].
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   234
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   235
    ^ (Unicode16String 
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   236
        streamContents:[:stream |
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   237
            |fn baseName|
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   238
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   239
            fn := self fileName.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   240
            baseName := fn baseName.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   241
            self type = #directoryDescription ifTrue:[
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   242
                stream nextPutAll:(fn directory baseName).
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   243
                stream space.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   244
                stream nextPut:$[.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   245
                stream nextPutAll:baseName.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   246
                stream nextPut:$].
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   247
            ] ifFalse:[
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   248
                stream nextPutAll:baseName.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   249
                stream space.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   250
                self sameFileIndex notNil ifTrue:[
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   251
                    stream nextPutAll:self sameFileIndex asString.
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   252
                ].
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   253
            ].
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   254
        ]) asSingleByteStringIfPossible.
7689
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   255
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   256
    "Created: / 01-03-2007 / 21:40:03 / cg"
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   257
!
f044f38e823c code cleanup
Claus Gittinger <cg@exept.de>
parents: 7468
diff changeset
   258
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   259
isEmbeddedApplication
321c1729db5b initial checkin
penk
parents:
diff changeset
   260
321c1729db5b initial checkin
penk
parents:
diff changeset
   261
     ^ self masterApplication notNil
321c1729db5b initial checkin
penk
parents:
diff changeset
   262
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   263
321c1729db5b initial checkin
penk
parents:
diff changeset
   264
isModified
321c1729db5b initial checkin
penk
parents:
diff changeset
   265
321c1729db5b initial checkin
penk
parents:
diff changeset
   266
    ^ false
321c1729db5b initial checkin
penk
parents:
diff changeset
   267
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   268
4147
e00eefe3f8fd querie for isTextEditor added
penk
parents: 3954
diff changeset
   269
isTextEditor
e00eefe3f8fd querie for isTextEditor added
penk
parents: 3954
diff changeset
   270
e00eefe3f8fd querie for isTextEditor added
penk
parents: 3954
diff changeset
   271
    ^ false
e00eefe3f8fd querie for isTextEditor added
penk
parents: 3954
diff changeset
   272
!
e00eefe3f8fd querie for isTextEditor added
penk
parents: 3954
diff changeset
   273
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   274
item
321c1729db5b initial checkin
penk
parents:
diff changeset
   275
321c1729db5b initial checkin
penk
parents:
diff changeset
   276
    ^ item
321c1729db5b initial checkin
penk
parents:
diff changeset
   277
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   278
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
   279
item:anItem
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   280
5010
27aa6fa93dcd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4529
diff changeset
   281
    item := anItem.
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   282
    ^ true
321c1729db5b initial checkin
penk
parents:
diff changeset
   283
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   284
321c1729db5b initial checkin
penk
parents:
diff changeset
   285
presentation
321c1729db5b initial checkin
penk
parents:
diff changeset
   286
321c1729db5b initial checkin
penk
parents:
diff changeset
   287
    ^ nil
321c1729db5b initial checkin
penk
parents:
diff changeset
   288
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   289
321c1729db5b initial checkin
penk
parents:
diff changeset
   290
type
321c1729db5b initial checkin
penk
parents:
diff changeset
   291
321c1729db5b initial checkin
penk
parents:
diff changeset
   292
    ^ type
321c1729db5b initial checkin
penk
parents:
diff changeset
   293
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   294
321c1729db5b initial checkin
penk
parents:
diff changeset
   295
type:aType
321c1729db5b initial checkin
penk
parents:
diff changeset
   296
321c1729db5b initial checkin
penk
parents:
diff changeset
   297
    type := aType
321c1729db5b initial checkin
penk
parents:
diff changeset
   298
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   299
321c1729db5b initial checkin
penk
parents:
diff changeset
   300
wantChangeAnyWay
321c1729db5b initial checkin
penk
parents:
diff changeset
   301
321c1729db5b initial checkin
penk
parents:
diff changeset
   302
    ^ (self type == #directoryDescription)
321c1729db5b initial checkin
penk
parents:
diff changeset
   303
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
   304
5604
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   305
!AbstractFileApplicationNoteBookComponent methodsFor:'resources'!
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   306
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   307
resources
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   308
    masterApplication notNil ifTrue:[
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   309
        ^ masterApplication resources
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   310
    ].
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   311
    ^ super resources
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   312
! !
1c2e0582bcd9 resource access
Claus Gittinger <cg@exept.de>
parents: 5586
diff changeset
   313
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   314
!AbstractFileApplicationNoteBookComponent class methodsFor:'documentation'!
321c1729db5b initial checkin
penk
parents:
diff changeset
   315
321c1729db5b initial checkin
penk
parents:
diff changeset
   316
version
8387
44efd774e4fc care for wide filenames
Claus Gittinger <cg@exept.de>
parents: 7689
diff changeset
   317
    ^ '$Header: /cvs/stx/stx/libtool/AbstractFileApplicationNoteBookComponent.st,v 1.20 2008-10-30 15:51:37 cg Exp $'
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   318
! !