ImageInspectorView.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 14 Jun 2018 22:19:39 +0100
branchjv
changeset 18227 d25a407ba86d
parent 15566 184cea584be5
permissions -rw-r--r--
Mini testrunner: show "green" if there's at least one pass and rest is pass or skip This is more meaningfull result then showing "gray" if there's at least one skip.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
     1
"
205d53e91c52 Initial revision
claus
parents:
diff changeset
     2
 COPYRIGHT (c) 1993 by Claus Gittinger
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
     3
	      All Rights Reserved
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
     4
205d53e91c52 Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
205d53e91c52 Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
205d53e91c52 Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
205d53e91c52 Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
205d53e91c52 Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
205d53e91c52 Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
205d53e91c52 Initial revision
claus
parents:
diff changeset
    11
"
2831
0be3af401639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
    12
"{ Package: 'stx:libtool' }"
0be3af401639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
    13
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
    14
InspectorView subclass:#ImageInspectorView
516
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
    15
	instanceVariableNames:'imageView'
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    16
	classVariableNames:'LastRatio LastExtent'
516
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
    17
	poolDictionaries:''
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
    18
	category:'Interface-Inspector'
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
    19
!
205d53e91c52 Initial revision
claus
parents:
diff changeset
    20
1011
1022e80a1c60 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 647
diff changeset
    21
!ImageInspectorView class methodsFor:'documentation'!
110
claus
parents: 107
diff changeset
    22
claus
parents: 107
diff changeset
    23
copyright
claus
parents: 107
diff changeset
    24
"
claus
parents: 107
diff changeset
    25
 COPYRIGHT (c) 1993 by Claus Gittinger
claus
parents: 107
diff changeset
    26
	      All Rights Reserved
claus
parents: 107
diff changeset
    27
claus
parents: 107
diff changeset
    28
 This software is furnished under a license and may be used
claus
parents: 107
diff changeset
    29
 only in accordance with the terms of that license and with the
claus
parents: 107
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
claus
parents: 107
diff changeset
    31
 be provided or otherwise made available to, or used by, any
claus
parents: 107
diff changeset
    32
 other person.  No title to or ownership of the software is
claus
parents: 107
diff changeset
    33
 hereby transferred.
claus
parents: 107
diff changeset
    34
"
claus
parents: 107
diff changeset
    35
!
claus
parents: 107
diff changeset
    36
128
claus
parents: 111
diff changeset
    37
documentation
claus
parents: 111
diff changeset
    38
"
claus
parents: 111
diff changeset
    39
    this class allows better inspection of images,
claus
parents: 111
diff changeset
    40
    by adding another subView, which displays the image.
claus
parents: 111
diff changeset
    41
"
110
claus
parents: 107
diff changeset
    42
! !
claus
parents: 107
diff changeset
    43
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    44
!ImageInspectorView class methodsFor:'defaults'!
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    45
7868
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    46
defaultTopViewExtent
13766
d2f4defdd705 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13297
diff changeset
    47
    |def|
d2f4defdd705 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13297
diff changeset
    48
d2f4defdd705 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13297
diff changeset
    49
    def := LastExtent ? self defaultExtent.
