bug-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extension to XIM support


From: Alexander Malmberg
Subject: Re: Extension to XIM support
Date: Fri, 11 Jul 2003 12:46:12 +0200

Kazunobu Kuriyama wrote:
> Alexander Malmberg wrote:
> > Adam Fedor wrote:
[snip]
> > Since the default (or at least its value) is effectively back-xlib
> > specific, I'd suggest reflecting this in the name, eg.
> > GSXIMInputMethodStyle.
> 
> What if the extended XIM also works fine for back-art?

In that case, replace back-xlib with "back-x11". :) It'd still be X- and
XIM-specific, though, so I think my comment still applies.

Kazunobu Kuriyama wrote:
[snip]
> To implement those two styles, you need to know:
> 
> (1) The position (relative to the screen) and the size of the text
>      drawing object.
> (2) The insertion point (relative to screen). (for over-the-spot only)
> 
> The necessity of knowing the coordinates relative to the screen is
> because, as mentioned above, the windows for the areas have nothing
> to do with  GNUstep GUI's window hierarchy, i.e., they are independent
> of the GNUstep coodinates system.
> 
> At present, I have no idea in getting these values from objects other
> than NSTextView.

[NSTextInput firstRectForCharacterRange:], and it's probably safe to
assume that the client will be an NSView subclass, so you can use NSView
methods.

>  > it adds
>  > backend-specific code to -gui, and it doesn't fit in the documented
>  > input architecture).
> 
> In -gui, I don't directly call any method defined in -back.  When I need
> a function which is provided by such methods, I always make use of it
> through the interfaces newly defined for this purpose:
> 
>     NSTextView
> <- GSDisplayServer (InputMethod)
> <- XGServer (InputMethod)
> <- XIMInputServer (InputMethod)

Although this hides the implementation, there are many implementation
details and XIM-specific concepts in the interfaces (eg. the strings
returned by -inputMethodStyle, or the "preedit" and "status" areas). I'm
not familiar with input methods on different platforms, so I don't know
if these concepts are commonly used. However, I can see that if you use
the standard OPENSTEP
NSInputManager/NSInputServer/NSInputServiceProvider for input
management, they wouldn't be appropriate.

> If this violates 'the documented input architecture', could you tell me
> which document it that?  I'll read it to correct the implementation.

Well, there's apple's documentation:

http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Protocols/NSTextInput.html

http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/Classes/NSInputManager.html

http://developer.apple.com/documentation/Cocoa/Conceptual/InputManager/InputManager.html

...
[snip]

- Alexander Malmberg




reply via email to

[Prev in Thread] Current Thread [Next in Thread]