DropObject.st
author Claus Gittinger <cg@exept.de>
Wed, 01 Dec 1999 21:25:19 +0100
changeset 1278 0fc24ae3a3e3
parent 1277 ad8a630c9acd
child 1292 632e22649e4b
permissions -rw-r--r--
try my bitmaps in package directory
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     1
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     3
              All Rights Reserved
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     4
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     5
 This software is furnished under a license and may be used
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     6
 only in accordance with the terms of that license and with the
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     8
 be provided or otherwise made available to, or used by, any
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
     9
 other person.  No title to or ownership of the software is
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    10
 hereby transferred.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    11
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    12
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    13
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    14
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    15
Object subclass:#DropObject
860
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    16
	instanceVariableNames:'theObject displayObject'
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    17
	classVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    18
	poolDictionaries:''
875
6e99b23e8083 change category
ca
parents: 860
diff changeset
    19
	category:'Interface-DragAndDrop'
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    20
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    21
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    22
DropObject class instanceVariableNames:'DisplayObject'
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    23
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    24
"
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    25
 The following class instance variables are inherited by this class:
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    26
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    27
	Object - 
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    28
"
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    29
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
    30
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
    31
DropObject subclass:#Text
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    32
	instanceVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    33
	classVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    34
	poolDictionaries:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    35
	privateIn:DropObject
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    36
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    37
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
    38
DropObject subclass:#Color
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
    39
	instanceVariableNames:''
860
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    40
	classVariableNames:''
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    41
	poolDictionaries:''
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    42
	privateIn:DropObject
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    43
!
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
    44
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    45
DropObject subclass:#Image
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    46
	instanceVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    47
	classVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    48
	poolDictionaries:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    49
	privateIn:DropObject
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    50
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    51
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
    52
DropObject subclass:#File
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
    53
	instanceVariableNames:'info isHtmlFile isImageFile isPrintable'
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    54
	classVariableNames:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    55
	poolDictionaries:''
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    56
	privateIn:DropObject
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    57
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    58
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    59
!DropObject class methodsFor:'documentation'!
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    60
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    61
copyright
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    62
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    63
 COPYRIGHT (c) 1997 by eXept Software AG
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    64
              All Rights Reserved
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    65
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    66
 This software is furnished under a license and may be used
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    67
 only in accordance with the terms of that license and with the
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    68
 inclusion of the above copyright notice.   This software may not
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    69
 be provided or otherwise made available to, or used by, any
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    70
 other person.  No title to or ownership of the software is
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    71
 hereby transferred.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    72
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    73
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    74
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    75
!
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    76
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    77
documentation
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    78
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    79
    instances of myself and subclasses wrap objects which are being
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    80
    dragged (and dropped).
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    81
    Any object can be dragged, but for some often encountered types,
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    82
    specialized subclasses are provided, which react to certain queries.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    83
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    84
    [see also:]
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    85
        DragAndDropManager
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    86
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    87
    [author:]
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    88
        Claus Atzkern
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    89
"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
    90
! !
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    91
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    92
!DropObject class methodsFor:'instance creation'!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
    93
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    94
dropObjectClassFor:someThing
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    95
    "given something to drag&drop, return an appropriate
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    96
     dropObject class for it."
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    97
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    98
    someThing isColor             ifTrue:[^ DropObject::Color].
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
    99
    someThing isImageOrForm       ifTrue:[^ DropObject::Image].
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   100
    (someThing isKindOf:Filename) ifTrue:[^ DropObject::File].
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   101
    someThing isString            ifTrue:[^ DropObject::Text].
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   102
    ^ self
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   103
!
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   104
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   105
new:someThing
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   106
    "create an instance on something
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   107
    "
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   108
    |cls|
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   109
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   110
    cls := self dropObjectClassFor:someThing.
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   111
    ^ cls new theObject:someThing
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   112
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   113
    "Modified: 19.4.1997 / 17:19:55 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   114
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   115
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   116
newColor:aColor
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   117
    "create an instance for a color"
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   118
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   119
    ^ DropObject::Color new theObject:aColor
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   120
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   121
    "Modified: 19.4.1997 / 17:20:17 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   122
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   123
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   124
newFile:aFilename
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   125
    "create an instance for a file or directory"
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   126
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   127
    ^ DropObject::File new theObject:aFilename
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   128
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   129
    "Modified: 19.4.1997 / 17:20:28 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   130
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   131
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   132
newImage:anImageOrForm
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   133
    "create an instance for an image"
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   134
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   135
    ^ DropObject::Image new theObject:anImageOrForm
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   136
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   137
    "Modified: 19.4.1997 / 17:20:37 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   138
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   139
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   140
newText:aTextOrString
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   141
    "create an instance for some text"
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   142
1112
da4b42bf8ea8 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 875
diff changeset
   143
    ^ DropObject::Text new theObject:aTextOrString
547
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   144
7764165d89b8 added comments & docu
Claus Gittinger <cg@exept.de>
parents: 546
diff changeset
   145
    "Modified: 19.4.1997 / 17:20:46 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   146