d2f4defdd705 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13297
diff changeset
    50
    ^ def min:(Screen current usableExtent)
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    51
7868
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    52
    "Created: / 23-10-2007 / 18:58:18 / cg"
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    53
!
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    54
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    55
rememberLastExtent:anExtent
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    56
    LastExtent := anExtent
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    57
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
    58
    "Created: / 23-10-2007 / 19:09:34 / cg"
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    59
! !
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
    60
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    61
!ImageInspectorView class methodsFor:'menu specs'!
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    62
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    63
imageMenu
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    64
    "This resource specification was automatically generated
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    65
     by the MenuEditor of ST/X."
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    66
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    67
    "Do not manually edit this!! If it is corrupted,
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    68
     the MenuEditor may not be able to read the specification."
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    69
14420
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
    70
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    71
    "
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    72
     MenuEditor new openOnClass:ImageInspectorView andSelector:#imageMenu
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    73
     (Menu new fromLiteralArrayEncoding:(ImageInspectorView imageMenu)) startUp
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    74
    "
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    75
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    76
    <resource: #menu>
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    77
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    78
    ^ 
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    79
     #(Menu
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    80
        (
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    81
         (MenuItem
14420
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
    82
            enabled: hasImage
8038
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    83
            label: 'Edit'
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    84
            itemValue: menuEdit
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    85
          )
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    86
         (MenuItem
14420
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
    87
            enabled: filenameOfImageKnown
13297
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
    88
            label: 'File Browser'
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
    89
            itemValue: menuFileBrowser
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
    90
          )
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
    91
         (MenuItem
8038
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    92
            label: '-'
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    93
          )
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
    94
         (MenuItem
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    95
            label: 'Magnification...'
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    96
            itemValue: menuMagnification
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
    97
          )
8672
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
    98
         (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
    99
            label: 'Background'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   100
            submenu: 
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   101
           (Menu
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   102
              (
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   103
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   104
                  label: 'White'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   105
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   106
                  argument: white
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   107
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   108
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   109
                  label: 'Grey'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   110
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   111
                  argument: grey
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   112
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   113
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   114
                  label: 'Black'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   115
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   116
                  argument: black
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   117
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   118
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   119
                  label: '-'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   120
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   121
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   122
                  label: 'Red'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   123
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   124
                  argument: red
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   125
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   126
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   127
                  label: 'Green'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   128
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   129
                  argument: green
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   130
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   131
               (MenuItem
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   132
                  label: 'Blue'
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   133
                  itemValue: menuSetBackgroundColor:
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   134
                  argument: blue
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   135
                )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   136
               )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   137
              nil
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   138
              nil
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   139
            )
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   140
          )
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   141
         )
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   142
        nil
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   143
        nil
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   144
      )
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   145
! !
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   146
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   147
!ImageInspectorView methodsFor:'accessing'!
205d53e91c52 Initial revision
claus
parents:
diff changeset
   148
205d53e91c52 Initial revision
claus
parents:
diff changeset
   149
inspect:anObject
8451
f81ab0ad5809 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8038
diff changeset
   150
    "set the object to be inspected"
f81ab0ad5809 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8038
diff changeset
   151
14617
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   152
    |scrollToBottom prevViewOrigin prevImageSize|
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   153
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   154
    prevViewOrigin := imageView viewOrigin.
14661
4c4fc6cda8cd class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14617
diff changeset
   155
    imageView image notNil ifTrue:[
4c4fc6cda8cd class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14617
diff changeset
   156
        prevImageSize := imageView image extent.
4c4fc6cda8cd class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14617
diff changeset
   157
    ].
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   158
    super inspect:anObject.
14350
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   159
"/    imageView image:anObject.
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   160
14617
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   161
    scrollToBottom := false.
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   162
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   163
"/    scrollToBottom :=
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   164
"/        anObject notNil
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   165
"/        and:[imageView image notNil 
fad83ee04023 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14420
diff changeset
   166
"/        and:[ imageView viewOrigin y + imageView image height >= imageView height ]].
14349
1639a85ef84a class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13766
diff changeset
   167
14350
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   168
    imageView image:anObject scroll:scrollToBottom not invalidate:false.
14349
1639a85ef84a class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13766
diff changeset
   169
    scrollToBottom ifTrue:[
14350
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   170
        imageView 
14351
691c1569babc class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14350
diff changeset
   171
            scrollTo:(0 @ ((anObject height - imageView height) max:0))
14350
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   172
            redraw:false.
14349
1639a85ef84a class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13766
diff changeset
   173
    ].
14350
bb47c314b586 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 14349
diff changeset
   174
    imageView invalidate.
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   175
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   176
    "
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   177
     ImageInspectorView inspect:(Image fromScreen:(0@0 corner:800@800))
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   178
    "
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   179
! !
205d53e91c52 Initial revision
claus
parents:
diff changeset
   180
205d53e91c52 Initial revision
claus
parents:
diff changeset
   181
