diff options
Diffstat (limited to 'ibus/interface')
-rw-r--r-- | ibus/interface/Makefile.am | 1 | ||||
-rw-r--r-- | ibus/interface/__init__.py | 1 | ||||
-rw-r--r-- | ibus/interface/iconfig.py | 8 | ||||
-rw-r--r-- | ibus/interface/iengine.py | 33 | ||||
-rw-r--r-- | ibus/interface/ienginefactory.py | 10 | ||||
-rw-r--r-- | ibus/interface/iibus.py | 81 | ||||
-rw-r--r-- | ibus/interface/iinputcontext.py | 133 | ||||
-rw-r--r-- | ibus/interface/inotifications.py | 8 | ||||
-rw-r--r-- | ibus/interface/ipanel.py | 36 |
9 files changed, 198 insertions, 113 deletions
diff --git a/ibus/interface/Makefile.am b/ibus/interface/Makefile.am index 0e1f8b9..ffc019c 100644 --- a/ibus/interface/Makefile.am +++ b/ibus/interface/Makefile.am @@ -24,6 +24,7 @@ ibus_interface_PYTHON = \ ienginefactory.py \ iengine.py \ iibus.py \ + iinputcontext.py \ ipanel.py \ inotifications.py \ __init__.py \ diff --git a/ibus/interface/__init__.py b/ibus/interface/__init__.py index 5348395..90af265 100644 --- a/ibus/interface/__init__.py +++ b/ibus/interface/__init__.py @@ -20,6 +20,7 @@ # Boston, MA 02111-1307 USA from iibus import * +from iinputcontext import * from iengine import * from ienginefactory import * from ipanel import * diff --git a/ibus/interface/iconfig.py b/ibus/interface/iconfig.py index 171d17a..23954fa 100644 --- a/ibus/interface/iconfig.py +++ b/ibus/interface/iconfig.py @@ -23,22 +23,22 @@ __all__ = ("IConfig", ) import dbus.service from ibus.common import \ - IBUS_CONFIG_IFACE + IBUS_IFACE_CONFIG class IConfig(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_CONFIG_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_CONFIG, \ **args) # define signal decorator. signal = lambda **args: \ - dbus.service.signal(dbus_interface=IBUS_CONFIG_IFACE, \ + dbus.service.signal(dbus_interface=IBUS_IFACE_CONFIG, \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_CONFIG_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_CONFIG, \ async_callbacks=("reply_cb", "error_cb"), \ **args) diff --git a/ibus/interface/iengine.py b/ibus/interface/iengine.py index dfe285a..32ba998 100644 --- a/ibus/interface/iengine.py +++ b/ibus/interface/iengine.py @@ -23,27 +23,27 @@ __all__ = ("IEngine", ) import dbus.service from ibus.common import \ - IBUS_ENGINE_IFACE + IBUS_IFACE_ENGINE class IEngine(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_ENGINE_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_ENGINE, \ **args) # define signal decorator. signal = lambda **args: \ - dbus.service.signal(dbus_interface=IBUS_ENGINE_IFACE, \ + dbus.service.signal(dbus_interface=IBUS_IFACE_ENGINE, \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_ENGINE_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_ENGINE, \ async_callbacks=("reply_cb", "error_cb"), \ **args) - @method(in_signature="ubu", out_signature="b") - def ProcessKeyEvent(self, keyval, is_press, state): + @method(in_signature="uu", out_signature="b") + def ProcessKeyEvent(self, keyval, state): pass @method(in_signature="iiii") @@ -89,29 +89,30 @@ class IEngine(dbus.service.Object): @method() def Destroy(self): pass - @signal(signature="s") - def CommitString(self, text): pass + + @signal(signature="v") + def CommitText(self, text): pass @signal(signature="ubu") def ForwardKeyEvent(self, keyval, is_press, state): pass - @signal(signature="sa(uuuu)ib") - def UpdatePreedit(self, text, attrs, cursor_pos, visible): pass + @signal(signature="vub") + def UpdatePreeditText(self, text, cursor_pos, visible): pass @signal() - def ShowPreedit(self): pass + def ShowPreeditText(self): pass @signal() - def HidePreedit(self): pass + def HidePreeditText(self): pass - @signal(signature="sa(uuuu)b") - def UpdateAuxString(self, text, attrs, visible): pass + @signal(signature="vb") + def UpdateAuxiliaryText(self, text, visible): pass @signal() - def ShowAuxString(self): pass + def ShowAuxiliaryText(self): pass @signal() - def HideAuxString(self): pass + def HideAuxiliaryText(self): pass @signal(signature="vb") def UpdateLookupTable(self, lookup_table, visible): pass diff --git a/ibus/interface/ienginefactory.py b/ibus/interface/ienginefactory.py index 5670e81..5e93fd8 100644 --- a/ibus/interface/ienginefactory.py +++ b/ibus/interface/ienginefactory.py @@ -23,17 +23,17 @@ __all__ = ("IEngineFactory", ) import dbus.service from ibus.common import \ - IBUS_ENGINE_FACTORY_IFACE + IBUS_IFACE_ENGINE_FACTORY class IEngineFactory(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_ENGINE_FACTORY_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_ENGINE_FACTORY, \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_ENGINE_FACTORY_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_ENGINE_FACTORY, \ async_callbacks=("reply_cb", "error_cb"), \ **args) @@ -51,8 +51,8 @@ class IEngineFactory(dbus.service.Object): # Create an input context and return the id of the context. # If failed, it will return "" or None. - @method(out_signature="o") - def CreateEngine(self): pass + @method(in_signature="s", out_signature="o") + def CreateEngine(self, engine_name): pass # Destroy the engine @method() diff --git a/ibus/interface/iibus.py b/ibus/interface/iibus.py index cc5c351..848f798 100644 --- a/ibus/interface/iibus.py +++ b/ibus/interface/iibus.py @@ -23,100 +23,49 @@ __all__ = ("IIBus", ) import dbus.service from ibus.common import \ - IBUS_IFACE + IBUS_IFACE_IBUS class IIBus(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_IBUS, \ connection_keyword="dbusconn", \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_IBUS, \ connection_keyword="dbusconn", \ async_callbacks=("reply_cb", "error_cb"), \ **args) @method(out_signature="s") - def GetIBusAddress(self, dbusconn): pass + def GetAddress(self, dbusconn): pass # methods for ibus clients - @method(in_signature="s", out_signature="s") + @method(in_signature="s", out_signature="o") def CreateInputContext(self, client_name, dbusconn): pass - @method(in_signature="s") - def ReleaseInputContext(self, ic, dbusconn): pass - - @async_method(in_signature="subu", out_signature="b") - def ProcessKeyEvent(self, ic, keyval, is_press, state, dbusconn, reply_cb, error_cb): pass - - @method(in_signature="siiii") - def SetCursorLocation(self, ic, x, y, w, h, dbusconn): pass - - @method(in_signature="s") - def FocusIn(self, ic, dbusconn): pass - - @method(in_signature="s") - def FocusOut(self, ic, dbusconn): pass - - @method(in_signature="s") - def Reset(self, ic, dbusconn): pass - - @method(in_signature="s", out_signature="b") - def IsEnabled(self, ic, dbusconn): pass - - @method(in_signature="si") - def SetCapabilities(self, ic, caps, dbusconn): pass + @method(in_signature="s", out_signature="sb") + def GetInputContextStates(self, ic, dbusconn): pass # methods for ibus engine provide - @method(in_signature="ao") + @method(in_signature="av") def RegisterFactories(self, object_paths, dbusconn): pass - @method(in_signature="ao") + @method(in_signature="av") def UnregisterFactories(self, object_paths, dbusconn): pass # general methods - @method(out_signature="av") - def GetFactories(self, dbusconn): pass + @method(in_signature="av") + def RegisterComponent(self, components, dbusconn): pass - @method(in_signature="o", out_signature="av") - def GetFactoryInfo(self, factory_path, dbusconn): pass - - @method(in_signature="o") - def SetFactory(self, factory_path, dbusconn): pass - - @method(in_signature="s", out_signature="sb") - def GetInputContextStates(self, ic, dbusconn): pass - - @method(out_signature="a(sssssssb)") - def RegisterListEngines(self, dbusconn): pass - - @method() - def RegisterReloadEngines(self, dbusconn): pass - - @method(in_signature="ss") - def RegisterStartEngine(self, lang, name, dbusconn): pass - - @method(in_signature="ss") - def RegisterRestartEngine(self, lang, name, dbusconn): pass + @method(out_signature="av") + def ListEngines(self, dbusconn): pass - @method(in_signature="ss") - def RegisterStopEngine(self, lang, name, dbusconn): pass + @method(out_signature="av") + def ListActiveEngines(self, dbusconn): pass @async_method() def Kill(self, dbusconn, reply_cb, error_cb): pass - #sigals - def CommitString(self, ic, text): pass - - def UpdatePreedit(self, ic, text, attrs, cursor_pos, show): pass - - def Enabled(self, ic): pass - - def Disabled(self, ic): pass - - def ConfigValueChanged(self, key, value): pass - - def ConfigReload(self): pass diff --git a/ibus/interface/iinputcontext.py b/ibus/interface/iinputcontext.py new file mode 100644 index 0000000..e5cf129 --- /dev/null +++ b/ibus/interface/iinputcontext.py @@ -0,0 +1,133 @@ +# vim:set et sts=4 sw=4: +# +# ibus - The Input Bus +# +# Copyright (c) 2007-2008 Huang Peng <shawn.p.huang@gmail.com> +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this program; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place, Suite 330, +# Boston, MA 02111-1307 USA + +__all__ = ("IInputContext", ) + +import dbus.service +from ibus.common import \ + IBUS_IFACE_INPUT_CONTEXT + +class IInputContext(dbus.service.Object): + # define method decorator. + method = lambda **args: \ + dbus.service.method(dbus_interface=IBUS_IFACE_INPUT_CONTEXT, \ + **args) + + # define async method decorator. + async_method = lambda **args: \ + dbus.service.method(dbus_interface=IBUS_IFACE_INPUT_CONTEXT, \ + async_callbacks=("reply_cb", "error_cb"), \ + **args) + + # define signal decorator. + signal = lambda **args: \ + dbus.service.signal(dbus_interface=IBUS_IFACE_INPUT_CONTEXT, \ + **args) + + @async_method(in_signature="uu", out_signature="b") + def ProcessKeyEvent(self, keyval, state, reply_cb, error_cb): pass + + @method(in_signature="iiii") + def SetCursorLocation(self, x, y, w, h): pass + + @method() + def FocusIn(self): pass + + @method() + def FocusOut(self): pass + + @method() + def Reset(self): pass + + @method(out_signature="b") + def IsEnabled(self): pass + + @method(in_signature="u") + def SetCapabilities(self, caps): pass + + @method(out_signature="v") + def GetEngineDesc(self): pass + + @method(in_signature="s") + def SetEngine(self, engine_name): pass + + @method() + def Destroy(self): pass + + #sigals + @signal(signature="v") + def CommitText(self, text): pass + + @signal() + def Enabled(self): pass + + @signal() + def Disabled(self): pass + + @signal(signature="uu") + def ForwardKeyEvent(self, keyval, state): pass + + @signal(signature="vub") + def UpdatePreeditText(self, text, cursor_pos, visible): pass + + @signal() + def ShowPreeditText(self): pass + + @signal() + def HidePreeditText(self): pass + + @signal(signature="vb") + def UpdateAuxiliaryText(self, text, visible): pass + + @signal() + def ShowAuxiliaryText(self): pass + + @signal() + def HideAuxiliaryText(self): pass + + @signal(signature="vb") + def UpdateLookupTable(self, lookup_table, visible): pass + + @signal() + def ShowLookupTable(self): pass + + @signal() + def HideLookupTable(self): pass + + @signal() + def PageUpLookupTable(self): pass + + @signal() + def PageDownLookupTable(self): pass + + @signal() + def CursorUpLookupTable(self): pass + + @signal() + def CursorDownLookupTable(self): pass + + @signal(signature="v") + def RegisterProperties(self, props): pass + + @signal(signature="v") + def UpdateProperty(self, prop): pass + + diff --git a/ibus/interface/inotifications.py b/ibus/interface/inotifications.py index 7d667f2..74d4dcf 100644 --- a/ibus/interface/inotifications.py +++ b/ibus/interface/inotifications.py @@ -23,22 +23,22 @@ __all__ = ("INotifications", ) import dbus.service from ibus.common import \ - IBUS_NOTIFICATIONS_IFACE + IBUS_IFACE_NOTIFICATIONS class INotifications(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface = IBUS_NOTIFICATIONS_IFACE, \ + dbus.service.method(dbus_interface = IBUS_IFACE_NOTIFICATIONS, \ **args) # define signal decorator. signal = lambda **args: \ - dbus.service.signal(dbus_interface = IBUS_NOTIFICATIONS_IFACE, \ + dbus.service.signal(dbus_interface = IBUS_IFACE_NOTIFICATIONS, \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface = IBUS_NOTIFICATIONS_IFACE, \ + dbus.service.method(dbus_interface = IBUS_IFACE_NOTIFICATIONS, \ async_callbacks = ("reply_cb", "error_cb"), \ **args) diff --git a/ibus/interface/ipanel.py b/ibus/interface/ipanel.py index 83d6585..e5d174c 100644 --- a/ibus/interface/ipanel.py +++ b/ibus/interface/ipanel.py @@ -23,44 +23,44 @@ __all__ = ("IPanel", ) import dbus.service from ibus.common import \ - IBUS_PANEL_IFACE + IBUS_IFACE_PANEL class IPanel(dbus.service.Object): # define method decorator. method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_PANEL_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_PANEL, \ **args) # define signal decorator. signal = lambda **args: \ - dbus.service.signal(dbus_interface=IBUS_PANEL_IFACE, \ + dbus.service.signal(dbus_interface=IBUS_IFACE_PANEL, \ **args) # define async method decorator. async_method = lambda **args: \ - dbus.service.method(dbus_interface=IBUS_PANE_IFACE, \ + dbus.service.method(dbus_interface=IBUS_IFACE_PANEL, \ async_callbacks=("reply_cb", "error_cb"), \ **args) @method(in_signature="iiii") def SetCursorLocation(self, x, y, w, h): pass - @method(in_signature="svub") - def UpdatePreedit(self, text, attrs, cursor_pos, visible): pass + @method(in_signature="vub") + def UpdatePreeditText(self, text, cursor_pos, visible): pass @method() - def ShowPreedit(self): pass + def ShowPreeditText(self): pass @method() - def HidePreedit(self): pass + def HidePreeditText(self): pass - @method(in_signature="svb") - def UpdateAuxString(self, text, attrs, visible): pass + @method(in_signature="vb") + def UpdateAuxiliaryText(self, text, visible): pass @method() - def ShowAuxString(self): pass + def ShowAuxiliaryText(self): pass @method() - def HideAuxString(self): pass + def HideAuxiliaryText(self): pass @method(in_signature="vb") def UpdateLookupTable(self, lookup_table, visible): pass @@ -95,14 +95,14 @@ class IPanel(dbus.service.Object): @method() def HideLanguageBar(self): pass - @method(in_signature="s") + @method(in_signature="o") def FocusIn(self, ic): pass - @method(in_signature="s") + @method(in_signature="o") def FocusOut(self, ic): pass @method() - def StatesChanged(self): pass + def StateChanged(self): pass @method() def Reset(self): pass @@ -126,12 +126,12 @@ class IPanel(dbus.service.Object): @signal() def CursorDown(self): pass - @signal() + @signal(signature="si") def PropertyActivate(self, prop_name, prop_state): pass - @signal() + @signal(signature="s") def PropertyShow(self, prop_name): pass - @signal() + @signal(signature="s") def PropertyHide(self, prop_name): pass |