SmallSense__VariablePO.st
changeset 64 2257d7223898
parent 34 5be71b1d52ec
child 67 020b7461b15e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SmallSense__VariablePO.st	Sat Aug 24 22:15:09 2013 +0100
@@ -0,0 +1,111 @@
+"{ Package: 'jv:smallsense' }"
+
+"{ NameSpace: SmallSense }"
+
+PO subclass:#VariablePO
+	instanceVariableNames:'class type'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'SmallSense-Interface-PO'
+!
+
+
+!VariablePO class methodsFor:'instance creation'!
+
+argument: name
+
+    ^self new name: name; type: #MethodArg
+
+    "Created: / 26-11-2011 / 18:45:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+classVariable: name in: class
+
+    ^self new name: name; type: #ClassVar; class: class
+
+    "Created: / 26-11-2011 / 18:46:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+globalVariable: name
+
+    ^self new name: name; type: #Global
+
+    "Created: / 26-11-2011 / 18:57:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+instanceVariable: name in: class
+
+    ^self new name: name; type: #InstanceVar; class: class
+
+    "Created: / 26-11-2011 / 18:45:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+variable: name
+
+    ^self new name: name; type: #MethodVar
+
+    "Created: / 26-11-2011 / 18:45:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!VariablePO methodsFor:'accessing'!
+
+class:something
+    class := something.
+
+    "Created: / 06-04-2011 / 16:51:42 / Jakub <zelenja7@fel.cvut.cz>"
+!
+
+stringToComplete
+
+    "Answers a string to complete"
+
+    ^name , ' '
+
+    "Created: / 20-05-2011 / 13:54:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+type:something
+    type := something.
+! !
+
+!VariablePO methodsFor:'displaying'!
+
+displayOn:aGC x:x y:y opaque:opaque
+
+    | lw cn cnw fg |
+
+    super displayOn:aGC x:x y:y opaque:opaque.
+
+    class isNil ifTrue:[^self].
+
+    lw :=  x + 16 + (self label widthOn: aGC).
+    cn := class nameWithoutPrefix.
+    cnw := aGC widthOfString: cn.
+
+    (aGC width > (lw + cnw + 5)) ifTrue:
+        [fg := aGC paint.
+        aGC paint: Color gray .
+        aGC displayString: cn x: aGC width - cnw - 5 y: y.
+        aGC paint: fg.
+        ]
+
+    "Created: / 21-05-2011 / 11:02:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!VariablePO methodsFor:'testing'!
+
+isSmallSenseVariablePO
+    ^ true
+! !
+
+!VariablePO class methodsFor:'documentation'!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+!
+
+version_SVN
+    ^ '$Id: SmallSenseVariable.st 7825 2011-11-26 18:32:31Z vranyj1 $'
+! !
+