!ImageInspectorView methodsFor:'initialization'!
205d53e91c52 Initial revision
claus
parents:
diff changeset
   182
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   183
destroy
2236
257f587ad7dc migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 1963
diff changeset
   184
    |imageViewsSuperView|
257f587ad7dc migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 1963
diff changeset
   185
257f587ad7dc migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 1963
diff changeset
   186
    imageViewsSuperView := imageView superView.
13077
3cac4b955bbf class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 11659
diff changeset
   187
    imageViewsSuperView notNil ifTrue:[
3cac4b955bbf class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 11659
diff changeset
   188
        LastRatio := 1.0 - 
3cac4b955bbf class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 11659
diff changeset
   189
                     (imageViewsSuperView relativeCorner y - imageViewsSuperView relativeOrigin y).
3cac4b955bbf class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 11659
diff changeset
   190
    ].
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   191
    super destroy
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   192
7868
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
   193
    "Created: / 07-09-1998 / 13:13:43 / cg"
6418611891f2 default size
Claus Gittinger <cg@exept.de>
parents: 7799
diff changeset
   194
    "Modified: / 23-10-2007 / 19:10:48 / cg"
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   195
!
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   196
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   197
initialize
107
claus
parents: 52
diff changeset
   198
    |v newPanel sub|
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   199
205d53e91c52 Initial revision
claus
parents:
diff changeset
   200
    super initialize.
205d53e91c52 Initial revision
claus
parents:
diff changeset
   201
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   202
    LastRatio isNil ifTrue:[
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   203
        LastRatio := 0.3
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   204
    ].
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   205
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   206
    newPanel := VariableVerticalPanel in:self.
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   207
    newPanel origin:0.0 @ 0.0 corner:1.0 @ 1.0.
2831
0be3af401639 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
   208
    newPanel snapMode:#both.
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   209
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   210
    "
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   211
     wrap my existing subview into the new
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   212
     variable panel
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   213
    "
1011
1022e80a1c60 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 647
diff changeset
   214
    sub := self subViews first.
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   215
    self removeSubView:sub.
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   216
    sub origin:0.0@0.0 corner:1.0@LastRatio.
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   217
    newPanel addSubView:sub.
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   218
1379
9424d8fe85a7 ImageEditView replaced by ImageView in #initialize
tz
parents: 1011
diff changeset
   219
    v := HVScrollableView for:ImageView in:newPanel.
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   220
    v origin:(0.0 @ LastRatio) corner:(1.0 @ 1.0).
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   221
    imageView := v scrolledView.
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   222
    imageView menuHolder:self; menuMessage:#imageMenu; menuPerformer:self.
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   223
1872
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   224
    LastExtent notNil ifTrue:[
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   225
        self extent:LastExtent
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   226
    ].
1c3c80a1973f remember last extent and variable frame ratio;
Claus Gittinger <cg@exept.de>
parents: 1379
diff changeset
   227
45
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   228
    "
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   229
     ImageInspectorView new realize
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   230
     ImageInspectorView inspect:(Image fromFile:'bitmaps/claus.gif')
950b84ba89e6 *** empty log message ***
claus
parents: 30
diff changeset
   231
    "
1011
1022e80a1c60 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 647
diff changeset
   232
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   233
    "Modified: / 28-05-2007 / 15:15:32 / cg"
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   234
! !
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   235
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   236
!ImageInspectorView methodsFor:'menu'!
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   237
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   238
imageMenu
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   239
    ^ self class imageMenu
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   240
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   241
    "Created: / 28-05-2007 / 15:12:56 / cg"
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   242
!
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   243
8038
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
   244
menuEdit
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
   245
    inspectedObject edit
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
   246
!
4283cb9e492a +menuEdit
Claus Gittinger <cg@exept.de>
parents: 7875
diff changeset
   247
13297
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   248
menuFileBrowser
14795
Claus Gittinger <cg@exept.de>
parents: 14661
diff changeset
   249
    UserPreferences fileBrowserClass