! !
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   147
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   148
!DropObject class methodsFor:'defaults'!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   149
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   150
displayObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   151
    "return some object which is shown while dragging;
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   152
     here an image based upon my displayObjectName is returned.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   153
     Either this method or #displayObjectName is usually redefined
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   154
     in subclasses"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   155
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   156
    DisplayObject notNil ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   157
        ^ DisplayObject
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   158
    ].
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   159
    DisplayObject := Smalltalk bitmapFromFileNamed:(self displayObjectName) forClass:self.
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   160
    ^ DisplayObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   161
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   162
    "Modified: 19.4.1997 / 13:04:05 / cg"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   163
!
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   164
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   165
displayObject:aDisplayObject
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   166
    "set the object which is shown while dragging;
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   167
     this object must understand #displayOn:x:y: (i.e. the displayObject
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   168
     protocol). The object is kept per class for ALL future drag operations.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   169
     Useful to change the default images in subclasses."
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   170
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   171
    DisplayObject := aDisplayObject
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   172
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   173
    "Modified: 19.4.1997 / 15:42:10 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   174
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   175
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   176
displayObjectName
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   177
    "return the name of a bitmap image file, which is used 
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   178
     during a drag.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   179
     Here, a dummy file is returned."
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   180
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   181
    ^ 'bitmaps/xpmBitmaps/plain_pixmaps/balloon3.xpm'
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   182
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   183
    "Modified: 19.4.1997 / 13:54:13 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   184
! !
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   185
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   186
!DropObject methodsFor:'accessing'!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   187
860
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   188
displayObject
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   189
    "return my graphical representation - here a default is returned"
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   190
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   191
    ^ displayObject ? (self class displayObject)
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   192
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   193
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   194
!
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   195
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   196
displayObject:anObject
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   197
    "set my graphical representation"
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   198
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   199
    displayObject := anObject
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   200
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   201
!
99aac8d0e899 set an explicit display object
ca
parents: 547
diff changeset
   202
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   203
theObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   204
    "return the real object represented by the receiver"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   205
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   206
    ^ theObject
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   207
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   208
    "Modified: 19.4.1997 / 12:53:01 / cg"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   209
!
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   210
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   211
theObject:something
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   212
    "set the real object represented by the receiver"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   213
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   214
    theObject := something.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   215
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   216
    "Modified: 19.4.1997 / 12:53:10 / cg"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   217
! !
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   218
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   219
!DropObject methodsFor:'testing'!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   220
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   221
isColorObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   222
    "return true, if the dropObject represents a color"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   223
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   224
    ^ false
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   225
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   226
    "Modified: 19.4.1997 / 12:52:36 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   227
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   228
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   229
isFileObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   230
    "return true, if the dropObject represents some file or directory"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   231
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   232
    ^ false
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   233
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   234
    "Modified: 19.4.1997 / 12:52:29 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   235
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   236
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   237
isImageObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   238
    "return true, if the dropObject represents some image"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   239
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   240
    ^ false
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   241
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   242
    "Modified: 19.4.1997 / 12:52:22 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   243
!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   244
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   245
isTextObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   246
    "return true, if the dropObject represents some text"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   247
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   248
    ^ false
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   249
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   250
    "Modified: 19.4.1997 / 12:52:17 / cg"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   251
! !
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   252
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   253
!DropObject::Text class methodsFor:'defaults'!
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   254
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   255
displayObjectName
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   256
    ^ 'bitmaps/xpmBitmaps/document_images/yellow_file_text_grab.xpm'
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   257
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   258
    "Modified: 19.4.1997 / 15:40:33 / cg"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   259
! !
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   260
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   261
!DropObject::Text methodsFor:'testing'!
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   262
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   263
isTextObject
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   264
    "return true, if the dropObject represents some text"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   265
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   266
    ^ true
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   267
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   268
    "Modified: 19.4.1997 / 12:52:08 / cg"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   269
! !
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   270
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   271
!DropObject::Color class methodsFor:'defaults'!
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   272
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   273
displayObjectName
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   274
    "return the name of a bitmap image file, which is used 
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   275
     during a drag."
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   276
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   277
    ^ 'bitmaps/xpmBitmaps/misc_tools/color_wheel.xpm'
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   278
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   279
    "Modified: 19.4.1997 / 15:38:12 / cg"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   280
! !
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   281
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   282
!DropObject::Color methodsFor:'testing'!
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   283
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   284
isColorObject
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   285
    "return true, if the dropObject represents a color"
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   286
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   287
    ^ true
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   288
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   289
    "Modified: 19.4.1997 / 12:51:57 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   290
! !
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   291
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   292
!DropObject::Image class methodsFor:'defaults'!
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   293
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   294
displayObjectName
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   295
    "return the name of a bitmap image file, which is used 
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   296
     during a drag."
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   297
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   298
    ^ 'bitmaps/xpmBitmaps/misc_tools/picture.xpm'
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   299
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   300
    "Modified: 19.4.1997 / 15:38:02 / cg"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   301
