--- a/JavaVM.st Fri Dec 04 14:32:09 1998 +0000
+++ b/JavaVM.st Fri Dec 04 14:37:29 1998 +0000
@@ -3301,13 +3301,17 @@
path notNil ifTrue:[
path := Java as_ST_String:path.
path := self fixFilename:path.
+ f := path asFilename.
+ (f exists and:[f isDirectory]) ifTrue:[
+ ^ 0 "/ FALSE
+ ].
+
FileOpenConfirmation ifTrue:[
(self confirm:('JAVA Security check\\Create directory ''' , path , '''.\Grant permission ?') withCRs)
ifFalse:[
^ 0 "/ FALSE
]
].
- f := path asFilename.
OperatingSystem accessDeniedErrorSignal handle:[:ex |
^ 0 "/ FALSE
] do:[
@@ -3320,7 +3324,7 @@
^ 0 "FALSE"
"Created: / 4.2.1998 / 00:19:05 / cg"
- "Modified: / 20.10.1998 / 21:00:25 / cg"
+ "Modified: / 4.12.1998 / 14:04:03 / cg"
!
_File_renameTo0:nativeContext
@@ -7216,9 +7220,10 @@
_WCheckboxMenuItemPeer_setState:nativeContext
"/ void setState (boolean)
- UnimplementedNativeMethodSignal raise
+"/ UnimplementedNativeMethodSignal raise
"Created: / 12.11.1998 / 19:14:35 / cg"
+ "Modified: / 3.12.1998 / 21:41:13 / cg"
!
_WCheckboxPeer_create:nativeContext
@@ -9040,9 +9045,10 @@
_WMenuPeer_createSubMenu:nativeContext
"/ void createSubMenu (sun.awt.windows.WMenuPeer)
- UnimplementedNativeMethodSignal raise
+"/ UnimplementedNativeMethodSignal raise
"Created: / 12.11.1998 / 19:13:43 / cg"
+ "Modified: / 3.12.1998 / 21:41:07 / cg"
!
_WMenuPeer_delItem:nativeContext
@@ -9526,9 +9532,46 @@
_WWindowPeer_create:nativeContext
"/ void create (sun.awt.windows.WComponentPeer)
- UnimplementedNativeMethodSignal raise
-
- "Created: / 12.11.1998 / 19:10:38 / cg"
+ |jWindowPeer jWindow top window pDataIdx|
+
+ jWindowPeer := nativeContext receiver.
+
+ jWindow := jWindowPeer instVarNamed:'target'.
+ window := jWindowPeer instVarNamed:'pData'.
+
+ (window notNil and:[window ~~ 0]) ifTrue:[
+ WindowCreationTrace == true ifTrue:[
+ 'JAVA: window view already created: ' infoPrint.
+ jWindowPeer class name infoPrintCR.
+ ].
+ ] ifFalse:[
+"/ OLD
+"/ window := StandardSystemView new.
+"/ self createdWindowsView:window for:jWindowPeer.
+"/ JavaWindowGroup addTopView:window.
+
+ window := JavaPopUpView new.
+ window delegate:self.
+ window javaPeer:jWindowPeer.
+ self createdWindowsView:window for:jWindowPeer.
+ JavaWindowGroup addTopView:window.
+
+"/ top := StandardSystemView new.
+"/ window := JavaView origin:0.0@0.0 corner:1.0@1.0 in:top.
+"/ window delegate:self.
+"/ window javaPeer:jWindowPeer.
+"/ self createdWindowsView:window for:jWindowPeer.
+"/ JavaWindowGroup addTopView:top.
+
+ ].
+
+ WindowCreationTrace == true ifTrue:[
+ 'JAVA: WWindowPeer_create: ' print. jWindowPeer displayString print.
+ ' window: ' print. window printNL.
+ ].
+
+ "Created: / 4.1.1998 / 17:56:39 / cg"
+ "Modified: / 4.12.1998 / 15:08:53 / cg"
!
_WWindowPeer_getContainerElement:nativeContext
@@ -10169,6 +10212,9 @@
key := keyChar := key asciiValue
] ifFalse:[
untranslatedKey := anEvent view device keyboardMap keyAtValue:key ifAbsent:key.
+ untranslatedKey == #Insert ifTrue:[
+ key := jKeyEventClass instVarNamed:'VK_INSERT'
+ ].
untranslatedKey == #Delete ifTrue:[
key := jKeyEventClass instVarNamed:'VK_DELETE' "/ 127
].
@@ -10187,10 +10233,10 @@
untranslatedKey == #End ifTrue:[
key := jKeyEventClass instVarNamed:'VK_END'
].
- untranslatedKey == #Prior ifTrue:[
+ (key == #PreviousPage or:[untranslatedKey == #Prior]) ifTrue:[
key := jKeyEventClass instVarNamed:'VK_PAGE_UP'
].
- key == #EndOfText ifTrue:[
+ (key == #NextPage or:[key == #EndOfText]) ifTrue:[
key := jKeyEventClass instVarNamed:'VK_PAGE_DOWN'
].
untranslatedKey == #CursorUp ifTrue:[
@@ -10205,7 +10251,7 @@
untranslatedKey == #CursorRight ifTrue:[
key := jKeyEventClass instVarNamed:'VK_RIGHT'
].
- (#( F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11)
+ (#( F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12)
includes:untranslatedKey) ifTrue:[
key := jKeyEventClass instVarNamed:('VK_' , untranslatedKey)
].
@@ -10385,7 +10431,7 @@
^ nil.
"Created: / 6.1.1998 / 20:38:58 / cg"
- "Modified: / 3.12.1998 / 13:49:31 / cg"
+ "Modified: / 4.12.1998 / 15:27:47 / cg"
!
doWindowsEventThread
@@ -10458,7 +10504,7 @@
v := event view.
jWinPeer := self jPeerForView:v.
jWinPeer isNil ifTrue:[
- ((v isKindOf:JavaView) or:[v isKindOf:JavaTopView]) ifTrue:[
+ v isJavaView ifTrue:[
"/ mhmh - an event for a JavaView,
"/ which has no peer (anyMore ?)
"/ should not happen.
@@ -10517,7 +10563,7 @@
"/ selectively filter exposeEvents from Java ...
eventConsumed := false.
- (v class == JavaView or:[v class == JavaTopView]) ifTrue:[
+ v isJavaView ifTrue:[
"/ all events handled by Java ...
] ifFalse:[
eventConsumed := true.
@@ -10540,10 +10586,10 @@
^ true
].
(v isKindOf:ScrollBar) ifTrue:[
- ^ self
+ ^ true
].
(v isKindOf:Scroller) ifTrue:[
- ^ self
+ ^ true
].
(v isKindOf:MenuPanel) ifTrue:[
^ true
@@ -10597,12 +10643,12 @@
^ false
"Created: / 6.1.1998 / 20:36:36 / cg"
- "Modified: / 3.12.1998 / 20:38:48 / cg"
+ "Modified: / 4.12.1998 / 15:25:09 / cg"
! !
!JavaVM class methodsFor:'documentation'!
version
- ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaVM.st,v 1.89 1998/12/03 20:38:52 cg Exp $'
+ ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaVM.st,v 1.90 1998/12/04 14:37:29 cg Exp $'
! !
JavaVM initialize!