Font.st
changeset 4023 b60e9d3335d3
parent 4007 f6f734115906
child 4116 093ce13b682b
--- a/Font.st	Thu Feb 19 01:01:07 2004 +0100
+++ b/Font.st	Thu Feb 19 01:16:23 2004 +0100
@@ -14,7 +14,7 @@
 
 FontDescription subclass:#Font
 	instanceVariableNames:'device fontId replacementFont ascent descent width isFixedWidth
-		minWidth maxWidth maxAscent maxDescent'
+		minWidth maxWidth maxAscent maxDescent minCode maxCode direction'
 	classVariableNames:'Replacements'
 	poolDictionaries:''
 	category:'Graphics-Support'
@@ -528,14 +528,19 @@
 getFontInfos
     "ask the device about all of my actual attributes"
 
-    |b info|
+    |info|
 
     replacementFont notNil ifTrue:[
         replacementFont getFontInfos.
         ^ self
     ].
 
-    info := device fontMetricsOf:fontId.
+    info := self getFontMetrics.
+
+    minCode := info minCode.
+    maxCode := info maxCode.
+    direction := info direction.
+
     encoding := info encoding.
     encoding isNil ifTrue:[
         encoding := device encodingOf:fontId.
@@ -561,14 +566,11 @@
 getFontMetrics
     "ask the device about all of my actual attributes"
 
-    |f|
-
-    f := fontId.
     replacementFont notNil ifTrue:[
-        f := replacementFont fontId.
+        ^ replacementFont getFontMetrics
     ].
 
-    ^ device fontMetricsOf:f.
+    ^ device fontMetricsOf:fontId.
 !
 
 getFontResolution
@@ -1023,6 +1025,38 @@
     "Modified: / 10.9.1998 / 12:11:33 / cg"
 ! !
 
+!Font methodsFor:'queries-misc'!
+
+direction
+    device isNil ifTrue:[
+        self errorNoDevice
+    ].
+    replacementFont notNil ifTrue:[
+        ^ replacementFont direction
+    ].
+    ^ direction
+!
+
+maxCode
+    device isNil ifTrue:[
+        self errorNoDevice
+    ].
+    replacementFont notNil ifTrue:[
+        ^ replacementFont maxCode
+    ].
+    ^ maxCode
+!
+
+minCode 
+    device isNil ifTrue:[
+        self errorNoDevice
+    ].
+    replacementFont notNil ifTrue:[
+        ^ replacementFont minCode
+    ].
+    ^ minCode
+! !
+
 !Font methodsFor:'st-80 queries'!
 
 fixedWidth
@@ -1086,7 +1120,7 @@
 !Font class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/Font.st,v 1.90 2004-02-09 14:34:23 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/Font.st,v 1.91 2004-02-19 00:16:23 cg Exp $'
 ! !
 
 Font initialize!