! !
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   302
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   303
!DropObject::Image methodsFor:'testing'!
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   304
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   305
isImageObject
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   306
    "return true, if the dropObject represents an image"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   307
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   308
    ^ true
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   309
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   310
    "Modified: 19.4.1997 / 12:51:28 / cg"
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   311
! !
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   312
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   313
!DropObject::File class methodsFor:'defaults'!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   314
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   315
displayObjectName
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   316
    "return the name of a bitmap image file, which is used 
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   317
     during a drag."
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   318
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   319
    ^ 'bitmaps/xpmBitmaps/document_images/xfm_file.xpm'
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   320
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   321
    "Modified: 19.4.1997 / 15:38:07 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   322
! !
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   323
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   324
!DropObject::File methodsFor:'accessing'!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   325
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   326
theObject:aPathname
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   327
    |f path|
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   328
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   329
    f := aPathname asFilename.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   330
    path := f pathName.
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   331
    info := f info.
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   332
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   333
    super theObject:f
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   334
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   335
    "Modified: 19.4.1997 / 12:49:17 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   336
! !
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   337
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   338
!DropObject::File methodsFor:'queries'!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   339
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   340
exists
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   341
    "returns true if the file or directory exists
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   342
    "
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   343
    ^ info notNil
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   344
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   345
    "Modified: 19.4.1997 / 12:49:30 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   346
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   347
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   348
isDirectory
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   349
    "checks whether file is a directory
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   350
    "
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   351
    ^ (info notNil and:[info type == #directory])
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   352
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   353
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   354
isHtmlFile
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   355
    "checks whether file is an html file
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   356
    "
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   357
    |suffixes pathName|
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   358
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   359
    isHtmlFile isNil ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   360
        (info isNil or:[self isDirectory]) ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   361
            isHtmlFile := false
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   362
        ] ifFalse:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   363
            pathName   := theObject asString.
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   364
            suffixes   := #( '.html' '.htm' '.HTML' '.HTM' ).
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   365
            isHtmlFile := (suffixes findFirst:[:el|pathName endsWith:el]) ~~ 0
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   366
        ]
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   367
    ].
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   368
    ^ isHtmlFile
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   369
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   370
    "Modified: 19.4.1997 / 12:49:37 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   371
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   372
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   373
isImageFile
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   374
    "returns true if file is an image file
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   375
    "
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   376
    |pathName|
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   377
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   378
    isImageFile isNil ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   379
        (info isNil or:[self isDirectory]) ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   380
            isImageFile := false
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   381
        ] ifFalse:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   382
            pathName    := theObject asString.
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   383
            isImageFile := Image isImageFileSuffix:(pathName asFilename suffix).
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   384
        ]
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   385
    ].
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   386
    ^ isImageFile
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   387
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   388
    "Modified: 19.4.1997 / 12:50:58 / cg"
403
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   389
!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   390
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   391
isPrintable
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   392
    "returns false if file contains non printable characters
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   393
    "
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   394
    |stream buff size|
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   395
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   396
    isPrintable isNil ifTrue:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   397
        isPrintable := false.
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   398
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   399
        (info isNil or:[self isDirectory]) ifFalse:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   400
            stream := FileStream readonlyFileNamed:(theObject pathName).
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   401
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   402
            stream isNil ifFalse:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   403
                buff := String new:300.
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   404
                size := stream nextBytes:300 into:buff.
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   405
                stream close.
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   406
            ].
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   407
            1 to:size do:[:i|
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   408
                (buff at:i) isPrintable ifFalse:[
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   409
                    ^ isPrintable
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   410
                ]
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   411
            ].
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   412
            isPrintable := true
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   413
        ]
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   414
    ].
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   415
    ^ isPrintable
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   416
! !
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   417
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   418
!DropObject::File methodsFor:'testing'!
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   419
cdcee4daddef preliminary
ca
parents: 396
diff changeset
   420
isFileObject
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   421
    "return true, if the dropObject represents a file- or directory"
396
77043c4aca02 checkin from browser
ca
parents: 395
diff changeset
   422
77043c4aca02 checkin from browser
ca
parents: 395
diff changeset
   423
    ^ true
77043c4aca02 checkin from browser
ca
parents: 395
diff changeset
   424
546
a71c15f2330c added comments & docu
Claus Gittinger <cg@exept.de>
parents: 403
diff changeset
   425
    "Modified: 19.4.1997 / 12:51:49 / cg"
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   426
! !
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   427
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   428
!DropObject class methodsFor:'documentation'!
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   429
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   430
version
1277
ad8a630c9acd try bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 1112
diff changeset
   431
    ^ '$Header: /cvs/stx/stx/libview2/DropObject.st,v 1.9 1999-12-01 20:17:58 cg Exp $'
395
bd27655f4354 intitial checkin
ca
parents:
diff changeset
   432
! !