pax_global_header00006660000000000000000000000064147673041100014515gustar00rootroot0000000000000052 comment=36ec7eb7f8b9a5d2c1a78bc1b66ae4ca232a5edb ibus-input-pad-1.5.0/000077500000000000000000000000001476730411000143615ustar00rootroot00000000000000ibus-input-pad-1.5.0/.gitignore000066400000000000000000000000001476730411000163370ustar00rootroot00000000000000ibus-input-pad-1.5.0/AUTHORS000066400000000000000000000000721476730411000154300ustar00rootroot00000000000000Takao Fujiwara irc: fujiwarat ibus-input-pad-1.5.0/COPYING000066400000000000000000000431031476730411000154150ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program 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 General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ibus-input-pad-1.5.0/ChangeLog000066400000000000000000000000001476730411000161210ustar00rootroot00000000000000ibus-input-pad-1.5.0/Makefile.am000066400000000000000000000031701476730411000164160ustar00rootroot00000000000000# vim:set noet ts=4: # # ibus-input-pad - Input pad for IBus # # Copyright (c) 2010-2025 Takao Fujiwara # Copyright (c) 2010-2025 Red Hat, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program 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 General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. SUBDIRS = \ po \ setup \ engine \ m4 \ $(NULL) ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = \ ibus-input-pad.spec.in \ $(NULL) noinst_DIST = \ $(NULL) dist-hook: if test -d .git ; then \ git log --name-status --date=iso > $(distdir)/ChangeLog ; \ fi rpm: dist @PACKAGE_NAME@.spec rpmbuild -bb \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`" \ --define "_srcrpmdir `pwd`" \ --define "_rpmdir `pwd`" \ --define "_specdir `pwd`" \ @PACKAGE_NAME@.spec srpm: dist @PACKAGE_NAME@.spec rpmbuild -bs \ --define "_sourcedir `pwd`" \ --define "_builddir `pwd`" \ --define "_srcrpmdir `pwd`" \ --define "_rpmdir `pwd`" \ --define "_specdir `pwd`" \ @PACKAGE_NAME@.spec clean-rpm: $(RM) -r "`uname -i`" clean-local: clean-rpm ibus-input-pad-1.5.0/NEWS000066400000000000000000000000001476730411000150460ustar00rootroot00000000000000ibus-input-pad-1.5.0/README000066400000000000000000000003631476730411000152430ustar00rootroot00000000000000ibus-input-pad It is Input Pad for IBus Home Page: https://github.com/fujiwarat/input-pad/wiki The ibus-input-pad version 1.4.x requires ibus 1.4(1.3.99.x) or later. If you use old ibus versions(1.2, 1.3), please use ibus-input-pad 0.1.x . ibus-input-pad-1.5.0/TODO000066400000000000000000000000261476730411000150470ustar00rootroot00000000000000config to languagebar ibus-input-pad-1.5.0/autogen.sh000077500000000000000000000017721476730411000163710ustar00rootroot00000000000000#!/bin/sh # Run this to generate all the initial makefiles, etc. test -n "$srcdir" || srcdir=$(dirname "$0") test -n "$srcdir" || srcdir=. olddir=$(pwd) cd "$srcdir" (test -f configure.ac) || { echo "*** ERROR: Directory '$srcdir' does not look like the top-level project directory ***" exit 1 } # shellcheck disable=SC2016 PKG_NAME=$(autoconf --trace 'AC_INIT:$1' configure.ac) if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then echo "*** WARNING: I am going to run 'configure' with no arguments." >&2 echo "*** If you wish to pass any to it, please specify them on the" >&2 echo "*** '$0' command line." >&2 echo "" >&2 fi autoreconf --verbose --force --install || exit 1 cd "$olddir" if [ "$NOCONFIGURE" = "" ]; then $srcdir/configure "$@" || exit 1 if [ "$1" = "--help" ]; then exit 0 else echo "Now type 'make' to compile $PKG_NAME" || exit 1 fi else echo "Skipping configure process." fi ibus-input-pad-1.5.0/configure.ac000066400000000000000000000064301476730411000166520ustar00rootroot00000000000000# vim:set et ts=4: # # ibus-input-pad - Input pad for IBus # # Copyright (c) 2010-2025 Takao Fujiwara # Copyright (c) 2010-2025 Red Hat, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU 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 General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. dnl - if not 1, append datestamp to the version number. m4_define([ibus_released], [1]) m4_define([ibus_major_version], [1]) m4_define([ibus_minor_version], [5]) m4_define([ibus_micro_version], [0]) m4_define([pad_abi_current], [1]) m4_define(ibus_maybe_datestamp, m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi])) m4_define([ibus_version], ibus_major_version.ibus_minor_version.ibus_micro_version[]ibus_maybe_datestamp) AC_INIT([ibus-input-pad], [ibus_version], [http://code.google.com/p/input-pad/issues/entry],[ibus-input-pad]) AM_INIT_AUTOMAKE([1.10]) AC_GNU_SOURCE AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) dnl - VERSION libinput_pad_VERSION="ibus_major_version.pad_abi_current" AC_SUBST(libinput_pad_VERSION) AC_MSG_NOTICE([$PACKAGE sub version $libinput_pad_VERSION]) dnl - define PACKAGE_VERSION_* variables AM_SANITY_CHECK AM_MAINTAINER_MODE(enable) AC_DISABLE_STATIC AC_PROG_CC AM_PROG_CC_C_O AC_PROG_CXX AC_HEADER_STDC LT_INIT dnl - For dislpay Date m4_define(ibus_datedisplay, m4_esyscmd(date '+%a %b %d %Y' | tr -d '\n\r')) DATE_DISPLAY="ibus_datedisplay" AC_SUBST(DATE_DISPLAY) dnl - pkgconfig AM_PATH_GLIB_2_0(2.37.0) PKG_CHECK_MODULES(GLIB2, [ glib-2.0 >= 2.37 ]) PKG_CHECK_MODULES(GTK3, [ gtk+-3.0 >= 3.10 ]) PKG_CHECK_MODULES(IBUS, ibus-1.0 >= 1.5.3 ) PKG_CHECK_MODULES(INPUT_PAD, [ input-pad >= 1.0.99 ]) dnl - set ibus-input-pad layout AC_ARG_WITH(layout, [AC_HELP_STRING([--with-layout=LAYOUT], [Define the layout. the default is 'default'. You could set 'us'.])], [LAYOUT="$withval"], [LAYOUT="default"]) if test x"$LAYOUT" = x; then LAYOUT="default" fi LAYOUT_XML="${LAYOUT}" AC_SUBST(LAYOUT_XML) dnl - define GETTEXT_* variables GETTEXT_PACKAGE=ibus-input-pad AC_SUBST(GETTEXT_PACKAGE) AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package]) AM_GNU_GETTEXT_VERSION([0.19.8]) AM_GNU_GETTEXT([external]) DEFINE_IBUS_LOCALEDIR AC_DEFINE_UNQUOTED(LOCALEDIR, "$ibus_localedir", [Define the location where the catalogs will be installed]) dnl - OUTPUT files AC_CONFIG_FILES([ po/Makefile.in engine/Makefile m4/Makefile setup/Makefile Makefile ibus-input-pad.spec ]) AC_OUTPUT echo " ibus-input-pad version ibus_version libinput_pad version: $libinput_pad_VERSION engine layout: $LAYOUT " ibus-input-pad-1.5.0/debian/000077500000000000000000000000001476730411000156035ustar00rootroot00000000000000ibus-input-pad-1.5.0/debian/README.source000066400000000000000000000003171476730411000177630ustar00rootroot00000000000000ibus-input-pad for Debian ------------------------- ibus-input-pad-1.5.0/debian/changelog000066400000000000000000000023461476730411000174620ustar00rootroot00000000000000ibus-input-pad (0.1.4-1ppa1~maverick1) maverick; urgency=low * New upstream release. * debian/control: - bump standards version to 3.9.1. - replace libinput-pad0 with libinput-pad1. -- Takao Fujiwara Fri, 17 Dec 2010 14:06:54 +0900 ibus-input-pad (0.1.3-1ppa1~lucid) lucid; urgency=low * New upstream release. -- Takao Fujiwara Mon, 26 Jul 2010 11:43:10 +0900 ibus-input-pad (0.1.2-2ppa3~lucid) lucid; urgency=low * Fixed dependency failures. - debian/control: Added libxklavier-dev dependency -- Takao Fujiwara Tue, 13 Jul 2010 16:23:52 +0900 ibus-input-pad (0.1.2-2ppa2~lucid) lucid; urgency=low * Fixed dependency failures. - debian/control: Added libxml2-dev dependency -- Takao Fujiwara Tue, 13 Jul 2010 11:02:52 +0900 ibus-input-pad (0.1.2-2ppa1~lucid) lucid; urgency=low * Fixed dependency failures. - debian/control: Added libibus-dev & ibus dependency -- Takao Fujiwara Tue, 13 Jul 2010 10:02:52 +0900 ibus-input-pad (0.1.2-1) lucid; urgency=low * Initial release -- Takao Fujiwara Fri, 09 Jul 2010 16:18:01 +0900 ibus-input-pad-1.5.0/debian/compat000066400000000000000000000000021476730411000170010ustar00rootroot000000000000007 ibus-input-pad-1.5.0/debian/control000066400000000000000000000014331476730411000172070ustar00rootroot00000000000000Source: ibus-input-pad Section: utils Priority: optional Maintainer: Ubuntu Developers Uploaders: Takao Fujiwara Build-Depends: autoconf, automake, autotools-dev, intltool (>= 0.40.0), libgtk2.0-dev, libibus-dev, libinput-pad-dev, libxkbfile-dev, libxklavier-dev (>= 4.0), libxml2-dev (>= 2.0), debhelper (>= 7.0.50) Standards-Version: 3.9.1 Homepage: http://code.google.com/p/input-pad/ Package: ibus-input-pad Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends}, ibus, libinput-pad1 Description: Input Pad for IBus The input pad engine for IBus platform. It provides the interface to use input-pad with IBus. . This package contains the IBus engine. ibus-input-pad-1.5.0/debian/copyright000066400000000000000000000025511476730411000175410ustar00rootroot00000000000000This work was packaged for Debian by: Takao Fujiwara on Fri, 09 Jul 2010 16:18:01 +0900 It was downloaded from http://code.google.com/p/input-pad/downloads/ Upstream Author(s): Takao Fujiwara Copyright: Copyright (C) 2010 Takao Fujiwara License: This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program 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 General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. On Debian systems, the complete text of the GNU General Public License version 2 can be found in `/usr/share/common-licenses/GPL-2'. The Debian packaging is: Copyright (C) 2010 Takao Fujiwara and is licensed under the GPL version 2, see `/usr/share/common-licenses/GPL-2'. ibus-input-pad-1.5.0/debian/docs000066400000000000000000000000241476730411000164520ustar00rootroot00000000000000AUTHORS NEWS README ibus-input-pad-1.5.0/debian/ibus-input-pad.install000066400000000000000000000002521476730411000220330ustar00rootroot00000000000000usr/lib/ibus-input-pad/ibus-engine-input-pad usr/lib/ibus-input-pad/ibus-setup-input-pad usr/share/ibus/component/input-pad.xml usr/share/ibus-input-pad usr/share/locale ibus-input-pad-1.5.0/debian/rules000077500000000000000000000007461476730411000166720ustar00rootroot00000000000000#!/usr/bin/make -f # -*- makefile -*- # # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 build: dh $@ --before auto_configure dh_auto_configure -- \ --enable-static dh $@ --before auto_test cd po; make ibus-input-pad.pot # https://bugs.launchpad.net/ubuntu/+source/ibus/+bug/188690 dh $@ --after auto_test override_dh_auto_install: $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp override_dh_install: dh_install --list-missing --sourcedir=debian/tmp %: dh $@ ibus-input-pad-1.5.0/debian/source/000077500000000000000000000000001476730411000171035ustar00rootroot00000000000000ibus-input-pad-1.5.0/debian/source/format000066400000000000000000000000041476730411000203100ustar00rootroot000000000000001.0 ibus-input-pad-1.5.0/debian/watch000066400000000000000000000002061476730411000166320ustar00rootroot00000000000000version=3 http://code.google.com/p/input-pad/downloads/list \ http://input-pad.googlecode.com/files/ibus-input-pad-([0-9].*)\.tar\.gz ibus-input-pad-1.5.0/engine/000077500000000000000000000000001476730411000156265ustar00rootroot00000000000000ibus-input-pad-1.5.0/engine/Makefile.am000066400000000000000000000053031476730411000176630ustar00rootroot00000000000000# vim:set noet ts=4: # # ibus-input-pad - Input pad for IBus # # Copyright (c) 2010-2014 Takao Fujiwara # Copyright (c) 2010-2014 Red Hat, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program 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 General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. noinst_DIST = \ $(NULL) AM_CPPFLAGS = \ -I$(top_srcdir) \ -I$(top_srcdir)/setup \ -DDATAROOTDIR=\""$(datarootdir)"\" \ -DLIBEXECDIR=\""$(libexecdir)"\" \ $(NULL) libexec_PROGRAMS = ibus-engine-input-pad ibus_engine_input_pad_SOURCES = \ engine.c \ engine.h \ i18n.h \ main.c \ $(NULL) ibus_engine_input_pad_CFLAGS = \ $(GLIB2_CFLAGS) \ $(IBUS_CFLAGS) \ $(INPUT_PAD_CFLAGS) \ $(NULL) ibus_engine_input_pad_LDFLAGS = \ $(NULL) ibus_engine_input_pad_LDADD = \ $(top_builddir)/setup/libiconfig.la \ $(GLIB2_LIBS) \ $(IBUS_LIBS) \ $(INPUT_PAD_LIBS) \ $(NULL) component_in_files = \ input-pad.xml.in \ $(NULL) component_DATA = $(component_in_files:.xml.in=.xml) componentdir = $(datarootdir)/ibus/component %.xml : %.xml.in @sed -e "s|\@GETTEXT_PACKAGE\@|$(GETTEXT_PACKAGE)|g" \ -e "s|\@VERSION\@|$(VERSION)|g" \ -e "s|\@datarootdir\@|$(datarootdir)|g" \ -e "s|\@libexecdir\@|$(libexecdir)|g" \ -e "s|\@LAYOUT_XML\@|$(LAYOUT_XML)|g" \ $< > $@ EXTRA_DIST = \ $(component_in_files) \ $(NULL) CLEANFILES = \ $(component_DATA) \ $(NULL) ibus-input-pad-1.5.0/engine/engine.c000066400000000000000000000430051476730411000172410ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2014 Takao Fujiwara * Copyright (C) 2010-2014 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include /* exit */ #include #include #include "engine.h" #include "i18n.h" #include "iconfig-gtk.h" typedef struct _IBusInputPadEngine IBusInputPadEngine; typedef struct _IBusInputPadEngineClass IBusInputPadEngineClass; struct _IBusInputPadEngine { IBusEngineSimple parent; /* members */ IBusPropList *prop_list; GSList *str_list; }; struct _IBusInputPadEngineClass { IBusEngineSimpleClass parent; }; static void on_window_activated (gpointer window_data, gpointer data); static void set_keyboard_only_kbdui (void *window); static void set_default_kbdui (void *window); static void show_keyboard_only_table (void *window); static void show_default_table (void *window); static GObject* ibus_input_pad_engine_constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params); static void ibus_input_pad_engine_destroy (IBusObject *object); static void ibus_input_pad_engine_commit_str (IBusEngine *engine, const gchar *str); static gboolean ibus_input_pad_engine_process_key_event (IBusEngine *engine, guint keyval, guint keycode, guint modifiers); static void ibus_input_pad_engine_enable (IBusEngine *engine); static void ibus_input_pad_engine_disable (IBusEngine *engine); static void ibus_input_pad_engine_focus_in (IBusEngine *engine); static void ibus_input_pad_engine_focus_out (IBusEngine *engine); static void ibus_input_pad_engine_property_activate (IBusEngine *engine, const char *prop_name, guint prop_state); static IBusEngineClass *parent_class = NULL; static void *input_pad_window; static IBusInputPadConfig *config = NULL; static unsigned int on_window_button_pressed (gpointer window_data, gchar *str, guint type, guint keysym, guint keycode, guint state, gpointer data) { IBusInputPadEngine *engine = (IBusInputPadEngine *) data; if (str == NULL || ((InputPadTableType) type != INPUT_PAD_TABLE_TYPE_CHARS && (InputPadTableType) type != INPUT_PAD_TABLE_TYPE_STRINGS && (InputPadTableType) type != INPUT_PAD_TABLE_TYPE_COMMANDS)) { return FALSE; } if (keysym > 0) { return FALSE; } ibus_input_pad_engine_commit_str (IBUS_ENGINE (engine), str); return TRUE; } static void on_window_destroy (gpointer window_data, gpointer data) { IBusInputPadEngine *engine = (IBusInputPadEngine *) data; void *gtk_window = input_pad_window_get_window (input_pad_window); if (gtk_window != NULL) { g_signal_handlers_disconnect_by_func (G_OBJECT (gtk_window), G_CALLBACK (on_window_button_pressed), (gpointer) engine); g_signal_handlers_disconnect_by_func (G_OBJECT (gtk_window), G_CALLBACK (on_window_destroy), (gpointer) engine); } input_pad_window_activate (input_pad_window); } static void on_window_activated (gpointer window_data, gpointer data) { IBusInputPadEngine *engine = IBUS_INPUT_PAD_ENGINE (data); void *gtk_window = input_pad_window_get_window (input_pad_window); g_signal_connect (G_OBJECT (gtk_window), "destroy", G_CALLBACK (on_window_destroy), (gpointer) engine); g_signal_connect (G_OBJECT (gtk_window), "button-pressed", G_CALLBACK (on_window_button_pressed), (gpointer) engine); } static void ibus_input_pad_engine_commit_str (IBusEngine *engine, const gchar *str) { IBusText *text; text = ibus_text_new_from_string (str); ibus_engine_commit_text (engine, text); } static void ibus_input_pad_engine_class_init (IBusInputPadEngineClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); IBusObjectClass *ibus_object_class = IBUS_OBJECT_CLASS (klass); IBusEngineClass *engine_class = IBUS_ENGINE_CLASS (klass); parent_class = (IBusEngineClass *) g_type_class_peek_parent (klass); object_class->constructor = ibus_input_pad_engine_constructor; ibus_object_class->destroy = (IBusObjectDestroyFunc) ibus_input_pad_engine_destroy; engine_class->process_key_event = ibus_input_pad_engine_process_key_event; engine_class->enable = ibus_input_pad_engine_enable; engine_class->disable = ibus_input_pad_engine_disable; engine_class->focus_in = ibus_input_pad_engine_focus_in; engine_class->focus_out = ibus_input_pad_engine_focus_out; engine_class->property_activate = ibus_input_pad_engine_property_activate; } static void ibus_input_pad_engine_init (IBusInputPadEngine *engine) { IBusText *label; IBusText *tooltip; IBusProperty *input_pad_prop; IBusProperty *prop; IBusPropList *prop_list; void *gtk_window; engine->prop_list = ibus_prop_list_new (); g_object_ref_sink (engine->prop_list); label = ibus_text_new_from_string (_("Launch Input Pad")); tooltip = ibus_text_new_from_string (_("Launch Input Pad")); input_pad_prop = ibus_property_new ("ibus-shared-menu", PROP_TYPE_MENU, label, "ibus-setup", tooltip, TRUE, TRUE, PROP_STATE_UNCHECKED, NULL); ibus_prop_list_append (engine->prop_list, input_pad_prop); prop_list = ibus_prop_list_new (); label = ibus_text_new_from_string (_("Show Input Pad")); tooltip = ibus_text_new_from_string (_("Show Input Pad")); prop = ibus_property_new ("show-input-pad", PROP_TYPE_NORMAL, label, DATAROOTDIR "/pixmaps/input-pad.png", tooltip, TRUE, TRUE, PROP_STATE_UNCHECKED, NULL); ibus_prop_list_append (prop_list, prop); label = ibus_text_new_from_string (_("Show Input Pad (Keyboard Only)")); tooltip = ibus_text_new_from_string (_("Show Input Pad (Keyboard Only)")); prop = ibus_property_new ("show-input-pad-layout-only", PROP_TYPE_NORMAL, label, DATAROOTDIR "/pixmaps/input-pad.png", tooltip, TRUE, TRUE, PROP_STATE_UNCHECKED, NULL); ibus_prop_list_append (prop_list, prop); ibus_property_set_sub_props (input_pad_prop, prop_list); label = ibus_text_new_from_string (_("Setup Input Pad")); tooltip = ibus_text_new_from_string (_("Configure Input Pad")); prop = ibus_property_new ("setup-input-pad", PROP_TYPE_NORMAL, label, "preferences-desktop", tooltip, TRUE, TRUE, PROP_STATE_UNCHECKED, NULL); ibus_prop_list_append (engine->prop_list, prop); gtk_window = input_pad_window_get_window (input_pad_window); if (gtk_window != NULL) { g_signal_connect (G_OBJECT (gtk_window), "destroy", G_CALLBACK (on_window_destroy), (gpointer) engine); g_signal_connect (G_OBJECT (gtk_window), "button-pressed", G_CALLBACK (on_window_button_pressed), (gpointer) engine); } g_signal_connect (G_OBJECT (input_pad_window), "activated", G_CALLBACK (on_window_activated), (gpointer) engine); } static GObject* ibus_input_pad_engine_constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params) { IBusInputPadEngine *engine; engine = (IBusInputPadEngine *) G_OBJECT_CLASS (parent_class)->constructor (type, n_construct_params, construct_params); return (GObject *) engine; } static void free_str_list (GSList *str_list) { GSList *head = str_list; gchar *str; g_return_if_fail (str_list != NULL); while (str_list) { str = (gchar *) str_list->data; g_free (str); str_list->data = NULL; str_list = str_list->next; } g_slist_free (head); } static void ibus_input_pad_engine_destroy (IBusObject *object) { IBusInputPadEngine *engine = (IBusInputPadEngine *) object; if (engine->prop_list) { g_object_unref (engine->prop_list); engine->prop_list = NULL; } if (engine->str_list) { free_str_list (engine->str_list); engine->str_list = NULL; } IBUS_OBJECT_CLASS (parent_class)->destroy (object); } static gboolean ibus_input_pad_engine_process_key_event (IBusEngine *engine, guint keyval, guint keycode, guint modifiers) { return parent_class->process_key_event (engine, keyval, keycode, modifiers); } static void ibus_input_pad_engine_enable (IBusEngine *engine) { parent_class->enable (engine); input_pad_window_set_char_button_sensitive (input_pad_window, TRUE); } static void ibus_input_pad_engine_disable (IBusEngine *engine) { parent_class->disable (engine); input_pad_window_set_char_button_sensitive (input_pad_window, FALSE); } static void ibus_input_pad_engine_focus_in (IBusEngine *engine) { IBusInputPadEngine *input_pad = (IBusInputPadEngine *) engine; ibus_engine_register_properties (engine, input_pad->prop_list); parent_class->focus_in (engine); input_pad_window_reorder_button_pressed (input_pad_window); } static void ibus_input_pad_engine_focus_out (IBusEngine *engine) { parent_class->focus_out (engine); } #if 0 static void update_show_input_pad_label (IBusInputPadEngine *engine, gboolean is_shown) { IBusProperty *input_pad_prop = ibus_prop_list_get (engine->prop_list, 0); IBusProperty *prop; IBusPropList *props; IBusText *label; g_return_if_fail (input_pad_prop != NULL); props = input_pad_prop->sub_props; g_return_if_fail (props != NULL); prop = ibus_prop_list_get (props, 0); g_return_if_fail (prop && prop->label && prop->label->text); if (is_shown) { label = ibus_text_new_from_string (_("Hide Input Pad")); } else { label = ibus_text_new_from_string (_("Show Input Pad")); } ibus_property_set_label (prop, label); ibus_property_set_tooltip (prop, label); ibus_engine_update_property ((IBusEngine*) engine, prop); } #endif static void set_keyboard_only_kbdui (void *window) { const gchar *section = "engine/input-pad/keyboard_only_table"; const gchar *name = NULL; gchar *str = NULL; name = "keyboard_theme"; ibus_input_pad_config_get_str (config, section, name, &str); if (str && g_strcmp0 (str, "default") != 0) { input_pad_window_set_kbdui_name (window, str); } else { input_pad_window_set_kbdui_name (window, NULL); } g_free (str); } static void set_default_kbdui (void *window) { const gchar *section = "engine/input-pad/default_table"; const gchar *name = NULL; gchar *str = NULL; name = "keyboard_theme"; ibus_input_pad_config_get_str (config, section, name, &str); if (str && g_strcmp0 (str, "default") != 0) { input_pad_window_set_kbdui_name (window, str); } else { input_pad_window_set_kbdui_name (window, NULL); } g_free (str); } static void show_keyboard_only_table (void *window) { input_pad_window_set_show_table (window, INPUT_PAD_WINDOW_SHOW_TABLE_TYPE_NOTHING); } static void show_default_table (void *window) { const gchar *section = "engine/input-pad/default_table"; const gchar *name = NULL; int n; name = "char_table_combo_box"; ibus_input_pad_config_get_int (config, section, name, &n); input_pad_window_set_show_table (window, n); name = "layout_table_combo_box"; ibus_input_pad_config_get_int (config, section, name, &n); input_pad_window_set_show_layout (window, n); } static void ibus_input_pad_engine_property_activate (IBusEngine *engine, const char *prop_name, guint prop_state) { gboolean is_shown = FALSE; GError *error = NULL; gchar *argv[2] = { NULL, }; gchar *path; const gchar *libexecdir; g_return_if_fail (prop_name != NULL); g_return_if_fail (engine != NULL); if (!g_strcmp0 (prop_name, "show-input-pad") || !g_strcmp0 (prop_name, "show-input-pad-layout-only")) { void *window = input_pad_window; if (input_pad_window_get_window (window) == NULL) return; if (!g_strcmp0 (prop_name, "show-input-pad-layout-only")) { set_keyboard_only_kbdui (window); } else { set_default_kbdui (window); } ibus_input_pad_engine_focus_in (engine); // TODO: Update menu item label? /* is_shown = input_pad_window_get_visible (window); */ if (is_shown) { input_pad_window_hide (window); } else { input_pad_window_show (window); if (!g_strcmp0 (prop_name, "show-input-pad-layout-only")) { show_keyboard_only_table (window); } else { show_default_table (window); } } #if 0 update_show_input_pad_label ((IBusInputPadEngine *) engine, is_shown); #endif } if (!g_strcmp0 (prop_name, "setup-input-pad")) { libexecdir = g_getenv ("LIBEXECDIR"); if (libexecdir == NULL) { libexecdir = LIBEXECDIR; } g_return_if_fail (libexecdir != NULL); path = g_build_filename (libexecdir, "ibus-setup-input-pad", NULL); argv[0] = path; argv[1] = NULL; g_spawn_async (NULL, argv, NULL, 0, NULL, NULL, NULL, &error); g_free (path); } } GType ibus_input_pad_engine_get_type (void) { static GType type = 0; static const GTypeInfo type_info = { sizeof (IBusInputPadEngineClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) ibus_input_pad_engine_class_init, NULL, NULL, sizeof (IBusInputPadEngine), 0, (GInstanceInitFunc) ibus_input_pad_engine_init, }; if (type == 0) { type = g_type_register_static (IBUS_TYPE_ENGINE_SIMPLE, "IBusInputPadEngine", &type_info, (GTypeFlags) 0); } return type; } void ibus_input_pad_init (int *argc, char ***argv, IBusBus *bus) { int retval; gboolean do_exit = FALSE; config = ibus_bus_get_input_pad_config (bus); if (config) { g_object_ref_sink (config); } retval = input_pad_window_init (argc, argv, 0, &do_exit); if (do_exit) { g_object_unref (config); config = NULL; exit (retval); } input_pad_window = input_pad_window_new (); input_pad_window_hide (input_pad_window); } int ibus_input_pad_main (void) { return input_pad_window_main (input_pad_window); } void ibus_input_pad_finit (void) { g_object_unref (config); config = NULL; } ibus-input-pad-1.5.0/engine/engine.h000066400000000000000000000033251476730411000172470ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2011 Takao Fujiwara * Copyright (C) 2010-2011 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef __IBUS_INPUT_PAD_ENGINE_H__ #define __IBUS_INPUT_PAD_ENGINE_H__ #include #define IBUS_TYPE_INPUT_PAD_ENGINE \ (ibus_input_pad_engine_get_type ()) #define IBUS_INPUT_PAD_ENGINE(o) \ (G_TYPE_CHECK_INSTANCE_CAST ((o), \ IBUS_TYPE_INPUT_PAD_ENGINE, \ IBusInputPadEngine)) #define IBUS_IS_INPUT_PAD_ENGINE(o) \ (G_TYPE_CHECK_INSTANCE_TYPE ((o), \ IBUS_TYPE_INPUT_PAD_ENGINE)) GType ibus_input_pad_engine_get_type (void); void ibus_input_pad_init (int *argc, char ***argv, IBusBus *bus); int ibus_input_pad_main (void); void ibus_input_pad_finit (void); #endif ibus-input-pad-1.5.0/engine/i18n.h000066400000000000000000000023661476730411000165650ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2011 Takao Fujiwara * Copyright (C) 2010-2011 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef __INPUT_PAD_I18N_H__ #define __INPUT_PAD_I18N_H__ #ifdef ENABLE_NLS #include #ifndef GETTEXT_PACKAGE #error Need to inlcude config.h #endif #define _(str) ((char *) g_dgettext (GETTEXT_PACKAGE, (str))) #define N_(str) (str) #else #define _(str) (str) #define N_(str) (str) #endif #define I_(str) g_intern_static_string (str) #endif ibus-input-pad-1.5.0/engine/input-pad.xml.in000066400000000000000000000014721476730411000206620ustar00rootroot00000000000000 org.freedesktop.IBus.InputPad Input Pad Component @libexecdir@/ibus-engine-input-pad --ibus @VERSION@ Takao Fujiwara <takao.fujiwara1@gmail.com> GPL http://code.google.com/p/input-pad @GETTEXT_PACKAGE@ input-pad other GPL Takao Fujiwara <takao.fujiwara1@gmail.com> @datarootdir@/pixmaps/input-pad.png @LAYOUT_XML@ Input Pad Input Pad 0 ibus-input-pad-1.5.0/engine/main.c000066400000000000000000000063401476730411000167210ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2025 Takao Fujiwara * Copyright (C) 2010-2025 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include "i18n.h" #include "engine.h" static IBusBus *bus = NULL; static IBusFactory *factory = NULL; static void ibus_disconnected_cb (IBusBus *bus, gpointer user_data) { g_debug ("bus disconnected"); ibus_quit (); } static int start_component (int argc, char **argv) { IBusComponent *component; int retval; ibus_init (); bus = ibus_bus_new (); g_signal_connect (bus, "disconnected", G_CALLBACK (ibus_disconnected_cb), NULL); ibus_input_pad_init (&argc, &argv, bus); component = ibus_component_new ("org.freedesktop.IBus.InputPad", N_("Input Pad"), "0.1.0", "GPL", "Takao Fujiwara ", "http://code.google.com/p/input-pad/", "", "ibus-input-pad"); ibus_component_add_engine (component, ibus_engine_desc_new ("input-pad", N_("Input Pad"), N_("Input Pad"), "xx", "GPL", "Takao Fujiwara ", DATAROOTDIR "/pixmaps/input-pad.png", "us")); factory = ibus_factory_new (ibus_bus_get_connection (bus)); ibus_factory_add_engine (factory, "input-pad", IBUS_TYPE_INPUT_PAD_ENGINE); //if (ibus) { if (TRUE) { ibus_bus_request_name (bus, "org.freedesktop.IBus.InputPad", 0); } else { ibus_bus_register_component (bus, component); } g_object_unref (component); retval = ibus_input_pad_main (); ibus_input_pad_finit (); return retval; } int main (int argc, char **argv) { setlocale (LC_ALL, ""); bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR); bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain(GETTEXT_PACKAGE); return start_component (argc, argv); } ibus-input-pad-1.5.0/ibus-input-pad.spec.in000066400000000000000000000025111476730411000205020ustar00rootroot00000000000000%define sub_version @libinput_pad_VERSION@ %define gtk3_version 3.10 %define ibus_version 1.5.3 %define input_pad_version 1.0.99 Name: @PACKAGE_NAME@ Version: @PACKAGE_VERSION@ Release: 1%{?dist} Summary: Input Pad for IBus License: GPLv2+ Group: System Environment/Libraries URL: http://code.google.com/p/input-pad/ Source0: http://input-pad.googlecode.com/files/%{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gettext-devel BuildRequires: gtk3-devel >= %gtk3_version BuildRequires: libtool BuildRequires: ibus-devel >= %ibus_version BuildRequires: input-pad-devel >= %input_pad_version Requires: ibus %description The input pad engine for IBus platform. %prep %setup -q %build %configure --disable-static make %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p' %find_lang %{name} %clean rm -rf $RPM_BUILD_ROOT %files -f %{name}.lang %defattr(-,root,root,-) %doc AUTHORS COPYING README %{_libexecdir}/ibus-engine-input-pad %{_libexecdir}/ibus-setup-input-pad %{_datadir}/ibus/component/* %changelog * @DATE_DISPLAY@ Takao Fujiwara - @PACKAGE_VERSION@-1 - Current version. ibus-input-pad-1.5.0/m4/000077500000000000000000000000001476730411000147015ustar00rootroot00000000000000ibus-input-pad-1.5.0/m4/Makefile.am000066400000000000000000000017231476730411000167400ustar00rootroot00000000000000# vim:set noet ts=4: # # ibus-input-pad - Input pad for IBus # # Copyright (c) 2025 Takao Fujiwara # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program 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 General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. EXTRA_DIST = \ ibuslocale.m4 \ $(NULL) GITIGNOREFILES = \ gtk-doc.m4 \ intltool.m4 \ libtool.m4 \ lt*.m4 \ $(NULL) ibus-input-pad-1.5.0/m4/ibuslocale.m4000066400000000000000000000010461476730411000172660ustar00rootroot00000000000000AC_DEFUN([DEFINE_IBUS_LOCALEDIR], [ ibus_save_prefix="$prefix" ibus_save_datarootdir="$datarootdir" ibus_save_datadir="$datadir" ibus_save_localedir="$localedir" test "x$prefix" = xNONE && prefix=$ac_default_prefix datarootdir=`eval echo "$datarootdir"` datadir=`eval echo "$datadir"` test "x$localedir" = xNONE && localedir="${datadir}/locale" ibus_localedir=`eval echo "$localedir"` ibus_datadir=`eval echo "$datadir"` localedir="$ibus_save_localedir" datadir="$ibus_save_datadir" datarootdir="$ibus_save_datarootdir" prefix="$ibus_save_prefix" ]) ibus-input-pad-1.5.0/po/000077500000000000000000000000001476730411000147775ustar00rootroot00000000000000ibus-input-pad-1.5.0/po/LINGUAS000066400000000000000000000001321476730411000160200ustar00rootroot00000000000000# please keep this list sorted alphabetically # de el fi fr ja ko pl te tr uk zh_CN zh_TW ibus-input-pad-1.5.0/po/Makevars000066400000000000000000000067711476730411000165060ustar00rootroot00000000000000# Makefile variables for PO directory in any package using GNU gettext. # Usually the message domain is the same as the package name. DOMAIN = $(PACKAGE) # These two variables depend on the location of this directory. subdir = po top_builddir = .. # These options get passed to xgettext. XGETTEXT_OPTIONS = --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments --keyword=Name --keyword=Comment --keyword # This is the copyright holder that gets inserted into the header of the # $(DOMAIN).pot file. Set this to the copyright holder of the surrounding # package. (Note that the msgstr strings, extracted from the package's # sources, belong to the copyright holder of the package.) Translators are # expected to transfer the copyright for their translations to this person # or entity, or to disclaim their copyright. The empty string stands for # the public domain; in this case the translators are expected to disclaim # their copyright. COPYRIGHT_HOLDER = Takao Fujiwara # This tells whether or not to prepend "GNU " prefix to the package # name that gets inserted into the header of the $(DOMAIN).pot file. # Possible values are "yes", "no", or empty. If it is empty, try to # detect it automatically by scanning the files in $(top_srcdir) for # "GNU packagename" string. PACKAGE_GNU = no # This is the email address or URL to which the translators shall report # bugs in the untranslated strings: # - Strings which are not entire sentences, see the maintainer guidelines # in the GNU gettext documentation, section 'Preparing Strings'. # - Strings which use unclear terms or require additional context to be # understood. # - Strings which make invalid assumptions about notation of date, time or # money. # - Pluralisation problems. # - Incorrect English spelling. # - Incorrect formatting. # It can be your email address, or a mailing list address where translators # can write to without being subscribed, or the URL of a web page through # which the translators can contact you. MSGID_BUGS_ADDRESS = http://code.google.com/p/input-pad/issues/entry # This is the list of locale categories, beyond LC_MESSAGES, for which the # message catalogs shall be used. It is usually empty. EXTRA_LOCALE_CATEGORIES = # This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' # context. Possible values are "yes" and "no". Set this to yes if the # package uses functions taking also a message context, like pgettext(), or # if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. USE_MSGCTXT = yes # These options get passed to msgmerge. # Useful options are in particular: # --previous to keep previous msgids of translated messages, # --quiet to reduce the verbosity. MSGMERGE_OPTIONS = # These options get passed to msginit. # If you want to disable line wrapping when writing PO files, add # --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and # MSGINIT_OPTIONS. MSGINIT_OPTIONS = # This tells whether or not to regenerate a PO file when $(DOMAIN).pot # has changed. Possible values are "yes" and "no". Set this to no if # the POT file is checked in the repository and the version control # program ignores timestamps. PO_DEPENDS_ON_POT = no # This tells whether or not to forcibly update $(DOMAIN).pot and # regenerate PO files on "make dist". Possible values are "yes" and # "no". Set this to no if the POT file and PO files are maintained # externally. DIST_DEPENDS_ON_UPDATE_PO = no ibus-input-pad-1.5.0/po/POTFILES.in000066400000000000000000000002761476730411000165610ustar00rootroot00000000000000# Files with translatable strings. # Please keep this file in alphabetical order. engine/engine.c engine/main.c setup/ibus-setup-input-pad.desktop.in.in setup/setup-gtk.c setup/setup-gtk.ui ibus-input-pad-1.5.0/po/POTFILES.skip000066400000000000000000000001701476730411000171120ustar00rootroot00000000000000# Files with translatable strings. # Please keep this file in alphabetical order. setup/ibus-setup-input-pad.desktop.in ibus-input-pad-1.5.0/po/de.po000066400000000000000000000075521476730411000157400ustar00rootroot00000000000000# German translations for ibus-input-pad # Copyright (C) 2010-2020 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Mike FABIAN , 2019, 2020. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2020-01-01 12:28+0000\n" "Last-Translator: Mike FABIAN \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.9.1\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "Input Pad starten" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "Input Pad anzeigen" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "Input Pad anzeigen (nur Tastatur)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "Input Pad konfigurieren" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "Input Pad konfigurieren" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "Input Pad verstecken" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "Input Pad" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus Input Pad Einstellungen" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "IBus Input Pad Engine konfigurieren" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "Voreinstellung" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "Tastatur_theme:" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "Welches Theme in kbdui Modulen benutzt werden soll" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "Nichts" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "Benutzerdefiniert" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "Alle" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-Input Pad Einstellungen" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "_Zeichentabellentyp:" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "Ob die Zeichentabelle angezeigt wird oder nicht" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "_Tastaturbelegungstyp:" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Ob die Tastaturbelegung angezeigt wird oder nicht" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "Voreingestelltes Aussehen" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "„Nur Tastatur“-Aussehen" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "Allgemein" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "Info" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "_Anwenden" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "_Abbrechen" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "_OK" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "Bestätigen" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "Einstellungen wirklich beenden?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "Einstellungen wirklich beenden ohne zu speichern?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "Der „Input Pad Engine“ fur die IBus Plattform" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "Mike FABIAN " ibus-input-pad-1.5.0/po/el.po000066400000000000000000000111661476730411000157440ustar00rootroot00000000000000# Greek translations for ibus-input-pad # Copyright (C) 2010-2025 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Giannis Antypas , 2024. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2024-09-08 09:38+0000\n" "Last-Translator: Giannis Antypas \n" "Language-Team: Greek \n" "Language: el\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 5.7.2\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "Εκκίνηση φύλλου εισαγωγής" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "Εμφάνιση φύλλου εισαγωγής" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "Εμφάνιση φύλλου εισαγωγής (πληκτρολόγιο μόνο)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "Διαρρύθμιση φύλλου εισαγωγής" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "Διαμόρφωση φύλλου εισαγωγής" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "Απόκρυψη φύλλου εισαγωγής" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "Φύλλο εισαγωγής" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "Διαρρύθμιση φύλλου εισαγωγής IBus" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "Διαρρύθμιση μηχανής φύλλου εισαγωγής IBus" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "Προεπιλογή" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "_Θέμα πληκτρολογίου:" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "Ποιό θέμα επιλέγετε στις λειτουργικές μονάδες kbdui" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "Τίποτε" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "Προσαρμοσμένο" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "Όλα" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "Διαρρύθμιση IBus-Input-Pad" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "Τύπος πίνακα _χαρακτήρων:" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "Κατά πόσον εμφανίζετε τον πίνακα χαρακτήρων ή όχι" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "Τύπος διάταξης _πληκτρολογίου:" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Κατά πόσον εμφανίζετε τη διάταξη πληκτρολογίου ή όχι" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "Προεπιλεγμένη εμφάνιση" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "Εμφάνιση πληκτρολογίου μόνο" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "Γενικά" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "Σχετικά" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "_Εφαρμογή" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "_Ακύρωση" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "_Εντάξει" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "Επιβεβαίωση" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "Σίγουρα κλείνετε τη διαρρύθμιση;" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "Σίγουρα κλείνετε τη διαρρύθμιση χωρίς αποθήκευση της διαμόρφωσης;" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "Η μηχανή φύλλου εισαγωγής για την πλατφόρμα IBus" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "_μνεία μεταφραστών" ibus-input-pad-1.5.0/po/fi.po000066400000000000000000000075471476730411000157520ustar00rootroot00000000000000# Finnish translations for ibus-input-pad # Copyright (C) 2010-2025 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Ricky Tigg , 2025. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2025-03-21 07:53+0000\n" "Last-Translator: Ricky Tigg \n" "Language-Team: Finnish \n" "Language: fi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 5.10.4\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "Käynnistä syöttö-pad" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "Näytä syöttö-pad" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "Näytä syöttö-pad (vain näppäimistö)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "Aseta syöttö-pad" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "Määritä syöttö-pad" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "Piilota syöttö-pad" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "Syöttö-pad" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBusin syöttö-padin asettaminen" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "Aseta IBusin syöttö-padin moottori" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "Oletus" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "Näppäimistön _teema:" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "Minkä teeman valitset kbdui-moduuleissa" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "Ei mitään" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "Mukautettu" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "Kaikki" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-Input-Padin asettaminen" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "_Merkintaulukkotyyppi:" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "Näytätkö merkkitaulukon tai et" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "_Näppäimistön asettelutyyppi:" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Näytätkö näppäimistöasettelun vai et" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "Oletusulkoasu" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "Vain-näppäimistön ulkoasu" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "Yleinen" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "Tietoja" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "_Sovella" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "_Peruuta" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "_Hyvä on" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "Vahvista" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "Oletko varma, että suljet asettamisen?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "Oletko varma, että suljet asettamisen tallentamatta asetuksia?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "Syöttö-padin moottori IBus-alustalle" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "_ansioituneet kääntäjät" ibus-input-pad-1.5.0/po/fr.po000066400000000000000000000053141476730411000157510ustar00rootroot00000000000000# French translations for ibus-input-pad # Copyright (C) 2010-2012 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2012-12-17 19:34+0900\n" "PO-Revision-Date: 2010-05-13 03:08+0900\n" "Last-Translator: Takao Fujiwara \n" "Language-Team: French\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ../engine/engine.c:158 ../engine/engine.c:159 ../engine/engine.c:168 #: ../engine/engine.c:169 msgid "Launch Input Pad" msgstr "" #: ../engine/engine.c:180 ../engine/engine.c:181 ../engine/engine.c:361 msgid "Show Input Pad" msgstr "" #: ../engine/engine.c:190 ../engine/engine.c:191 msgid "Show Input Pad (Keyboard Only)" msgstr "" #: ../engine/engine.c:203 msgid "Setup Input Pad" msgstr "" #: ../engine/engine.c:204 msgid "Configure Input Pad" msgstr "" #: ../engine/engine.c:359 msgid "Hide Input Pad" msgstr "" #: ../engine/main.c:55 ../engine/main.c:64 ../engine/main.c:65 msgid "Input Pad" msgstr "" #: ../setup/setup-gtk2.c:360 ../setup/setup-gtk2.ui.h:4 msgid "Default" msgstr "" #: ../setup/setup-gtk2.c:397 msgid "Keyboard _Theme:" msgstr "" #: ../setup/setup-gtk2.c:400 msgid "Which theme you choose in kbdui modules" msgstr "" #: ../setup/setup-gtk2.ui.h:1 msgid "Nothing" msgstr "" #: ../setup/setup-gtk2.ui.h:2 msgid "Custom" msgstr "" #: ../setup/setup-gtk2.ui.h:3 msgid "All" msgstr "" #: ../setup/setup-gtk2.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "" #: ../setup/setup-gtk2.ui.h:6 msgid "_Character Table Type:" msgstr "" #: ../setup/setup-gtk2.ui.h:7 msgid "Whether you show the character table or not" msgstr "" #: ../setup/setup-gtk2.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "" #: ../setup/setup-gtk2.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "" #: ../setup/setup-gtk2.ui.h:10 msgid "Default Appearance" msgstr "" #: ../setup/setup-gtk2.ui.h:11 msgid "Keyboard Only Appearance" msgstr "" #: ../setup/setup-gtk2.ui.h:12 msgid "General" msgstr "" #: ../setup/setup-gtk2.ui.h:13 msgid "About" msgstr "" #: ../setup/setup-gtk2.ui.h:14 msgid "Confirm" msgstr "" #: ../setup/setup-gtk2.ui.h:15 msgid "Are you sure to close Setup?" msgstr "" #: ../setup/setup-gtk2.ui.h:16 msgid "Are you sure to close Setup without saving configure?" msgstr "" #: ../setup/setup-gtk2.ui.h:17 msgid "The input pad engine for IBus platform" msgstr "" #: ../setup/setup-gtk2.ui.h:18 msgid "translator_credits" msgstr "" ibus-input-pad-1.5.0/po/ibus-input-pad.pot000066400000000000000000000056741476730411000204000ustar00rootroot00000000000000# Source translations for ibus-input-pad # Copyright (C) 2010-2014 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2011-03-08 11:40+0900\n" "Last-Translator: Takao Fujiwara \n" "Language-Team: Source\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "" ibus-input-pad-1.5.0/po/ja.po000066400000000000000000000100021476730411000157220ustar00rootroot00000000000000# Japanese translations for ibus-input-pad # Copyright (C) 2010-2014 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Translators: # Takao Fujiwara , 2010-2013. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2014-04-22 06:14+0000\n" "Last-Translator: fujiwara \n" "Language-Team: Japanese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "インプットパッドを起動する" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "インプットパッドを表示する" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "インプットパッドを表示する (キーボードのみ)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "インプットパッドの設定" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "インプットパッドを構成します" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "インプットパッドを隠す" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "インプットパッド" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus Input Pad の設定" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "IBus Input Pad エンジンの設定" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "デフォルト" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "キーボードテーマ(_T):" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "kbdui モジュールの中でどのテーマを選ぶか" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "なし" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "カスタム" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "すべて" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-Input-Pad 設定" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "文字テーブルタイプ(_C):" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "文字テーブルを表示するか否か" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "キーボードレイアウトタイプ(_K):" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "キーボードレイアウトを表示するか否か" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "デフォルトの外観" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "キーボードのみの外観" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "一般" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "情報" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "適用(_A)" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "キャンセル(_C)" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "OK(_O)" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "確認" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "「セットアップ」を閉じても良いですか?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "構成を保存せずに「セットアップ」を閉じても良いですか?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "IBus プラットフォーム用インプットパッドエンジン" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "translator_credits" ibus-input-pad-1.5.0/po/ko.po000066400000000000000000000076721476730411000157640ustar00rootroot00000000000000# Korean translations for ibus-input-pad # Copyright (C) 2010-2025 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # 김인수 , 2024. # Weblate Translation Memory , 2024. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2024-01-25 13:36+0000\n" "Last-Translator: 김인수 \n" "Language-Team: Korean \n" "Language: ko\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 5.3.1\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "입력 패드 실행" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "입력 패드 표시" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "입력 패드 표시 (키보드 전용)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "입력 패드 설정" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "입력 패드를 구성합니다" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "입력 패드를 숨깁니다" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "입력 패드" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus 입력 패드 설정" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "IBus 입력 패드 엔진 설정" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "기본" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "키보드 테마(_T):" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "kbdui 모듈에서 당신이 선택한 테마" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "없음" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "사용자 지정" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "모두" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-입력-패드 설정" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "문자 테이블 유형(_C):" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "문자 테이블을 표시하거나 아니거나" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "키보드 배열 유형(_K):" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "키보드 배열을 표시하거나 아니거나" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "기본 외형" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "키보드 전용 외형" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "일반" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "정보" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "적용(_A)" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "취소(_C)" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "좋음(_O)" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "확인" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "설정을 종료할까요?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "구성을 저장하지 않고 설정을 종료할까요?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "IBus 기술환경을 위한 입력 패드 엔진" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "김인수 " ibus-input-pad-1.5.0/po/pl.po000066400000000000000000000100161476730411000157500ustar00rootroot00000000000000# Polish translations for ibus-input-pad # Copyright (C) 2010-2020 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Translators: # Piotr Drąg , 2011,2013-2014, 2020. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2020-01-03 17:15+0000\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "Language: pl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 3.9.1\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "Uruchom tablicę wprowadzania" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "Wyświetl tablicę wprowadzania" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "Wyświetl tablicę wprowadzania (tylko klawiaturę)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "Ustaw tablicę wprowadzania" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "Skonfiguruj tablicę wprowadzania" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "Ukryj tablicę wprowadzania" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "Tablica wprowadzania" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "Konfiguracja tablicy wprowadzania IBus" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "Konfiguracja mechanizmu tablicy wprowadzania IBus" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "Domyślne" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "_Motyw klawiatury:" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "Który motyw wybrać w modułach kbdui" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "Nic" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "Niestandardowe" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "Wszystko" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "Konfiguracja tablicy wprowadzania IBus" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "Typ tablicy _znaków:" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "Czy wyświetlać tablicę znaków" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "Typ układu _klawiatury:" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Czy wyświetlać układ klawiatury" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "Domyślny wygląd" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "Wygląd trybu tylko klawiatury" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "Ogólne" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "O programie" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "_Zastosuj" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "_Anuluj" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "_OK" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "Potwierdź" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "Na pewno zamknąć konfigurację?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "Na pewno zamknąć konfigurację bez jej zapisania?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "Mechanizm tablicy wprowadzania dla platformy IBus" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "Piotr Drąg , 2011-2020" ibus-input-pad-1.5.0/po/te.po000066400000000000000000000074211476730411000157530ustar00rootroot00000000000000# Telugu translations for ibus-input-pad # Copyright (C) 2010-2012 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Translators: # ప్రవీణ్ యిళ్ళ , 2011. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2012-12-17 19:34+0900\n" "PO-Revision-Date: 2012-02-14 08:36+0000\n" "Last-Translator: ప్రవీణ్ ఇళ్ళ \n" "Language-Team: Telugu\n" "Language: te\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../engine/engine.c:158 ../engine/engine.c:159 ../engine/engine.c:168 #: ../engine/engine.c:169 msgid "Launch Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్ ప్రారంభించు" #: ../engine/engine.c:180 ../engine/engine.c:181 ../engine/engine.c:361 msgid "Show Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్ చూపించు" #: ../engine/engine.c:190 ../engine/engine.c:191 msgid "Show Input Pad (Keyboard Only)" msgstr "ఇన్‌పుట్ ప్యాడ్ చూపించు(కీబోర్డు మాత్రమే)" #: ../engine/engine.c:203 msgid "Setup Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్ అమర్చు" #: ../engine/engine.c:204 msgid "Configure Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్ స్వరూపించు" #: ../engine/engine.c:359 msgid "Hide Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్‌ను దాయి" #: ../engine/main.c:55 ../engine/main.c:64 ../engine/main.c:65 msgid "Input Pad" msgstr "ఇన్‌పుట్ ప్యాడ్" #: ../setup/setup-gtk2.c:360 ../setup/setup-gtk2.ui.h:4 msgid "Default" msgstr "అప్రమేయం" #: ../setup/setup-gtk2.c:397 msgid "Keyboard _Theme:" msgstr "కీబోర్డు థీమ్(_T):" #: ../setup/setup-gtk2.c:400 msgid "Which theme you choose in kbdui modules" msgstr "" #: ../setup/setup-gtk2.ui.h:1 msgid "Nothing" msgstr "" #: ../setup/setup-gtk2.ui.h:2 msgid "Custom" msgstr "అనురూపిత" #: ../setup/setup-gtk2.ui.h:3 msgid "All" msgstr "అన్ని" #: ../setup/setup-gtk2.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "" #: ../setup/setup-gtk2.ui.h:6 msgid "_Character Table Type:" msgstr "" #: ../setup/setup-gtk2.ui.h:7 msgid "Whether you show the character table or not" msgstr "" #: ../setup/setup-gtk2.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "కీబోర్డు నమూనా రకం(_K):" #: ../setup/setup-gtk2.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "" #: ../setup/setup-gtk2.ui.h:10 msgid "Default Appearance" msgstr "అప్రమేయ స్వరూపం" #: ../setup/setup-gtk2.ui.h:11 msgid "Keyboard Only Appearance" msgstr "కీబోర్డు స్వరూపం" #: ../setup/setup-gtk2.ui.h:12 msgid "General" msgstr "సాధారణం" #: ../setup/setup-gtk2.ui.h:13 msgid "About" msgstr "గురించి" #: ../setup/setup-gtk2.ui.h:14 msgid "Confirm" msgstr "నిర్ధారించు" #: ../setup/setup-gtk2.ui.h:15 msgid "Are you sure to close Setup?" msgstr "అమరికను ఖచ్చితముగా మూసివేయాలనుకుంటున్నారా?" #: ../setup/setup-gtk2.ui.h:16 msgid "Are you sure to close Setup without saving configure?" msgstr "" #: ../setup/setup-gtk2.ui.h:17 msgid "The input pad engine for IBus platform" msgstr "" #: ../setup/setup-gtk2.ui.h:18 msgid "translator_credits" msgstr "Praveen Illa , 2011" ibus-input-pad-1.5.0/po/tr.po000066400000000000000000000076071476730411000157760ustar00rootroot00000000000000# Turkish translations for ibus-input-pad # Copyright (C) 2010-2020 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Oğuz Ersen , 2019. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2019-12-31 09:57+0000\n" "Last-Translator: Oğuz Ersen \n" "Language-Team: Turkish \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Weblate 3.9.1\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "İnput Pad'i Başlat" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "İnput Pad'i Göster" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "İnput Pad'i Göster (Sadece Klavye)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "İnput Pad'i Kur" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "İnput Pad'i Yapılandır" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "İnput Pad'i Gizle" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "İnput Pad" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus İnput Pad Kurulumu" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "IBus İnput Pad motorunu kur" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "Varsayılan" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "Klavye _Teması:" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "Kbdui modüllerinde hangi temayı seçiyorsunuz" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "Hiçbir şey" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "Özel" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "Hepsi" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-İnput-Pad Kurulumu" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "_Karakter Tablosu Türü:" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "Karakter tablosunu gösterip göstermediğiniz" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "_Klavye Düzeni Türü:" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Klavye düzenini gösterip göstermediğiniz" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "Varsayılan Görünüm" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "Sadece Klavye Görünümü" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "Genel" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "Hakkında" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "_Uygula" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "_İptal" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "_Tamam" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "Onayla" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "Kurulumu kapatmak istediğinizden emin misiniz?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "" "Yapılandırmayı kaydetmeden Kurulumu kapatmak istediğinizden emin misiniz?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "IBus giriş platformu için input pad motoru" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "Oğuz Ersen , 2019" ibus-input-pad-1.5.0/po/uk.po000066400000000000000000000101171476730411000157560ustar00rootroot00000000000000# Ukrainian translations for ibus-input-pad # Copyright (C) 2010-2012 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Translators: # Yuri Chornoivan , 2012. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2012-12-17 19:34+0900\n" "PO-Revision-Date: 2012-03-06 13:41+0000\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../engine/engine.c:158 ../engine/engine.c:159 ../engine/engine.c:168 #: ../engine/engine.c:169 msgid "Launch Input Pad" msgstr "Запустити панель введення" #: ../engine/engine.c:180 ../engine/engine.c:181 ../engine/engine.c:361 msgid "Show Input Pad" msgstr "Показати панель введення" #: ../engine/engine.c:190 ../engine/engine.c:191 msgid "Show Input Pad (Keyboard Only)" msgstr "Показати панель введення (лише клавіатуру)" #: ../engine/engine.c:203 msgid "Setup Input Pad" msgstr "Встановити параметри панелі введення" #: ../engine/engine.c:204 msgid "Configure Input Pad" msgstr "Налаштувати панель введення" #: ../engine/engine.c:359 msgid "Hide Input Pad" msgstr "Сховати панель введення" #: ../engine/main.c:55 ../engine/main.c:64 ../engine/main.c:65 msgid "Input Pad" msgstr "Панель введення" #: ../setup/setup-gtk2.c:360 ../setup/setup-gtk2.ui.h:4 msgid "Default" msgstr "Типово" #: ../setup/setup-gtk2.c:397 msgid "Keyboard _Theme:" msgstr "_Тема клавіатури:" #: ../setup/setup-gtk2.c:400 msgid "Which theme you choose in kbdui modules" msgstr "Яку тему ви виберете для модулів kbdui" #: ../setup/setup-gtk2.ui.h:1 msgid "Nothing" msgstr "Нічого" #: ../setup/setup-gtk2.ui.h:2 msgid "Custom" msgstr "Нетипове" #: ../setup/setup-gtk2.ui.h:3 msgid "All" msgstr "Всі" #: ../setup/setup-gtk2.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "Налаштування панелі введення IBus" #: ../setup/setup-gtk2.ui.h:6 msgid "_Character Table Type:" msgstr "Т_ип таблиці символів:" #: ../setup/setup-gtk2.ui.h:7 msgid "Whether you show the character table or not" msgstr "Чи слід показувати таблицю символів" #: ../setup/setup-gtk2.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "Тип _розкладки клавіатури:" #: ../setup/setup-gtk2.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "Чи слід показувати розкладку клавіатури" #: ../setup/setup-gtk2.ui.h:10 msgid "Default Appearance" msgstr "Типовий вигляд" #: ../setup/setup-gtk2.ui.h:11 msgid "Keyboard Only Appearance" msgstr "Вигляд клавіатури" #: ../setup/setup-gtk2.ui.h:12 msgid "General" msgstr "Загальне" #: ../setup/setup-gtk2.ui.h:13 msgid "About" msgstr "Про програму" #: ../setup/setup-gtk2.ui.h:14 msgid "Confirm" msgstr "Підтвердити" #: ../setup/setup-gtk2.ui.h:15 msgid "Are you sure to close Setup?" msgstr "Ви справді бажаєте закрити вікно налаштовування?" #: ../setup/setup-gtk2.ui.h:16 msgid "Are you sure to close Setup without saving configure?" msgstr "" "Ви справді бажаєте закрити вікно налаштовування без збереження параметрів?" #: ../setup/setup-gtk2.ui.h:17 msgid "The input pad engine for IBus platform" msgstr "Рушій панелі введення для платформи IBus" #: ../setup/setup-gtk2.ui.h:18 msgid "translator_credits" msgstr "Юрій Чорноіван " ibus-input-pad-1.5.0/po/zh_CN.po000066400000000000000000000074371476730411000163530ustar00rootroot00000000000000# Chinese (Simplified) translations for ibus-input-pad # Copyright (C) 2010-2025 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Liu Tao , 2024. # Jingge Chen , 2025. msgid "" msgstr "" "Project-Id-Version: ibus-input-pad HEAD\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2025-03-08 12:38+0000\n" "Last-Translator: Jingge Chen \n" "Language-Team: Chinese (Simplified) \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 5.10.2\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "启动输入板" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "显示输入板" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "显示输入板( 仅键盘)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "设置输入板" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "设定输入板" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "隐藏输入板" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "输入板" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus 输入板设置" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "设置 IBus 输入板引擎" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "默认" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "键盘主题(_T):" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "您想要 kbdui 模块使用哪个主题" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "无" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "自定义" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "全部" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-Input-Pad 设置" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "字符表类型(_C):" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "是否显示字符表" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "键盘布局类型(_K):" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "是否显示键盘布局" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "默认外观" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "仅键盘外观" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "常规" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "关于" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "应用(_A)" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "取消(_C)" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "确定(_O)" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "确认" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "您确定要关闭设置吗?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "您确定要关闭设置而不保存吗?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "IBus 平台的输入板引擎" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "Chen Jingge , 2025, 03." ibus-input-pad-1.5.0/po/zh_TW.po000066400000000000000000000072421476730411000163770ustar00rootroot00000000000000# Traditional Chinese translations for ibus-input-pad # Copyright (C) 2010-2014 Takao Fujiwara # This file is distributed under the same license as the ibus-input-pad package. # # Translators: # Cheng-Chia Tseng , 2011 msgid "" msgstr "" "Project-Id-Version: ibus-input-pad\n" "Report-Msgid-Bugs-To: http://code.google.com/p/input-pad/issues/entry\n" "POT-Creation-Date: 2014-04-18 14:45+0900\n" "PO-Revision-Date: 2014-04-24 16:22+0000\n" "Last-Translator: Cheng-Chia Tseng \n" "Language-Team: Traditional Chinese\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: zh_TW\n" "Plural-Forms: nplurals=1; plural=0;\n" #: ../engine/engine.c:181 ../engine/engine.c:182 msgid "Launch Input Pad" msgstr "啟動輸入板" #: ../engine/engine.c:193 ../engine/engine.c:194 ../engine/engine.c:352 msgid "Show Input Pad" msgstr "顯示輸入板" #: ../engine/engine.c:203 ../engine/engine.c:204 msgid "Show Input Pad (Keyboard Only)" msgstr "顯示輸入板 (僅鍵盤)" #: ../engine/engine.c:215 msgid "Setup Input Pad" msgstr "設置輸入板" #: ../engine/engine.c:216 msgid "Configure Input Pad" msgstr "設定輸入板" #: ../engine/engine.c:350 msgid "Hide Input Pad" msgstr "隱藏輸入板" #: ../engine/main.c:56 ../engine/main.c:65 ../engine/main.c:66 msgid "Input Pad" msgstr "輸入板" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:1 msgid "IBus Input Pad Setup" msgstr "IBus 輸入板設置" #: ../setup/ibus-setup-input-pad.desktop.in.in.h:2 msgid "Set up IBus Input Pad engine" msgstr "設置 IBus 輸入板引擎" #: ../setup/setup-gtk.c:360 ../setup/setup-gtk.ui.h:4 msgid "Default" msgstr "預設" #: ../setup/setup-gtk.c:394 msgid "Keyboard _Theme:" msgstr "鍵盤主題(_T):" #: ../setup/setup-gtk.c:397 msgid "Which theme you choose in kbdui modules" msgstr "您想要 kbdui 模組使用哪個主題" #: ../setup/setup-gtk.ui.h:1 msgid "Nothing" msgstr "無" #: ../setup/setup-gtk.ui.h:2 msgid "Custom" msgstr "自訂" #: ../setup/setup-gtk.ui.h:3 msgid "All" msgstr "全部" #: ../setup/setup-gtk.ui.h:5 msgid "IBus-Input-Pad Setup" msgstr "IBus-Input-Pad 設置" #: ../setup/setup-gtk.ui.h:6 msgid "_Character Table Type:" msgstr "字元表類型(_C):" #: ../setup/setup-gtk.ui.h:7 msgid "Whether you show the character table or not" msgstr "您是否要顯示字元表" #: ../setup/setup-gtk.ui.h:8 msgid "_Keyboard Layout Type:" msgstr "鍵盤配置類型(_K):" #: ../setup/setup-gtk.ui.h:9 msgid "Whether you show the keyboard layout or not" msgstr "您是否要顯示鍵盤配置" #: ../setup/setup-gtk.ui.h:10 msgid "Default Appearance" msgstr "預設外觀" #: ../setup/setup-gtk.ui.h:11 msgid "Keyboard Only Appearance" msgstr "僅鍵盤外觀" #: ../setup/setup-gtk.ui.h:12 msgid "General" msgstr "一般" #: ../setup/setup-gtk.ui.h:13 msgid "About" msgstr "關於" #: ../setup/setup-gtk.ui.h:14 msgid "_Apply" msgstr "套用(_A)" #: ../setup/setup-gtk.ui.h:15 msgid "_Cancel" msgstr "取消(_C)" #: ../setup/setup-gtk.ui.h:16 msgid "_OK" msgstr "確定(_O)" #: ../setup/setup-gtk.ui.h:17 msgid "Confirm" msgstr "確認" #: ../setup/setup-gtk.ui.h:18 msgid "Are you sure to close Setup?" msgstr "您確定要關閉「設置」嗎?" #: ../setup/setup-gtk.ui.h:19 msgid "Are you sure to close Setup without saving configure?" msgstr "您確定要關閉「設置」而不儲存設定嗎?" #: ../setup/setup-gtk.ui.h:20 msgid "The input pad engine for IBus platform" msgstr "IBus 平臺的輸入板引擎" #: ../setup/setup-gtk.ui.h:21 msgid "translator_credits" msgstr "Cheng-Chia Tseng , 2011, 14." ibus-input-pad-1.5.0/setup/000077500000000000000000000000001476730411000155215ustar00rootroot00000000000000ibus-input-pad-1.5.0/setup/Makefile.am000066400000000000000000000073741476730411000175700ustar00rootroot00000000000000# vim:set noet ts=4: # # ibus-input-pad - Input pad for IBus # # Copyright (c) 2010-2025 Takao Fujiwara # Copyright (c) 2010-2025 Red Hat, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program 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 General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. noinst_DIST = \ $(NULL) AM_CPPFLAGS = \ -I$(top_srcdir) \ -I$(top_srcdir)/engine \ -DDATAROOTDIR=\""$(datarootdir)"\" \ $(NULL) noinst_LTLIBRARIES = \ libiconfig.la \ $(NULL) libiconfig_la_SOURCES = \ iconfig-gtk.c \ iconfig-gtk.h \ $(NULL) libiconfig_la_CFLAGS = \ $(GLIB2_CFLAGS) \ $(IBUS_CFLAGS) \ $(NULL) libiconfig_la_LIBADD = \ $(GLIB2_LIBS) \ $(IBUS_LIBS) \ $(NULL) libiconfig_la_LDFLAGS = \ -export-dynamic \ $(NULL) libexec_PROGRAMS = ibus-setup-input-pad ibus_setup_input_pad_SOURCES = \ main.c \ setup-gtk.c \ setup-gtk.h \ resources.c \ $(NULL) ibus_setup_input_pad_CFLAGS = \ $(GTK3_CFLAGS) \ $(IBUS_CFLAGS) \ $(INPUT_PAD_CFLAGS) \ $(NULL) ibus_setup_input_pad_LDFLAGS = \ $(NULL) ibus_setup_input_pad_LDADD = \ $(builddir)/libiconfig.la \ $(GTK3_LIBS) \ $(IBUS_LIBS) \ $(INPUT_PAD_LIBS) \ $(NULL) resources.c: ibus-setup-input-pad.gresource.xml $(GLIB_COMPILE_RESOURCES) $< --target=$@ --generate-source desktop_in_in_files = ibus-setup-input-pad.desktop.in.in desktop_in_files = $(desktop_in_in_files:.in.in=.in) $(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile $(AM_V_GEN) sed \ -e "s|\@libexecdir\@|$(libexecdir)|" \ -e "s|\@datadir\@|$(datadir)|" \ $< > $@.tmp && mv $@.tmp $@ desktopdir=$(datadir)/applications desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) $(desktop_DATA): $(desktop_in_files) Makefile $(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ MAINTAINERCLEANFILES = resources.c EXTRA_DIST = \ $(desktop_in_in_files) \ ibus-setup-input-pad.gresource.xml \ setup-gtk.ui \ $(NULL) CLEANFILES = \ $(desktop_DATA) \ $(desktop_in_files) \ $(NULL) ibus-input-pad-1.5.0/setup/ibus-setup-input-pad.desktop.in.in000066400000000000000000000003161476730411000241250ustar00rootroot00000000000000[Desktop Entry] Name=IBus Input Pad Setup Comment=Set up IBus Input Pad engine Exec=@libexecdir@/ibus-setup-input-pad Icon=@datadir@/pixmaps/input-pad.png NoDisplay=true Type=Application StartupNotify=true ibus-input-pad-1.5.0/setup/ibus-setup-input-pad.gresource.xml000066400000000000000000000003101476730411000242310ustar00rootroot00000000000000 setup-gtk.ui ibus-input-pad-1.5.0/setup/iconfig-gtk.c000066400000000000000000000330311476730411000200660ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2011 Takao Fujiwara * Copyright (C) 2010-2011 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include "iconfig-gtk.h" #define IBUS_INPUT_PAD_CONFIG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), IBUS_TYPE_INPUT_PAD_CONFIG, IBusInputPadConfigPrivate)) typedef struct _SavedTable SavedTable; typedef enum { CONFIG_VALUE_TYPE_NONE = 0, CONFIG_VALUE_TYPE_INT, CONFIG_VALUE_TYPE_STRING, } ConfigValueType; struct _SavedTable { gchar *path; ConfigValueType type; union { int i; gchar *str; } value; }; struct _IBusInputPadConfigPrivate { IBusConfig *config; GHashTable *table; GObject *apply_button; }; G_DEFINE_TYPE (IBusInputPadConfig, ibus_input_pad_config, G_TYPE_OBJECT) static void destroy_saved_table (SavedTable *saved_table) { if (saved_table->type == CONFIG_VALUE_TYPE_STRING) { g_free (saved_table->value.str); saved_table->value.str = NULL; } g_free (saved_table); } static void commit_path (gpointer key, gpointer value, gpointer user_data) { IBusInputPadConfig *config; const gchar *path = (const gchar *) key; SavedTable *saved_table = (SavedTable *) value; gchar *p; gchar *section; gchar *name; g_return_if_fail (key != NULL && value != NULL); g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (user_data)); config = IBUS_INPUT_PAD_CONFIG (user_data); p = g_strrstr (path, "/"); g_return_if_fail (p != NULL && p > path); section = g_strndup (path, p - path); name = g_strdup (p + 1); if (saved_table->type == CONFIG_VALUE_TYPE_STRING) { ibus_input_pad_config_commit_str (config, section, name, saved_table->value.str); } else { ibus_input_pad_config_commit_int (config, section, name, saved_table->value.i); } } static GObject * ibus_input_pad_config_get_apply_button_real (IBusInputPadConfig *config) { g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), NULL); g_return_val_if_fail (config->priv != NULL, NULL); return config->priv->apply_button; } static void ibus_input_pad_config_set_apply_button_real (IBusInputPadConfig *config, GObject *button) { g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config)); g_return_if_fail (config->priv != NULL); config->priv->apply_button = button; } static void ibus_input_pad_config_init (IBusInputPadConfig *config) { IBusInputPadConfigPrivate *priv = IBUS_INPUT_PAD_CONFIG_GET_PRIVATE (config); priv->table = g_hash_table_new_full (g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) destroy_saved_table); config->priv = priv; } static void ibus_input_pad_config_class_init (IBusInputPadConfigClass *klass) { #if 0 GObjectClass *gobject_class = G_OBJECT_CLASS (klass); #endif g_type_class_add_private (klass, sizeof (IBusInputPadConfigPrivate)); klass->get_apply_button = ibus_input_pad_config_get_apply_button_real; klass->set_apply_button = ibus_input_pad_config_set_apply_button_real; } /* currently this is a static function due to ibus_bus_get_config */ static IBusInputPadConfig * ibus_input_pad_config_new (GDBusConnection *connection) { GObject *obj; obj = g_object_new (IBUS_TYPE_INPUT_PAD_CONFIG, NULL); return IBUS_INPUT_PAD_CONFIG (obj); } IBusInputPadConfig * ibus_bus_get_input_pad_config (IBusBus *bus) { IBusConfig *ibus_config; IBusInputPadConfig *config; ibus_config = ibus_bus_get_config (bus); if (ibus_config == NULL) { g_warning ("IBus connection failed. Maybe no ibus-daemon."); return NULL; } /* No idea to set parent from ibus_bus_get_config () */ config = ibus_input_pad_config_new (NULL); g_return_val_if_fail (config->priv != NULL, NULL); config->priv->config = ibus_config; return config; } gboolean ibus_input_pad_config_get_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int *value_intp) { IBusConfig *ibus_config; GVariant *value = NULL; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); ibus_config = config->priv->config; if ((value = ibus_config_get_value (ibus_config, section, name)) != NULL) { if (value_intp) { *value_intp = g_variant_get_int32 (value); } g_variant_unref (value); return TRUE; } if (!g_strcmp0 (name, "char_table_combo_box")) { if (value_intp) { *value_intp = CHAR_TABLE_COMBO_BOX_DEFAULT; } return TRUE; } else if (!g_strcmp0 (name, "layout_table_combo_box")) { if (value_intp) { *value_intp = LAYOUT_TABLE_COMBO_BOX_DEFAULT; } return TRUE; } return FALSE; } gboolean ibus_input_pad_config_get_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, gchar **value_strp) { IBusConfig *ibus_config; GVariant *value = NULL; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); ibus_config = config->priv->config; if ((value = ibus_config_get_value (ibus_config, section, name)) != NULL) { if (value_strp) { *value_strp = g_variant_dup_string (value, NULL); } g_variant_unref (value); return TRUE; } if (!g_strcmp0 (name, "keyboard_theme")) { if (value_strp) { *value_strp = g_strdup (KEYBOARD_THEME_DEFAULT); } return TRUE; } return FALSE; } #if 0 gboolean ibus_input_pad_config_get_value (IBusConfig *config, const gchar *section, const gchar *name, GVariant *value) { if ((value = ibus_config_get_value (config, section, name)) != NULL) { return TRUE; } if (!g_strcmp0 (name, "keyboard_theme")) { value = g_variant_new ("s", KEYBOARD_THEME_DEFAULT); return TRUE; } else if (!g_strcmp0 (name, "char_table_combo_box")) { value = g_variant_new ("i", CHAR_TABLE_COMBO_BOX_DEFAULT); return TRUE; } else if (!g_strcmp0 (name, "layout_table_combo_box")) { value = g_variant_new ("i", LAYOUT_TABLE_COMBO_BOX_DEFAULT); return TRUE; } return FALSE; } #endif gboolean ibus_input_pad_config_set_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int value_int) { IBusConfig *ibus_config; GVariant *value = NULL; int orig_i = 0; gchar *path; SavedTable *saved_table; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); g_return_val_if_fail (section != NULL && name != NULL, FALSE); ibus_config = config->priv->config; if ((value = ibus_config_get_value (ibus_config, section, name)) != NULL) { orig_i = g_variant_get_int32 (value); g_variant_unref (value); if (value_int == orig_i) { return FALSE; } } else if (!g_strcmp0 (name, "char_table_combo_box")) { if (value_int == CHAR_TABLE_COMBO_BOX_DEFAULT) { return FALSE; } } else if (!g_strcmp0 (name, "layout_table_combo_box")) { if (value_int == LAYOUT_TABLE_COMBO_BOX_DEFAULT) { return FALSE; } } path = g_build_path ("/", section, name, NULL); saved_table = g_new0 (SavedTable, 1); saved_table->path = g_strdup (path); saved_table->type = CONFIG_VALUE_TYPE_INT; saved_table->value.i = value_int; if (g_hash_table_lookup (config->priv->table, path)) { g_hash_table_replace (config->priv->table, (gpointer) g_strdup (path), (gpointer) saved_table); } else { g_hash_table_insert (config->priv->table, (gpointer) g_strdup (path), (gpointer) saved_table); } g_free (path); return TRUE; } gboolean ibus_input_pad_config_set_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, const gchar *value_str) { IBusConfig *ibus_config; GVariant *value = NULL; const gchar *orig_str = NULL; gchar *path; SavedTable *saved_table; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); g_return_val_if_fail (section != NULL && name != NULL, FALSE); ibus_config = config->priv->config; if ((value = ibus_config_get_value (ibus_config, section, name)) != NULL) { orig_str = g_variant_get_string (value, NULL); if (!g_strcmp0 (value_str, orig_str)) { g_variant_unref (value); return FALSE; } g_variant_unref (value); } else if (!g_strcmp0 (name, "keyboard_theme")) { if (value_str == NULL || !g_strcmp0 (value_str, KEYBOARD_THEME_DEFAULT)) { return FALSE; } } path = g_build_path ("/", section, name, NULL); saved_table = g_new0 (SavedTable, 1); saved_table->path = g_strdup (path); saved_table->type = CONFIG_VALUE_TYPE_STRING; if (value_str) { saved_table->value.str = g_strdup (value_str); } if (g_hash_table_lookup (config->priv->table, path)) { g_hash_table_replace (config->priv->table, (gpointer) g_strdup (path), (gpointer) saved_table); } else { g_hash_table_insert (config->priv->table, (gpointer) g_strdup (path), (gpointer) saved_table); } g_free (path); return TRUE; } gboolean ibus_input_pad_config_commit_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int value_int) { IBusConfig *ibus_config; GVariant *value = NULL; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); g_return_val_if_fail (section != NULL && name != NULL, FALSE); ibus_config = config->priv->config; value = g_variant_new ("i", value_int); if (!ibus_config_set_value (ibus_config, section, name, value)) { return FALSE; } return TRUE; } gboolean ibus_input_pad_config_commit_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, const gchar *value_str) { IBusConfig *ibus_config; GVariant *value = NULL; g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); g_return_val_if_fail (section != NULL && name != NULL, FALSE); ibus_config = config->priv->config; value = g_variant_new ("s", value_str); if (!ibus_config_set_value (ibus_config, section, name, value)) { return FALSE; } return TRUE; } gboolean ibus_input_pad_config_commit_all (IBusInputPadConfig *config) { g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), FALSE); g_return_val_if_fail (config->priv != NULL, FALSE); g_hash_table_foreach (config->priv->table, commit_path, config); g_hash_table_remove_all (config->priv->table); return TRUE; } int ibus_input_pad_config_get_changed_size (IBusInputPadConfig *config) { g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config), 0); g_return_val_if_fail (config->priv != NULL, 0); return g_hash_table_size (config->priv->table); } ibus-input-pad-1.5.0/setup/iconfig-gtk.h000066400000000000000000000116021476730411000200730ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2011 Takao Fujiwara * Copyright (C) 2010-2011 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef __IBUS_INPUT_PAD_ICONFIG_H__ #define __IBUS_INPUT_PAD_ICONFIG_H__ #include #include G_BEGIN_DECLS #define IBUS_TYPE_INPUT_PAD_CONFIG (ibus_input_pad_config_get_type ()) #define IBUS_INPUT_PAD_CONFIG(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), IBUS_TYPE_INPUT_PAD_CONFIG, IBusInputPadConfig)) #define IBUS_INPUT_PAD_CONFIG_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), IBUS_TYPE_INPUT_PAD_CONFIG, IBusInputPadConfigClass)) #define IBUS_IS_INPUT_PAD_CONFIG(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), IBUS_TYPE_INPUT_PAD_CONFIG)) #define IBUS_IS_INPUT_PAD_CONFIG_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), IBUS_TYPE_INPUT_PAD_CONFIG)) #define IBUS_INPUT_PAD_CONFIG_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), IBUS_TYPE_INPUT_PAD_CONFIG, IBusInputPadConfigClass)) #define CHAR_TABLE_COMBO_BOX_DEFAULT 1 #define LAYOUT_TABLE_COMBO_BOX_DEFAULT 0 #define KEYBOARD_THEME_DEFAULT "default" typedef struct _IBusInputPadConfig IBusInputPadConfig; typedef struct _IBusInputPadConfigPrivate IBusInputPadConfigPrivate; typedef struct _IBusInputPadConfigClass IBusInputPadConfigClass; struct _IBusInputPadConfig { GObject parent; IBusInputPadConfigPrivate *priv; }; struct _IBusInputPadConfigClass { GObjectClass parent_class; GObject * (* get_apply_button) (IBusInputPadConfig *config); void (* set_apply_button) (IBusInputPadConfig *config, GObject *button); /* Padding for future expansion */ void (*_iconfig_reserved1) (void); void (*_iconfig_reserved2) (void); void (*_iconfig_reserved3) (void); void (*_iconfig_reserved4) (void); }; IBusInputPadConfig * ibus_bus_get_input_pad_config (IBusBus *bus); GType ibus_input_pad_config_get_type (void); gboolean ibus_input_pad_config_get_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int *value_intp); gboolean ibus_input_pad_config_get_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, gchar **value_strp); gboolean ibus_input_pad_config_set_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int value_int); gboolean ibus_input_pad_config_set_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, const gchar *value_str); gboolean ibus_input_pad_config_commit_int (IBusInputPadConfig *config, const gchar *section, const gchar *name, int value_int); gboolean ibus_input_pad_config_commit_str (IBusInputPadConfig *config, const gchar *section, const gchar *name, const gchar *value_str); gboolean ibus_input_pad_config_commit_all (IBusInputPadConfig *config); int ibus_input_pad_config_get_changed_size (IBusInputPadConfig *config); G_END_DECLS #endif ibus-input-pad-1.5.0/setup/main.c000066400000000000000000000034701476730411000166150ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2025 Takao Fujiwara * Copyright (C) 2010-2025 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #ifdef ENABLE_NLS #include #endif #include "iconfig-gtk.h" #include "setup-gtk.h" static IBusInputPadConfig * get_config (void) { IBusBus *bus; IBusInputPadConfig *config; ibus_init (); bus = ibus_bus_new (); config = ibus_bus_get_input_pad_config (bus); return config; } int main (int argc, char *argv[]) { IBusInputPadConfig *config; GtkWidget *dialog; #ifdef ENABLE_NLS bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); #endif ibus_input_pad_setup_gtk_init (&argc, &argv); config = get_config (); g_assert (config != NULL); dialog = ibus_input_pad_setup_gtk_dialog_new (config); ibus_input_pad_setup_gtk_dialog_run (dialog); ibus_input_pad_setup_gtk_dialog_destroy (dialog); return 0; } ibus-input-pad-1.5.0/setup/setup-gtk.c000066400000000000000000000474341476730411000176240ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2014 Takao Fujiwara * Copyright (C) 2010-2014 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include /* strlen */ #include "i18n.h" #include "iconfig-gtk.h" #include "setup-gtk.h" #define ENGINE_INPUT_PAD_SECTION "engine/input-pad" typedef struct _ButtonClickData ButtonClickData; enum { THEME_ID_COL = 0, THEME_NAME_COL, THEME_DESC_COL, THEME_VISIBLE_COL, THEME_N_COLS }; struct _ButtonClickData { IBusInputPadConfig *config; GtkWidget *msg_dialog; }; static gboolean do_cancel_dialog (GtkWidget *dialog, ButtonClickData *button_data); static void disable_apply_button (IBusInputPadConfig *config); static void enable_apply_button (IBusInputPadConfig *config); static const gchar * get_widget_name (GtkWidget *widget); static gchar * get_combobox_appearance_name (GtkWidget *combobox); static gchar * get_combobox_appearance_section (GtkWidget *combobox); #if 0 static void on_value_changed (IBusInputPadConfig *config, const gchar *section, const gchar *name, GValue value, gpointer data) { g_return_if_fail (section != NULL); if (g_ascii_strncasecmp (section, ENGINE_INPUT_PAD_SECTION, strlen (ENGINE_INPUT_PAD_SECTION)) != 0) { return; } } #endif static void on_combobox_appearance_changed (GtkComboBox *combobox, gpointer data) { IBusInputPadConfig *config; gchar *section; gchar *name; gchar *kbdui_name = NULL; GtkTreeModel *model; GtkTreeIter iter; int id; gboolean res = FALSE; g_return_if_fail (GTK_IS_COMBO_BOX (combobox)); g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (data)); if (!gtk_combo_box_get_active_iter (combobox, &iter)) { return; } config = IBUS_INPUT_PAD_CONFIG (data); section = get_combobox_appearance_section (GTK_WIDGET (combobox)); name = get_combobox_appearance_name (GTK_WIDGET (combobox)); g_return_if_fail (name != NULL && section != NULL); model = gtk_combo_box_get_model (combobox); gtk_tree_model_get (model, &iter, THEME_ID_COL, &id, THEME_NAME_COL, &kbdui_name, -1); if (!g_strcmp0 (name, "keyboard_theme")) { res = ibus_input_pad_config_set_str (config, section, name, kbdui_name); } else { res = ibus_input_pad_config_set_int (config, section, name, id); } g_free (kbdui_name); g_free (section); g_free (name); if (res) { enable_apply_button (config); } } static void on_button_apply_clicked (GtkButton *button, gpointer data) { IBusInputPadConfig *config; g_return_if_fail (GTK_IS_BUTTON (button)); g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (data)); config = IBUS_INPUT_PAD_CONFIG (data); ibus_input_pad_config_commit_all (config); disable_apply_button (config); } static void on_button_ok_clicked (GtkButton *button, gpointer data) { IBusInputPadConfig *config; GtkWidget *dialog; GtkWidget *msg_dialog; ButtonClickData *button_data = (ButtonClickData *) data; g_return_if_fail (GTK_IS_BUTTON (button)); g_return_if_fail (data != NULL); g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (button_data->config)); g_return_if_fail (GTK_IS_MESSAGE_DIALOG (button_data->msg_dialog)); config = IBUS_INPUT_PAD_CONFIG (button_data->config); msg_dialog = GTK_WIDGET (button_data->msg_dialog); dialog = gtk_widget_get_toplevel (GTK_WIDGET (button)); g_return_if_fail (GTK_IS_DIALOG (dialog)); if (ibus_input_pad_config_get_changed_size (config) == 0) { gtk_dialog_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK); } else if (gtk_dialog_run (GTK_DIALOG (msg_dialog)) == GTK_RESPONSE_OK) { ibus_input_pad_config_commit_all (config); gtk_dialog_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK); } else { gtk_widget_hide (msg_dialog); } } static void on_button_cancel_clicked (GtkButton *button, gpointer data) { GtkWidget *dialog; ButtonClickData *button_data = (ButtonClickData *) data; g_return_if_fail (GTK_IS_BUTTON (button)); dialog = gtk_widget_get_toplevel (GTK_WIDGET (button)); if (do_cancel_dialog (dialog, button_data)) { gtk_dialog_response (GTK_DIALOG (dialog), GTK_RESPONSE_CANCEL); } } static gboolean on_dialog_close (GtkWidget *dialog, GdkEventAny *event, gpointer data) { ButtonClickData *button_data = (ButtonClickData *) data; return do_cancel_dialog (dialog, button_data); } static gboolean do_cancel_dialog (GtkWidget *dialog, ButtonClickData *button_data) { IBusInputPadConfig *config; GtkWidget *msg_dialog; g_return_val_if_fail (button_data != NULL, FALSE); g_return_val_if_fail (IBUS_IS_INPUT_PAD_CONFIG (button_data->config), FALSE); g_return_val_if_fail (GTK_IS_MESSAGE_DIALOG (button_data->msg_dialog), FALSE); g_return_val_if_fail (GTK_IS_DIALOG (dialog), FALSE); config = IBUS_INPUT_PAD_CONFIG (button_data->config); msg_dialog = GTK_WIDGET (button_data->msg_dialog); if (ibus_input_pad_config_get_changed_size (config) == 0) { return TRUE; } else if (gtk_dialog_run (GTK_DIALOG (msg_dialog)) == GTK_RESPONSE_OK) { return TRUE; } gtk_widget_hide (msg_dialog); return FALSE; } static void disable_apply_button (IBusInputPadConfig *config) { GObject *o; GtkWidget *apply_button; g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config)); o = IBUS_INPUT_PAD_CONFIG_GET_CLASS (config)->get_apply_button (config); g_return_if_fail (o != NULL && GTK_IS_WIDGET (o)); apply_button = GTK_WIDGET (o); gtk_widget_set_sensitive (apply_button, FALSE); } static void enable_apply_button (IBusInputPadConfig *config) { GObject *o; GtkWidget *apply_button; g_return_if_fail (IBUS_IS_INPUT_PAD_CONFIG (config)); o = IBUS_INPUT_PAD_CONFIG_GET_CLASS (config)->get_apply_button (config); g_return_if_fail (o != NULL && GTK_IS_WIDGET (o)); apply_button = GTK_WIDGET (o); if (!gtk_widget_get_sensitive (apply_button)) { gtk_widget_set_sensitive (apply_button, TRUE); } } static const gchar * get_widget_name (GtkWidget *widget) { const gchar *widget_name = NULL; if (GTK_IS_BUILDABLE (widget)) { widget_name = gtk_buildable_get_name (GTK_BUILDABLE (widget)); } if (widget_name == NULL) { widget_name = (const gchar *) g_object_get_data (G_OBJECT (widget), "gtk-builder-name"); } return widget_name; } static gchar * get_combobox_appearance_name (GtkWidget *combobox) { const gchar *widget_name; g_return_val_if_fail (combobox != NULL && GTK_IS_WIDGET (combobox), NULL); widget_name = get_widget_name (combobox); if (widget_name == NULL) { return NULL; } return g_strdup (widget_name); } static gchar * get_combobox_appearance_section (GtkWidget *combobox) { GtkWidget *parent; const gchar *parent_widget_name; gchar *section = NULL; g_return_val_if_fail (combobox != NULL && GTK_IS_WIDGET (combobox), NULL); parent = gtk_widget_get_parent (combobox); g_return_val_if_fail (parent != NULL, NULL); parent_widget_name = get_widget_name (parent); g_return_val_if_fail (parent_widget_name != NULL, NULL); section = g_build_path ("/", ENGINE_INPUT_PAD_SECTION, parent_widget_name, NULL); return section; } static void set_combobox_appearance_str (GtkWidget *combobox, const gchar *str) { GtkTreeModel *model; GtkTreeIter iter; int id; gchar *kbdui_name; g_return_if_fail (GTK_IS_COMBO_BOX (combobox)); g_return_if_fail (str != NULL); model = gtk_combo_box_get_model (GTK_COMBO_BOX (combobox)); g_return_if_fail (model != NULL); gtk_tree_model_get_iter_first (model, &iter); do { gtk_tree_model_get (model, &iter, THEME_ID_COL, &id, THEME_NAME_COL, &kbdui_name, -1); if (!g_strcmp0 (str, kbdui_name)) { gtk_combo_box_set_active (GTK_COMBO_BOX (combobox), id); g_free (kbdui_name); break; } g_free (kbdui_name); } while (gtk_tree_model_iter_next (model, &iter)); } static void set_combobox_appearance_default_value (GtkWidget *combobox, IBusInputPadConfig *config) { gchar *section; gchar *name; gchar *value_str = NULL; int value_int = 0; g_return_if_fail (GTK_IS_COMBO_BOX (combobox)); name = get_combobox_appearance_name (combobox); section = get_combobox_appearance_section (combobox); g_return_if_fail (name != NULL && section != NULL); if (!g_strcmp0 (name, "keyboard_theme")) { ibus_input_pad_config_get_str (config, section, name, &value_str); set_combobox_appearance_str (combobox, (const gchar *) value_str); g_free (value_str); } else { ibus_input_pad_config_get_int (config, section, name, &value_int); gtk_combo_box_set_active (GTK_COMBO_BOX (combobox), value_int); } g_free (section); g_free (name); } static GtkTreeModel * keyboard_theme_new (InputPadWindowKbduiName *list) { GtkTreeStore *store; GtkTreeIter iter; int i; g_return_val_if_fail (list != NULL, NULL); store = gtk_tree_store_new (THEME_N_COLS, G_TYPE_INT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN); gtk_tree_store_append (store, &iter, NULL); gtk_tree_store_set (store, &iter, THEME_ID_COL, 0, THEME_NAME_COL, "default", THEME_DESC_COL, _("Default"), THEME_VISIBLE_COL, TRUE, -1); for (i = 0; list[i].name; i++) { if (list[i].type != INPUT_PAD_WINDOW_TYPE_GTK) { continue; } gtk_tree_store_append (store, &iter, NULL); gtk_tree_store_set (store, &iter, THEME_ID_COL, i + 1, THEME_NAME_COL, list[i].name, THEME_DESC_COL, list[i].description, THEME_VISIBLE_COL, TRUE, -1); } return GTK_TREE_MODEL (store); } static void table_add_kbdui_list (GtkWidget *table, InputPadWindowKbduiName *list, IBusInputPadConfig *config, int nrows) { GtkTreeModel *model; GtkWidget *label; GtkWidget *combobox; GtkCellRenderer *renderer; g_return_if_fail (GTK_IS_GRID (table)); if ((model = keyboard_theme_new (list)) == NULL) { return; } label = gtk_label_new_with_mnemonic (_("Keyboard _Theme:")); gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_widget_set_tooltip_text (label, _("Which theme you choose in kbdui modules")); gtk_grid_attach (GTK_GRID (table), label, 0, nrows -1, 1, 1); gtk_widget_show (label); combobox = gtk_combo_box_new (); gtk_label_set_mnemonic_widget (GTK_LABEL (label), combobox); gtk_combo_box_set_model (GTK_COMBO_BOX (combobox), model); g_object_unref (G_OBJECT (model)); if (GTK_IS_BUILDABLE (combobox)) { gtk_buildable_set_name (GTK_BUILDABLE (combobox), "keyboard_theme"); } renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox), renderer, FALSE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), renderer, "text", THEME_DESC_COL, "visible", THEME_VISIBLE_COL, NULL); gtk_grid_attach (GTK_GRID (table), combobox, 1, nrows -1, 1, 1); set_combobox_appearance_default_value (combobox, config); gtk_widget_show (combobox); g_signal_connect (G_OBJECT (combobox), "changed", G_CALLBACK (on_combobox_appearance_changed), (gpointer) config); } static void destroy_kbdui_list (InputPadWindowKbduiName *list) { int i; for (i = 0; list[i].name; i++) { g_free (list[i].name); list[i].name = NULL; g_free (list[i].description); list[i].description= NULL; } g_free (list); } /* If 'logo-icon-name' property is used, * gtk_about_dialog_set_logo_icon_name() is called and it fails to * calculate the best size for a pixmaps file. * So we call gtk_about_dialog_set_logo() here. */ static void set_about_dialog_logo (GtkWidget *widget) { GtkAboutDialog *dialog = GTK_ABOUT_DIALOG (widget); GtkIconTheme *theme = gtk_icon_theme_get_default (); GError *error = NULL; GdkPixbuf *pixbuf = gtk_icon_theme_load_icon (theme, "input-pad", 48, 0, &error); gtk_about_dialog_set_logo (dialog, pixbuf); g_object_unref (pixbuf); } static void create_about_vbox (GtkBuilder *builder) { GtkWidget *about_dialog; GtkWidget *about_vbox; GtkWidget *content_area; GtkWidget *vbox; GtkWidget *widget; GtkWidget *old_parent; GList *list; about_dialog = GTK_WIDGET (gtk_builder_get_object (builder, "about_dialog")); about_vbox = GTK_WIDGET (gtk_builder_get_object (builder, "about_vbox")); g_return_if_fail (GTK_IS_DIALOG (about_dialog)); g_return_if_fail (GTK_IS_BOX (about_vbox)); gtk_about_dialog_set_version (GTK_ABOUT_DIALOG (about_dialog), VERSION); set_about_dialog_logo (about_dialog); content_area = gtk_dialog_get_content_area (GTK_DIALOG (about_dialog)); list = gtk_container_get_children (GTK_CONTAINER (content_area)); g_return_if_fail (GTK_IS_BOX (list->data)); vbox = GTK_WIDGET (list->data); list = gtk_container_get_children (GTK_CONTAINER (vbox)); while (list) { /* Copied the implementation of gtk_widget_reparent() * but gtk_box_pack_start() also includes set parent. */ widget = GTK_WIDGET (list->data); old_parent = gtk_widget_get_parent (widget); g_object_ref (G_OBJECT (widget)); gtk_container_remove (GTK_CONTAINER (old_parent), widget); gtk_box_pack_start (GTK_BOX (about_vbox), widget, FALSE, FALSE, 0); list = list->next; } } GtkWidget * ibus_input_pad_setup_gtk_dialog_new (IBusInputPadConfig *config) { GError *error = NULL; GtkBuilder *builder; GtkWidget *dialog = NULL; GtkWidget *char_table_combobox; GtkWidget *layout_table_combobox; GtkWidget *default_table; GtkWidget *keyboard_table; GtkWidget *keyboard_frame; GtkWidget *apply_button; GtkWidget *ok_button; GtkWidget *cancel_button; GtkWidget *ok_dialog; GtkWidget *cancel_dialog; InputPadWindowKbduiName *list; static ButtonClickData button_data_ok; static ButtonClickData button_data_cancel; builder = gtk_builder_new_from_resource ( "/com/github/fujiwarat/ibus-input-pad/setup-gtk.ui"); gtk_builder_set_translation_domain (builder, GETTEXT_PACKAGE); dialog = GTK_WIDGET (gtk_builder_get_object (builder, "setup_dialog")); gtk_window_set_icon_from_file (GTK_WINDOW (dialog), DATAROOTDIR "/pixmaps/input-pad.png", &error); error = NULL; gtk_window_set_default_icon_from_file (DATAROOTDIR "/pixmaps/input-pad.png", &error); create_about_vbox (builder); char_table_combobox = GTK_WIDGET (gtk_builder_get_object (builder, "char_table_combo_box")); layout_table_combobox = GTK_WIDGET (gtk_builder_get_object (builder, "layout_table_combo_box")); default_table = GTK_WIDGET (gtk_builder_get_object (builder, "default_table")); keyboard_table = GTK_WIDGET (gtk_builder_get_object (builder, "keyboard_only_table")); keyboard_frame = GTK_WIDGET (gtk_builder_get_object (builder, "keyboard_only_frame")); apply_button = GTK_WIDGET (gtk_builder_get_object (builder, "button_apply")); ok_button = GTK_WIDGET (gtk_builder_get_object (builder, "button_ok")); ok_dialog = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_ok")); cancel_button = GTK_WIDGET (gtk_builder_get_object (builder, "button_cancel")); cancel_dialog = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_cancel")); #if 0 if (config) { g_signal_connect (G_OBJECT (config), "value-changed", G_CALLBACK (on_value_changed), NULL); } #endif set_combobox_appearance_default_value (char_table_combobox, config); g_signal_connect (G_OBJECT (char_table_combobox), "changed", G_CALLBACK (on_combobox_appearance_changed), (gpointer) config); set_combobox_appearance_default_value (layout_table_combobox, config); g_signal_connect (G_OBJECT (layout_table_combobox), "changed", G_CALLBACK (on_combobox_appearance_changed), (gpointer) config); list = input_pad_window_get_kbdui_name_list (); if (list == NULL) { gtk_widget_hide (keyboard_frame); } else { table_add_kbdui_list (default_table, list, config, 3); table_add_kbdui_list (keyboard_table, list, config, 1); destroy_kbdui_list (list); } gtk_widget_set_sensitive (apply_button, FALSE); IBUS_INPUT_PAD_CONFIG_GET_CLASS (config)->set_apply_button (config, G_OBJECT (apply_button)); g_signal_connect (G_OBJECT (apply_button), "clicked", G_CALLBACK (on_button_apply_clicked), (gpointer) config); button_data_ok.config = config; button_data_ok.msg_dialog = ok_dialog; g_signal_connect (G_OBJECT (ok_button), "clicked", G_CALLBACK (on_button_ok_clicked), (gpointer) &button_data_ok); button_data_cancel.config = config; button_data_cancel.msg_dialog = cancel_dialog; g_signal_connect (G_OBJECT (cancel_button), "clicked", G_CALLBACK (on_button_cancel_clicked), (gpointer) &button_data_cancel); g_signal_connect (G_OBJECT (dialog), "delete_event", G_CALLBACK (on_dialog_close), (gpointer) &button_data_cancel); gtk_builder_connect_signals (builder, NULL); g_object_unref (G_OBJECT (builder)); return dialog; } void ibus_input_pad_setup_gtk_init (int *argc, char ***argv) { gtk_init (argc, argv); } gboolean ibus_input_pad_setup_gtk_dialog_run (GtkWidget *dialog) { if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK) { return TRUE; } return FALSE; } void ibus_input_pad_setup_gtk_dialog_destroy (GtkWidget *dialog) { gtk_widget_destroy (dialog); } ibus-input-pad-1.5.0/setup/setup-gtk.h000066400000000000000000000025171476730411000176220ustar00rootroot00000000000000/* vim:set et sts=4: */ /* ibus-input-pad - Input pad for IBus * Copyright (C) 2010-2011 Takao Fujiwara * Copyright (C) 2010-2011 Red Hat, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program 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 General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef __IBUS_INPUT_PAD_SETUP_GTK2_H__ #define __IBUS_INPUT_PAD_SETUP_GTK2_H__ #include #include #include "iconfig-gtk.h" void ibus_input_pad_setup_gtk_init (int *argc, char ***argv); GtkWidget * ibus_input_pad_setup_gtk_dialog_new (IBusInputPadConfig *config); gboolean ibus_input_pad_setup_gtk_dialog_run (GtkWidget *dialog); void ibus_input_pad_setup_gtk_dialog_destroy (GtkWidget *dialog); #endif ibus-input-pad-1.5.0/setup/setup-gtk.ui000066400000000000000000000441101476730411000200030ustar00rootroot00000000000000 0 Nothing 1 Custom 2 All 0 Nothing 1 Default IBus-Input-Pad Setup True vertical 10 12 True True vertical 12 True none True 12 12 12 True vertical True 12 6 True _Character Table Type: Whether you show the character table or not True right 0 True False True char_table_model 2 1 True _Keyboard Layout Type: Whether you show the keyboard layout or not True right 0 0 1 True False True layout_table_model 2 1 1 False False 0 True <b>Default Appearance</b> True 12 False False 0 True none True 12 12 12 12 True vertical True 12 6 False False 0 True <b>Keyboard Only Appearance</b> True True General False True vertical 10 True False 1 True About False 1 False False 0 True horizontal True end _Apply True True False False 0 _Cancel True True False False 1 _OK True True True False False 2 False False end 1 5 False True False center-on-parent dialog True question ok-cancel Confirm Are you sure to close Setup? True vertical 2 True horizontal end False end 0 5 False True False center-on-parent dialog True question ok-cancel Confirm Are you sure to close Setup without saving configure? True vertical 2 True horizontal end False end 0 IBus-Input-Pad Copyright (c) 2014 Takao Fujiwara Copyright (c) 2014 Red Hat, Inc. The input pad engine for IBus platform GPL http://code.google.com/p/input-pad/ Takao Fujiwara <takao.fujiwara1@gmail.com> translator_credits True