Files
gtk3/modules/input
Daniel Elstner 47aae53285 Remove the namespace prefix from functions defined locally only. Clean up
* modules/input/gtkimcontextmultipress.[ch]: Remove the namespace
prefix from functions defined locally only.  Clean up the code and
change indentation to match the GTK+ coding style.
(_GtkImContextMultipress::key_sequences): Replace array of pointers
by GHashTable.  Adapt the implementation accordingly.
(passthrough_enabled_for_window): Remove.  The passthrough hack is
no longer necessary thanks to the recently introduced "im-module"
property of GtkEntry and GtkTextView.
(load_config): Rework to implement an improved configuration file
format.  Just fetch all keys of the group instead of expecting the
keys to be named a certain way.  This also allows interpreting the
config key itself as the GDK key name to bind the character sequence
to, thereby making it independent of the sequence itself.

* modules/input/im-multipress.conf: New example configuration using
the new syntax.  The example sequences are now bound to the numeric
keypad and imitate the behavior of a standard mobile phone.

svn path=/trunk/; revision=22125
2009-01-16 15:02:06 +00:00
..
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00
2008-07-01 22:57:50 +00:00

*** Introduction

This is a GTK+ input method which allows text entry via the multi-press method, 
as on a mobile phone. When this has been installed, you can choose the "Multipress" 
menu item from the "Input Methods" submenu when right-clicking in a GTK+ text entry 
area. 

For instance:
- press a to get a, then wait 1 second for the character to be accepted.
or
- press dd to get e, then wait 1 second for the character to be accepted.
or
- press ad to get ad, then wait 1 second for the d character to be accepted.


*** Configuration

Edit the im-multipress.conf to define the keypresses needed to input particular characters.
This file is in GKeyFile-format, and contains explanatory comments.


*** Per-widget deactivation

When the input method is active (either by choosing it from the context menu, or 
by defining the default language as "*" in immultipress.c), the multipress 
behaviour can be turned off for individual widgets, like so:

  g_object_set_data(G_OBJECT(yourwidget), "multipress-passthrough-flag", GINT_TO_POINTER(1));


For a C++ gtkmm project, you could make a convenience function to do this. For instance:

  void multipress_deactivate(Gtk::Widget& widget)
  {
    static const Glib::Quark quark ("multipress-passthrough-flag");
    widget.set_data(quark, GINT_TO_POINTER(1));
  }

*** Contact

Please contact Openismus for assistance with this input method. You can email murrayc@openismus.com

Copyright 2006-2007, Openismus GmbH