13297
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   250
        openOn:inspectedObject fileName
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   251
!
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   252
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   253
menuMagnification
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   254
    |mag|
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   255
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   256
    mag := Dialog 
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   257
            request:'Magnify by:' 
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   258
            initialAnswer:1 
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   259
            list:#('0.5' '1' '2' '4' '8').
7875
8bc00cd0c2a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7868
diff changeset
   260
    mag := Number readFrom:mag onError:[nil].
8bc00cd0c2a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7868
diff changeset
   261
    mag notNil ifTrue:[
8bc00cd0c2a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7868
diff changeset
   262
        imageView image:(inspectedObject magnifiedBy:mag).
8bc00cd0c2a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7868
diff changeset
   263
    ]
7799
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   264
89bbb32c1200 +magnify
Claus Gittinger <cg@exept.de>
parents: 2831
diff changeset
   265
    "Created: / 28-05-2007 / 15:14:35 / cg"
7875
8bc00cd0c2a4 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7868
diff changeset
   266
    "Modified: / 30-10-2007 / 16:49:16 / cg"
8672
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   267
!
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   268
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   269
menuSetBackgroundColor:colorNameSymbol
b407d6ab29da *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8451
diff changeset
   270
    imageView backgroundColor:(Color name:colorNameSymbol)
30
205d53e91c52 Initial revision
claus
parents:
diff changeset
   271
! !
516
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
   272
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   273
!ImageInspectorView methodsFor:'queries'!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   274
13297
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   275
filenameOfImageKnown
14420
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   276
    ^ [ inspectedObject isImage and:[inspectedObject fileName notNil] ]
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   277
!
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   278
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   279
hasImage
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   280
    "do we inspect an image and not a Form?"
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   281
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   282
    ^ inspectedObject isImage
13297
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   283
!
ea807c25ceb9 class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 13077
diff changeset
   284
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   285
labelFor:anObject
11659
dac2f285a647 changed: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 9184
diff changeset
   286
    |l fn|
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   287
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   288
    l := super labelFor:anObject.
14420
250bcc5188a6 class: ImageInspectorView
Stefan Vogel <sv@exept.de>
parents: 14351
diff changeset
   289
    (anObject isImage and:[(fn := anObject fileName) notNil]) ifTrue:[
11659
dac2f285a647 changed: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 9184
diff changeset
   290
        l := l , ' (''' , fn asFilename baseName, ''')'
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   291
    ].
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   292
    ^ l
11659
dac2f285a647 changed: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 9184
diff changeset
   293
dac2f285a647 changed: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 9184
diff changeset
   294
    "Modified: / 25-07-2012 / 12:53:13 / cg"
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   295
! !
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2236
diff changeset
   296
1011
1022e80a1c60 eliminated references to subViews instance variable (will vanish)
Claus Gittinger <cg@exept.de>
parents: 647
diff changeset
   297
!ImageInspectorView class methodsFor:'documentation'!
516
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
   298
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
   299
version
14795
Claus Gittinger <cg@exept.de>
parents: 14661
diff changeset
   300
    ^ '$Header: /cvs/stx/stx/libtool/ImageInspectorView.st,v 1.36 2014-10-23 11:15:46 cg Exp $'
8836
73f01b9e58ec changed:
Claus Gittinger <cg@exept.de>
parents: 8672
diff changeset
   301
!
73f01b9e58ec changed:
Claus Gittinger <cg@exept.de>
parents: 8672
diff changeset
   302
73f01b9e58ec changed:
Claus Gittinger <cg@exept.de>
parents: 8672
diff changeset
   303
version_CVS
14795
Claus Gittinger <cg@exept.de>
parents: 14661
diff changeset
   304
    ^ '$Header: /cvs/stx/stx/libtool/ImageInspectorView.st,v 1.36 2014-10-23 11:15:46 cg Exp $'
516
f007fd40377a examples
Claus Gittinger <cg@exept.de>
parents: 165
diff changeset
   305
! !
13077
3cac4b955bbf class: ImageInspectorView
Claus Gittinger <cg@exept.de>
parents: 11659
diff changeset
   306