diff -r 49811300b9d2 -r 3f22865fa873 PrinterStream.st --- a/PrinterStream.st Wed Jun 05 20:37:25 1996 +0200 +++ b/PrinterStream.st Sat Jun 08 11:10:06 1996 +0200 @@ -11,7 +11,7 @@ " PipeStream subclass:#PrinterStream - instanceVariableNames:'native pageFormat' + instanceVariableNames:'native pageFormat underline strikeout' classVariableNames:'' poolDictionaries:'' category:'Streams-External' @@ -73,7 +73,7 @@ To print: - |p| + |p| p := Printer new. p notNil ifTrue:[ @@ -103,52 +103,52 @@ "this is usually redefined by the startup-file" DefaultCommands isNil ifTrue:[ - DefaultCommands := #('lpr' - 'lpr -P' - 'cat | rsh lpr -h' - 'cat >xxx ; ghostview xxx' - 'cat > printfile' - 'a2ps' - 'a2ps | rsh lpr -h' - 'a2ps > printfile' - ). + DefaultCommands := #('lpr' + 'lpr -P' + 'cat | rsh lpr -h' + 'cat >xxx ; ghostview xxx' + 'cat > printfile' + 'a2ps' + 'a2ps | rsh lpr -h' + 'a2ps > printfile' + ). ]. PrintCommand isNil ifTrue:[ - OperatingSystem isBSDlike ifTrue:[ - PrintCommand := 'lpr' - ] ifFalse:[ - PrintCommand := 'lp' - ] + OperatingSystem isBSDlike ifTrue:[ + PrintCommand := 'lpr' + ] ifFalse:[ + PrintCommand := 'lp' + ] ]. LeftMargin isNil ifTrue:[ - LeftMargin := 0 + LeftMargin := 0 ]. DefaultPageFormats isNil ifTrue:[ "/ UnitConverter must support all of them. - self defaultPageFormats:#( - 'letter' - 'legal' - 'ledger' - 'a3' - 'a4' - 'a5' - 'a6' - 'b5' - ). + self defaultPageFormats:#( + 'letter' + 'legal' + 'ledger' + 'a3' + 'a4' + 'a5' + 'a6' + 'b5' + ). ]. Landscape isNil ifTrue:[ - Landscape := false + Landscape := false ]. PageFormat isNil ifTrue:[ - Language == #us ifTrue:[ - PageFormat := #letter - ] ifFalse:[ - PageFormat := #a4 - ] + Language == #us ifTrue:[ + PageFormat := #letter + ] ifFalse:[ + PageFormat := #a4 + ] ] " @@ -199,9 +199,9 @@ PrinterStream defaultCommands:#( ... )" DefaultCommands isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass defaultCommands - ] + self == PrinterStream ifFalse:[ + ^ self superclass defaultCommands + ] ]. ^ DefaultCommands @@ -225,9 +225,9 @@ PrinterStream defaultPageFormats:#..." DefaultPageFormats isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass defaultPageFormats - ] + self == PrinterStream ifFalse:[ + ^ self superclass defaultPageFormats + ] ]. ^ DefaultPageFormats @@ -276,9 +276,9 @@ "return the landscape setting" Landscape isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass landscape - ] + self == PrinterStream ifFalse:[ + ^ self superclass landscape + ] ]. ^ Landscape ! @@ -305,9 +305,9 @@ "return the number of blanks for the left margin" LeftMargin isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass leftMargin - ] + self == PrinterStream ifFalse:[ + ^ self superclass leftMargin + ] ]. ^ LeftMargin ! @@ -325,9 +325,9 @@ or via the launchers settings menu." PageFormat isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass pageFormat - ] + self == PrinterStream ifFalse:[ + ^ self superclass pageFormat + ] ]. ^ PageFormat @@ -341,7 +341,7 @@ that symbol, in order for printing to be correct. This list can be set from the startup script with: - PrinterStream defaultPageFormat:#... + PrinterStream defaultPageFormat:#... or via the launchers settings menu." PageFormat := aSymbol. @@ -357,9 +357,9 @@ settings menu." PrintCommand isNil ifTrue:[ - self == PrinterStream ifFalse:[ - ^ self superclass printCommand - ] + self == PrinterStream ifFalse:[ + ^ self superclass printCommand + ] ]. ^ PrintCommand @@ -463,10 +463,10 @@ "send some characters to the printer - translate as needed" (aCharacter == Character cr) ifTrue:[ - super nextPut:(Character cr). - self spaces:(self class leftMargin) + super nextPut:(Character cr). + self spaces:(self class leftMargin) ] ifFalse:[ - super nextPut:aCharacter + super nextPut:aCharacter ] "Modified: 1.6.1996 / 00:13:48 / cg" @@ -479,22 +479,22 @@ |lastE| aCollection hasChangeOfEmphasis ifTrue:[ - aCollection keysAndValuesDo:[:idx :aChar | - |e| + aCollection keysAndValuesDo:[:idx :aChar | + |e| - e := aCollection emphasisAt:idx. - (idx == 1 - or:[lastE ~~ e]) ifTrue:[ - self emphasis:e. - lastE := e. - ]. - self nextPut:aChar. - ]. - self normal. + e := aCollection emphasisAt:idx. + (idx == 1 + or:[lastE ~~ e]) ifTrue:[ + self emphasis:e. + lastE := e. + ]. + self nextPut:aChar. + ]. + self normal. ] ifFalse:[ - aCollection do:[:aChar | - self nextPut:aChar - ] + aCollection do:[:aChar | + self nextPut:aChar + ] ] "Modified: 3.6.1996 / 17:12:31 / cg" @@ -540,9 +540,26 @@ emphasis:anEmphasis "change the emphasis" - anEmphasis isNil ifTrue:[ - ^ self normal + (Text emphasis:anEmphasis includes:#underline) ifTrue:[ + underline ifFalse:[ + self underline + ] + ] ifFalse:[ + underline ifTrue:[ + self noUnderline + ] ]. + + (Text emphasis:anEmphasis includes:#strikeout) ifTrue:[ + strikeout ifFalse:[ + self strikeout + ] + ] ifFalse:[ + strikeout ifTrue:[ + self noStrikeout + ] + ]. + anEmphasis == #bold ifTrue:[ ^ self bold ]. @@ -553,15 +570,10 @@ or:[anEmphasis = #(italic bold)]) ifTrue:[ ^ self boldItalic ]. - anEmphasis == #underline ifTrue:[ - ^ self underline - ]. - anEmphasis == #strikeout ifTrue:[ - ^ self strikeout - ]. - "Created: 14.5.1996 / 18:53:54 / cg" - "Modified: 18.5.1996 / 09:42:49 / cg" + ^ self normal + + "Modified: 8.6.1996 / 08:15:00 / cg" ! italic @@ -573,6 +585,26 @@ "Modified: 18.5.1996 / 08:55:18 / cg" ! +noUnderline + "set emphasis to no underline + - ignore here, since this class does not know anything about the printer" + + ^ self + + "Modified: 18.5.1996 / 08:55:10 / cg" + "Created: 8.6.1996 / 08:15:12 / cg" +! + +noStrikeout + "set emphasis to no strikeout + - ignore here, since this class does not know anything about the printer" + + ^ self + + "Modified: 18.5.1996 / 08:55:10 / cg" + "Created: 8.6.1996 / 08:15:20 / cg" +! + normal "set emphasis to normal (non-bold, non-italic) - ignore here, since this class does not know anything about the printer" @@ -754,6 +786,6 @@ !PrinterStream class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libbasic2/PrinterStream.st,v 1.35 1996-06-04 15:19:21 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic2/PrinterStream.st,v 1.36 1996-06-08 09:10:06 cg Exp $' ! ! PrinterStream initialize!