WinPrinterContext.st
author fm
Wed, 18 Apr 2007 13:20:46 +0200
changeset 2316 1660bcf17d63
parent 2315 026d4d8cfb1b
child 2317 c9bf3bf3c014
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libview2' }"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
2301
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
    14
PrinterContext subclass:#WinPrinterContext
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
    15
	instanceVariableNames:''
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
	classVariableNames:''
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	poolDictionaries:''
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	category:'Interface-Printing'
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!WinPrinterContext class methodsFor:'documentation'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
copyright
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
 COPYRIGHT (c) 2006 by eXept Software AG
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
              All Rights Reserved
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
 This software is furnished under a license and may be used
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
 only in accordance with the terms of that license and with the
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 be provided or otherwise made available to, or used by, any
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 other person.  No title to or ownership of the software is
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 hereby transferred.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
documentation
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
    I am the mediator between the smalltalk printing protocol 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
    (which is the same as the graphics drawing protocol) and the
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
    windows printer.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    When youopena printer, you will typically talk to me, and I will
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
    forward the graphics commands to my printer.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
    [author:]
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
        Felix Madrid (fm@exept.de)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
!WinPrinterContext class methodsFor:'instance creation'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
fromPrinterInfo: aPrinterInfo
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    53
    | printerContext printerDevice hDC|     
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
    hDC := aPrinterInfo createDC.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
    hDC = 0 ifTrue: [ ^self error: 'Error while opening printer.' ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    58
    printerDevice := WinPrinter on: aPrinterInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    59
    printerDevice printerDC:hDC.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    60
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    61
    printerContext := self new.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    62
    printerContext printerInfo: aPrinterInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    63
    printerContext setDevice:printerDevice id:nil gcId:hDC.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    64
    printerContext initExtent.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
    65
    ^printerContext
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    "Created: / 03-08-2006 / 12:53:52 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    "Modified: / 04-08-2006 / 12:55:01 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
    "Modified: / 16-04-2007 / 12:36:26 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
!WinPrinterContext class methodsFor:'accessing'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
getPrinterInformation:printerNameString 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
    " Answer the printer information for the printer named printerNameString.  If no name is specified,
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
      answer the information for the default printer."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
    |h|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    h := OperatingSystem openPrinter:printerNameString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
    ^ OperatingSystem 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
        getDocumentProperties:nil
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
        hPrinter:h
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
        pDeviceName:printerNameString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    "Created: / 27-07-2006 / 10:22:32 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
    "Modified: / 01-08-2006 / 16:01:44 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
    "Modified: / 10-10-2006 / 18:57:45 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
named: aName
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
    "Answer a new instance of Printer which represents
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
     the printer named aName as specified in the host
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
     Control Panel."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
    aName isNil ifTrue: [ ^self default ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
    ^self new printerInfoWithName: aName
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
    "Created: / 27-07-2006 / 17:51:27 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
    "Modified: / 02-08-2006 / 17:26:29 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
    "Modified: / 10-10-2006 / 17:33:29 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
!WinPrinterContext class methodsFor:'testing & examples'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   106
fillRectangles: rectangles
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   107
    "Opens a print dialog and prints the given rectangles"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   108
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   109
    | printerInfo printer |
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   110
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   111
    printerInfo := PrintingDialog getPrinterInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   112
    printerInfo isNil ifTrue:[^self].
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   113
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   114
    printer := self fromPrinterInfo: printerInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   115
    [ 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   116
        printer startPrintJob: 'Fill Rectangles'.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   117
        printer foreground:Color blue background:Color white.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   118
        rectangles 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   119
            do:[:rectangle |
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   120
                printer fillRectangleX: rectangle origin x 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   121
                        y: rectangle origin y 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   122
                        width: rectangle width 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   123
                        height: rectangle height.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   124
            ].
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   125
        printer endPrintJob.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   126
    ] forkAt: 3
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   127
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   128
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   129
     WinPrinterContext fillRectangles:  
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   130
        (Array with: (Rectangle left:20 top:20 width:400 height:600)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   131
               with: (Rectangle left:500 top:700 width:600 height:400)    
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   132
               with: (Rectangle left:800 top:1000 width:1600 height:2000)    
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   133
               with: (Rectangle left:1040 top:1240 width:3000 height:3000)    
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   134
        )
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   135
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   136
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   137
    "Created: / 07-08-2006 / 11:40:48 / fm"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   138
    "Modified: / 16-04-2007 / 15:37:46 / cg"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   139
!
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   140
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
print: aString font: aFont title: aTitle
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
    "Open a print dialog to allow printing of the given string
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
     using the given title & font."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
    self print: aString font: aFont title: aTitle wordWrap: false     
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
   "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   148
    WinPrinterContext print: 'Holaaaa!! (from:  WinPrinterContext>>print:aString font:aFont title:aTitle)' font: nil title: 'Printing Test'
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   149
    WinPrinterContext print: (WinPrinterContext class sourceCodeAt:#'print:font:title:wordWrap:') font: nil title: 'Printing Test String'
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   150
    WinPrinterContext print: (WinPrinterContext class sourceCodeAt:#'print:font:title:wordWrap:') font: (Font family:'Arial' face:'medium' size:8) title: 'Printing Test String'
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
   "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
    "Created: / 27-07-2006 / 17:52:33 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
    "Modified: / 03-08-2006 / 18:52:31 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   155
    "Modified: / 16-04-2007 / 13:54:40 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
print: aString font: aFont title: aTitle wordWrap: wordWrap
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
    "Open a print dialog to allow printing of the given string
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
     using the given title & font."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
        printer
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
            print: aString
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
            font: aFont
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
            title: aTitle 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
            wordWrap: wordWrap
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
            marginsRect: nil 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   178
     WinPrinterContext print: 'Holaaaa!! (from:  PrinterContext>>print:aString font:aFont title:aTitle)' font: nil title: 'Printing Test' wordWrap: true
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   179
     WinPrinterContext print: (WinPrinterContext class sourceCodeAt:#'print:font:title:wordWrap:') font:nil title:'Printing Test String' wordWrap:true
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   180
     WinPrinterContext print: (WinPrinterContext class sourceCodeAt:#'print:font:title:wordWrap:') font: (Font family:'Arial' face:'medium' size:8) title: 'Printing Test String' wordWrap: true
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "Created: / 03-08-2006 / 18:51:53 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   184
    "Modified: / 16-04-2007 / 15:37:31 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
printCircles: arrayOfPointsAndRadius
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
    "Opens a print dialog and prints the given circles"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
        printer startPrintJob: 'Circles'.
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   198
        printer foreground:Color green background:Color white.
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
        arrayOfPointsAndRadius
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
            do:[:pointAndRadius |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
                printer displayCircle:(pointAndRadius at:1) 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
                        radius:(pointAndRadius at:2).
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
            ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
        printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   208
     WinPrinterContext printCircles:  
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
        (Array with: (Array with: 800@800 with: 600)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
               with: (Array with: 1500@1500 with: 1000)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
               with: (Array with: 4000@2500 with: 2000))
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
    "Created: / 07-08-2006 / 11:46:52 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   215
    "Modified: / 16-04-2007 / 15:37:34 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
printCirclesIn: rectangles
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
    "Opens a print dialog and prints the given circles"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
        printer startPrintJob: 'Circles In Rectangles'.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
        rectangles
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
           do:[:rectangle |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
               printer displayCircleIn: rectangle.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
           ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
       printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   237
     WinPrinterContext printCirclesIn:  
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
        (Array with: (Rectangle left:20 top:20 width:400 height:600)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
               with: (Rectangle left:40 top:40 width:600 height:400)    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
        )
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
    "Created: / 07-08-2006 / 11:48:46 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   244
    "Modified: / 16-04-2007 / 15:37:38 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
printLines: pairOfPointsArray
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
    "Opens a print dialog and prints the given lines"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
        printer startPrintJob: 'Lines'.
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   258
        printer foreground:Color red background:Color white.
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
        pairOfPointsArray
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
            do:[:pairOfPoints |                 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
                 printer displayLineFrom: (pairOfPoints at:1)  to: (pairOfPoints at:2).
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
            ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   263
        printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   267
     WinPrinterContext printLines:  
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   268
        (Array with: (Array with:10@10 with:1000@5000)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   269
               with: (Array with:10@10 with:3500@2000))
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
    "Created: / 07-08-2006 / 12:09:48 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
    "Modified: / 07-08-2006 / 14:11:17 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   274
    "Modified: / 16-04-2007 / 15:37:41 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   277
printPoints: aCollectionOfPoints
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   278
    "Opens a print dialog and prints the given points"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   279
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   280
    | printerInfo printer |
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   281
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   282
    printerInfo := PrintingDialog getPrinterInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   283
    printerInfo isNil ifTrue:[^self].
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   284
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   285
    printer := self fromPrinterInfo: printerInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   286
    [ 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   287
        printer startPrintJob: 'Points'.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   288
        aCollectionOfPoints do:[:each |
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   289
            printer displayPointX: each x y: each y.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   290
        ].
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   291
        printer endPrintJob.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   292
    ] forkAt: 3
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   293
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   294
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   295
     WinPrinterContext printPoints:  
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   296
        (Array with: (10 @ 10)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   297
               with: (500 @ 700)    
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   298
               with: (900 @ 1000)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   299
               with: (1500 @ 1700)   
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   300
               with: (2100 @ 2000)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   301
               with: (2500 @ 2700)   
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   302
        )
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   303
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   304
!
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   305
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
printPolygons: polygons
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
    "Opens a print dialog and prints the given polygons"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
        printer startPrintJob: 'Polygons'.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
        printer foreground:Color black background:Color white.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
        polygons
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
            do:[:aPolygon |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
                 aPolygon displayStrokedOn: printer.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
            ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
        printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   326
     WinPrinterContext printPolygons:  
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
        (Array with: (Polygon vertices:(
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
                                Array
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
                                    with:10@10
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
                                    with:60@10
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
                                    with:35@60)))
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
    "Created: / 07-08-2006 / 12:09:48 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
    "Modified: / 07-08-2006 / 14:11:17 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   336
    "Modified: / 16-04-2007 / 15:37:43 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   339
printPolylines: evenCollectionOfPoints
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   340
    "Opens a print dialog and prints the given rectangles"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   341
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   342
    | printerInfo printer |
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   343
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   344
    printerInfo := PrintingDialog getPrinterInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   345
    printerInfo isNil ifTrue:[^self].
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   346
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   347
    printer := self fromPrinterInfo: printerInfo.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   348
    [ 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   349
        printer startPrintJob: 'Polylines'.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   350
        printer displayPolylines:evenCollectionOfPoints.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   351
        printer endPrintJob.
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   352
    ] forkAt: 3
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   353
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   354
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   355
     WinPrinterContext printPolylines:  
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   356
        (Array with: (10 @ 10)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   357
               with: (500 @ 700)    
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   358
               with: (900 @ 1000)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   359
               with: (1500 @ 1700)   
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   360
               with: (2100 @ 2000)
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   361
               with: (2500 @ 2700)   
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   362
        )
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   363
    "
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   364
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   365
    "Created: / 07-08-2006 / 11:40:48 / fm"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   366
    "Modified: / 16-04-2007 / 15:37:46 / cg"
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   367
!
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   368
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
printRectangles: rectangles
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    "Opens a print dialog and prints the given rectangles"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
        printer startPrintJob: 'Rectangles'.
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   380
        printer foreground:Color red background:Color white.
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
        rectangles 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
            do:[:rectangle |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
                printer displayRectangleX: rectangle origin x 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
                        y: rectangle origin y 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
                        width: rectangle width 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
                        height: rectangle height.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
            ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
        printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   392
     WinPrinterContext printRectangles:  
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
        (Array with: (Rectangle left:20 top:20 width:400 height:600)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
               with: (Rectangle left:40 top:40 width:600 height:400)    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
        )
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
    "Created: / 07-08-2006 / 11:40:48 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   399
    "Modified: / 16-04-2007 / 15:37:46 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
printStrings: stringAndPositionsArray
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
    "Opens a print dialog and prints the given strings"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
    | printerInfo printer |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    printerInfo := PrintingDialog getPrinterInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
    printerInfo isNil ifTrue:[^self].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
    printer := self fromPrinterInfo: printerInfo.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
    [ 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
        printer startPrintJob: 'Strings with Position'.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
        printer foreground:Color black background:Color white.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
        stringAndPositionsArray
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
            do:[:pairOfPointsAndPosition |                 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
                 printer displayString:(pairOfPointsAndPosition at: 1) 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
                            x:(pairOfPointsAndPosition at: 2) x
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
                            y:(pairOfPointsAndPosition at: 2) y
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
            ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
        printer endPrintJob.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
    ] forkAt: 3
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
    "
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   424
     WinPrinterContext printStrings:  
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
        (Array with: (Array with:'Testing printing with standart method' with:10@10)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
               with: (Array with:'Another test string to print' with:80@200))
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
    "
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
    "Created: / 07-08-2006 / 12:09:48 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
    "Modified: / 07-08-2006 / 14:11:17 / fm"
2313
a3fa5abef172 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2304
diff changeset
   431
    "Modified: / 16-04-2007 / 15:37:49 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
!WinPrinterContext methodsFor:'accessing'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
getCharHeight
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
    "Private - answer the height of the font selected in the receiver's
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
     device context."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
    |textMetrics answer|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
    textMetrics := Win32OperatingSystem::TextMetricsStructure new.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
"/    (OperatingSystem getTextMetrics:gcId lpMetrics:textMetrics) ifFalse:[ ^ self error ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
"/    Transcript showCR: 'CHAR HEIGHT PRIM ******* ', '   ',  (textMetrics tmHeight + textMetrics tmExternalLeading) printString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
"/    Transcript showCR: 'CHAR HEIGHT DEVICE ***** ', '   ', (self font heightOf:'PQWEXCZ' on:self device) printString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
    answer := (self font heightOf:'PQWEXCZ' on:self device).
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
"/    answer := textMetrics tmHeight + textMetrics tmExternalLeading.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
    ^answer 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
    "Created: / 02-08-2006 / 17:47:20 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
    "Modified: / 03-08-2006 / 10:09:01 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
    "Modified: / 10-10-2006 / 18:15:17 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
numberOfColorBitsPerPixel
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
    ^ OperatingSystem getDeviceCaps:gcId index:12 "Bitspixel"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
    "Created: / 03-08-2006 / 09:58:18 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    "Modified: / 10-10-2006 / 18:15:40 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
physicalOffsetX
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
    ^ OperatingSystem getDeviceCaps:gcId index:112 "PhysicalOffsetX"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    "Created: / 01-08-2006 / 16:28:34 / fm"
2301
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
   467
    "Modified: / 16-04-2007 / 12:52:06 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
physicalOffsetY
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
    ^ OperatingSystem getDeviceCaps:gcId index:113 "PhysicalOffsetY"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
    "Created: / 01-08-2006 / 16:28:34 / fm"
2301
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
   474
    "Modified: / 16-04-2007 / 12:52:01 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   476
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
pixelsPerInchOfScreenHeight
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
    ^ OperatingSystem getDeviceCaps:gcId index:90 "Logpixelsy"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
    "Created: / 01-08-2006 / 16:29:16 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
pixelsPerInchOfScreenWidth
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
    ^ OperatingSystem getDeviceCaps:gcId index:88 "Logpixelsx"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
    "Created: / 01-08-2006 / 16:28:34 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
printerHeightArea
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
    ^ (OperatingSystem getDeviceCaps:gcId index:10)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   491
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   492
    "Modified: / 10-10-2006 / 18:18:31 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   495
printerPhysicalHeight
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   496
    ^ OperatingSystem getDeviceCaps:gcId "deviceContext" index:111 "PhysicalHeight"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   497
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
    "Created: / 01-08-2006 / 16:14:08 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   500
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   501
printerPhysicalWidth
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   502
    ^ OperatingSystem getDeviceCaps:gcId "deviceContext" index:110 "PhysicalWidth"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   503
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   504
    "Created: / 01-08-2006 / 16:14:08 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   505
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   506
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
printerWidthArea
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
    ^ OperatingSystem getDeviceCaps:gcId "deviceContext" index:8 "Horzres"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
    "Created: / 01-08-2006 / 16:14:08 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
setViewportOrg: aPoint
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   514
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
    ^ OperatingSystem 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
            setViewportOrg: gcId "deviceContext"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   517
            x: aPoint x
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
            y: aPoint y
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
            oldOrigin: nil 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
    "Created: / 01-08-2006 / 16:14:08 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   524
!WinPrinterContext methodsFor:'drawing'!
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   525
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   526
displayPolylines:arrayOfPoints 
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   527
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   528
    device displayPolylines:arrayOfPoints in:nil with:gcId
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   529
! !
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   530
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
!WinPrinterContext methodsFor:'initialization & release'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   532
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
createDC
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    "Private - Create a device context for the receiver"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
    gcId := printerInfo createDC
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
    "Created: / 27-07-2006 / 10:21:05 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
    "Modified: / 02-08-2006 / 17:30:47 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
    "Modified: / 10-10-2006 / 18:14:28 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   543
deleteDC
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   544
    "Private - Delete a device context for the receiver"
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   545
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   546
    OperatingSystem deletePrinterDC: gcId.
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   547
!
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   548
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
executor
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
    |aCopy|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   552
    aCopy := WinWorkstation::PrinterDeviceContextHandle basicNew.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   553
    aCopy setDevice:device id:nil gcId:gcId.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
    ^ aCopy
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
    "Created: / 16-04-2007 / 12:39:02 / cg"
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   557
!
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   558
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   559
releaseDC
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   560
    "Private - Delete and clear the device context of the receiver."
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   561
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   562
    self deleteDC.
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   563
"/    device close.
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   564
    gcId := nil
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
!WinPrinterContext methodsFor:'printing process'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
endPage
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
    "Informs device that we are finished writing to a page."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
    (OperatingSystem endPage:gcId) > 0 ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
        self error
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
    ]
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
    "Created: / 27-07-2006 / 18:20:48 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
    "Modified: / 01-08-2006 / 16:01:34 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
    "Modified: / 10-10-2006 / 18:14:44 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
2315
026d4d8cfb1b changed #endPrintJob
fm
parents: 2313
diff changeset
   581
endPrintJobWithoutRelease
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    "End the print job.  Everything drawn between startPrintJob
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
     and endPrintJob will become one entry in the print queue."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
    |result|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
    self endPage.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
    result := OperatingSystem endDoc:gcId.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
    jobid := nil.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
    result >= 0 ifFalse:[ self error ]
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
    "Created: / 27-07-2006 / 18:21:04 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
    "Modified: / 01-08-2006 / 16:01:38 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
    "Modified: / 10-10-2006 / 18:50:43 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
startPage
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
    "Starts a page."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
    (OperatingSystem startPage:gcId) > 0 ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
        ^ self error
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
    "Created: / 27-07-2006 / 18:25:55 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   605
    "Modified: / 28-07-2006 / 18:19:04 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
    "Modified: / 10-10-2006 / 18:19:02 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
startPrintJob:aString fileName:aFileName 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   610
    "Start a print job, using aString as the job title; everything
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
     drawn between startPrintJob and endPrintJob will become
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
     one entry in the print queue."
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
    |docInfoStruct nameAddress title fileNameAddress|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
    gcId isNil ifTrue:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
        self buildPrinter
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
    abort := false.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
    title := aString ? 'Smalltalk/X'.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
    nameAddress := title asExternalBytes unprotectFromGC.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
    aFileName isNil ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
        fileNameAddress := aFileName pathName asExternalBytes unprotectFromGC
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
    docInfoStruct := Win32OperatingSystem::DocInfoStructure new.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
    docInfoStruct
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   627
        cbSize:docInfoStruct sizeInBytes;
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
        lpszDocName:nameAddress address.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
    fileNameAddress isNil ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
        docInfoStruct lpszOutput:fileNameAddress address
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   632
    jobid := OperatingSystem startDoc:gcId docInfo:docInfoStruct.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   633
    jobid > 0 ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
        jobid = -1 ifTrue:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
            abort := true.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
            ^ nil
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
        ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
        ^ self error
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
    self startPage
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   641
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   642
    "Created: / 27-07-2006 / 18:19:31 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
    "Modified: / 03-08-2006 / 15:11:19 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
    "Modified: / 10-10-2006 / 18:20:01 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
!WinPrinterContext methodsFor:'queries'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
supportsColor
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
"/    | retVal info |
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
"/
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
"/    info := (self class getPrinterInformation: self name) asUppercase.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
"/    (info includesSubstring: ',PSCRIPT,')
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
"/    ifTrue: [
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
"/        retVal := (DAPASX::DapasSystemInfo getYesNoInfoApp: 'Printer' profile: 'PostScriptBlackWhite') not.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   657
"/    ]
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   658
"/    ifFalse: [
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   659
"/        retVal := (info includesSubstring: 'PDF')
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   660
"/            ifTrue: [true]
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
"/            ifFalse: [self numberOfColorBitsPerPixel > 1].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
"/    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
"/
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
"/    ^retVal
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   665
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   666
    ^ false.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   667
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   668
    "Created: / 03-08-2006 / 09:55:26 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   669
    "Modified: / 04-08-2006 / 13:20:40 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   670
    "Modified: / 10-10-2006 / 18:21:07 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   671
!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   672
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   673
supportsGraphics
2301
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
   674
    ^(OperatingSystem getDeviceCaps: gcId index: 2 "Technology") ~= 4
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   675
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   676
    "Created: / 03-08-2006 / 10:07:43 / fm"
2301
135f21a3d127 refactorred OS-independent stuff
Claus Gittinger <cg@exept.de>
parents: 2299
diff changeset
   677
    "Modified: / 16-04-2007 / 12:44:03 / cg"
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   678
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   679
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   680
!WinPrinterContext methodsFor:'text printing'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   681
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   682
stringWidthOf:aString at:index 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   683
    "Return the width of aString up to index
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   684
     when written using the current font; expand tabs out
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   685
     to 4 spaces for calculations"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   686
    
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   687
    |answer str size spaceWidth|
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   688
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   689
    index <= 0 ifTrue:[ ^ 0 ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   690
    str := index >= aString size ifTrue:[ aString ] ifFalse:[ aString copyFrom:1 to:index ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   691
    true "self font isNil" ifTrue:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   692
        "if font not set yet, calculate based on default font"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   693
        "/            extString := str asExternalString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   694
        size := Win32OperatingSystem::WinPointStructure new.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   695
        (OperatingSystem 
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   696
            getTextExtentPoint:gcId
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   697
            string:str
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   698
            size:size) ifFalse:[ ^ self error ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   699
        answer := size x.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   700
"/        Transcript showCR: 'FROM PRIM ******* ', str, '   ',  answer printString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
"/        Transcript showCR: 'FROM DEVICE ***** ', str, '   ',(self font widthOf:str on:self device) printString.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
        #TODO.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
    ] ifFalse:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   704
        answer := self font widthOf:str on:self device
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   705
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   706
    index > aString size ifTrue:[
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
        spaceWidth := self font widthOf:Character space on:self device.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
        answer := answer + ((index - aString size) * spaceWidth)
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
    ].
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
    ^ answer.
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
    "Created: / 03-08-2006 / 10:27:20 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   713
    "Modified: / 04-08-2006 / 12:27:26 / fm"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
    "Modified: / 10-10-2006 / 18:20:43 / cg"
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
! !
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
!WinPrinterContext class methodsFor:'documentation'!
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
version
2316
1660bcf17d63 *** empty log message ***
fm
parents: 2315
diff changeset
   720
    ^ '$Header: /cvs/stx/stx/libview2/WinPrinterContext.st,v 1.6 2007-04-18 11:20:46 fm Exp $'
2299
b0576a106d03 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   721
! !