JavaVM.st
changeset 334 638045537cf7
parent 331 2c319ce4ac92
child 337 aa36aa78b71f
--- a/JavaVM.st	Thu Apr 09 18:16:33 1998 +0000
+++ b/JavaVM.st	Thu Apr 09 18:17:46 1998 +0000
@@ -2669,6 +2669,53 @@
     "Modified: / 13.2.1998 / 15:23:07 / cg"
 !
 
+_Class_getMethods0:nativeContext
+    "get a method, given a name and type spec"
+
+    |jClass cls jmName mName mTypes whichAccess argSig sel 
+     methods|
+
+    jClass := nativeContext receiver.
+    cls := JavaClasses at:jClass.
+
+    "/ 0 = PUBLIC / 1 = ANY
+    whichAccess := nativeContext argAt:1.
+
+    methods := OrderedCollection new.
+
+    cls methodDictionary keysAndValuesDo:[:sel :mthd |
+        |i1 i2 jMethod retTypeClass|
+
+        mthd name printCR.
+
+        i1 := mthd signature indexOf:$(.
+        i2 := mthd signature indexOf:$) startingAt:(i1+1).
+        
+        "/ create a java.lang.reflect.Method for it.
+        jMethod := (Java at:'java.lang.reflect.Method') new.
+        jMethod instVarNamed:'clazz' put:jClass.
+        jMethod instVarNamed:'slot' put:sel.
+        jMethod instVarNamed:'name' put:(Java as_String:mthd name).
+        retTypeClass := mthd returnTypeClass.
+        retTypeClass notNil ifTrue:[
+            jMethod instVarNamed:'returnType' put:(self javaClassObjectForClass:retTypeClass).
+        ].
+
+        JavaMethods isNil ifTrue:[
+            JavaMethods := IdentityDictionary new
+        ].
+        JavaMethods at:jMethod put:mthd.
+        JavaMethods at:mthd put:jMethod.
+
+        methods add:jMethod.
+    ].
+    methods := methods asArray.
+self halt.
+    ^ methods.
+
+    "Modified: / 9.4.1998 / 17:42:35 / cg"
+!
+
 _Class_getName:nativeContext
     "get a classes name"
 
@@ -3073,6 +3120,21 @@
     "Created: / 7.1.1998 / 15:42:40 / cg"
 !
 
+_Method_getModifiers:nativeContext
+    |jMethod mthd retVal|
+
+    jMethod := nativeContext receiver.
+
+    mthd := JavaMethods at:jMethod ifAbsent:nil.
+    mthd isNil ifTrue:[
+        self halt.
+        ^ 0
+    ].
+    ^ mthd accessFlags
+
+    "Modified: / 9.4.1998 / 17:50:01 / cg"
+!
+
 _Method_invoke:nativeContext
     "invoke a javaMethod"
 
@@ -6538,6 +6600,69 @@
     "Modified: / 13.1.1998 / 22:11:09 / cg"
 !
 
+_WScrollPanePeer__getHScrollbarHeight:nativeContext
+    |scrollPane|
+
+    scrollPane := self viewForWPeer:nativeContext.
+    ^ 16
+
+    "Modified: / 9.4.1998 / 17:30:18 / cg"
+    "Created: / 9.4.1998 / 17:30:56 / cg"
+!
+
+_WScrollPanePeer__getHScrollbarWidth:nativeContext
+    |scrollPane|
+
+    scrollPane := self viewForWPeer:nativeContext.
+
+    "Created: / 9.4.1998 / 17:29:44 / cg"
+    "Modified: / 9.4.1998 / 17:30:18 / cg"
+!
+
+_WScrollPanePeer__getVScrollbarWidth:nativeContext
+    |scrollPane|
+
+    scrollPane := self viewForWPeer:nativeContext.
+    ^ 16
+
+    "Created: / 9.4.1998 / 17:29:48 / cg"
+    "Modified: / 9.4.1998 / 17:30:47 / cg"
+!
+
+_WScrollPanePeer_create:nativeContext
+    |jScrollPanePeer jScrollPane jFrame frame scrollPane
+     lbl|
+
+    jScrollPanePeer := nativeContext receiver.
+    jScrollPane := jScrollPanePeer instVarNamed:'target'.
+
+    jFrame := nativeContext argAt:1.
+    frame := jFrame instVarNamed:'pData'.
+
+    "/ create with a simple view ...
+    scrollPane := ScrollableView for:View in:frame.
+
+    self createdWindowsView:scrollPane for:jScrollPanePeer.
+
+    WindowCreationTrace == true ifTrue:[
+        'WScrollPanePeer_create: ' print. frame print. ' -> ' print. scrollPane printNL.
+    ].
+
+    "Created: / 9.4.1998 / 17:25:08 / cg"
+    "Modified: / 9.4.1998 / 17:26:11 / cg"
+!
+
+_WScrollPanePeer_setInsets:nativeContext
+
+    "Modified: / 9.4.1998 / 17:26:11 / cg"
+    "Created: / 9.4.1998 / 17:29:10 / cg"
+!
+
+_WScrollPanePeer_setSpans:nativeContext
+
+    "Created: / 9.4.1998 / 17:31:44 / cg"
+!
+
 _WScrollbarPeer__setValues:nativeContext
     |scrollBar value visibleAmount min max|
 
@@ -6561,7 +6686,7 @@
 
 _WScrollbarPeer_create:nativeContext
     |jScrollbarPeer jScrollbar jFrame frame scrollBar
-     lbl min max|
+     min max|
 
     jScrollbarPeer := nativeContext receiver.
     jScrollbar := jScrollbarPeer instVarNamed:'target'.
@@ -6584,7 +6709,7 @@
     ].
 
     "Created: / 5.1.1998 / 01:53:30 / cg"
-    "Modified: / 25.1.1998 / 11:55:14 / cg"
+    "Modified: / 9.4.1998 / 17:25:14 / cg"
 !
 
 _WScrollbarPeer_setLineIncrement:nativeContext
@@ -7534,6 +7659,6 @@
 !JavaVM class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaVM.st,v 1.28 1998/04/07 20:17:27 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaVM.st,v 1.29 1998/04/09 18:17:46 cg Exp $'
 ! !
 JavaVM initialize!