[immodule-qt] Does QT 4 beta 1 support IM modules

Lars Knoll lars at trolltech.com
Thu Feb 3 18:53:57 EET 2005


On Thursday 03 February 2005 16:22, Daisuke Kameda wrote:
> Lars Knoll <lars at trolltech.com> wrote:
> > > It will be necessary to consider individually about
> > > setting up default IM and changing IM by the context menu.
> >
> > Thanks for the patch. If you would like to have the multi input context
> > as a base to build additional contexts on top, wouldn't it be better if
> > it was inside of Qt instead of being a plugin?
>
> I also think so. But, when considering configuration about default IM
> and changing IM by the context menu, we may need to think over again.

Well, I would consider this mainly as a base class to build up complex input 
contexts from several simpler ones.

I'd like to move the IM switching into Qt itself (I'll try to work on 
implementing this next week). But this would not affect the API.

> > I have one question though. You added a signal and a slot to
> > QInputContext which I don't understand:
> >
> > +signals:
> > +    void imEventGenerated( QObject *receiver, QInputMethodEvent *e );
> > +
> > +public slots:
> > +    virtual void imEventReceived( QObject *receiver, QInputMethodEvent
> > *e ); +
> >
> > Are these really needed, as QInputContext::sendIMEvent() currently won't
> > emit the signal, and the signal provides no way of blocking the event
> > from being send to the widget.
>
> In the sub class of QMultiInputContext, the function to rebuild
> QInputMethodEvent may be needed using QInputMethodEvent which slave
> generated.
>
> In a very simple example, it is the function which builds one
> QInputMethodEvent from the result of input method of two or more languages.
>
> By implementing this function, usefulness of QMultiInputMethod increases.

But to do so, you would need a way to block the event from being delivered to 
the widget from the slave input context. Currently the slave context would 
always directly deliver the event to the widget.

> > And I think the slot doesn't make any sense in QInputContext itself. If
> > the signal is needed, it would be enough to add the slot to
> > QMultiInputContext.
>
> I agree with you. Implementing this slot in QMultiInputContext is enough.
>
> > If you want I can also add the simple input context to Qt. Please tell me
> > if I should do so.
>
> It is effective also in Qt/X11, but, it is more important in Qt/Embedded.
> By using this input context, we can input much language(ex. the language
> of Europe), without using a library like Xlib.
>
> This is flexible and convenient.

Ok, I can add it as a plugin.

> > Other than that, I have modified the QInputMethod event structure to be
> > able to deal with most things as requested from your side. Please have a
> > look at it and tell me if there are other requirements or something in
> > the event structure is not usable.
>
> I see. I will check it and consider later.

Thanks,
Lars



More information about the immodule-qt mailing list