[gtkmm-documentation: 1/3] translate chapter 9,fix merge error.




commit feb689b6e9edc4223ed9cadb391d8d7b7c040669
Author: CCTV-1 <script tar gz gmail com>
Date:   Sun Dec 27 13:57:24 2020 +0800

    translate chapter 9,fix merge error.

 docs/tutorial/zh_CN/zh_CN.po | 2034 ++++++++++++++++++++++++------------------
 1 file changed, 1189 insertions(+), 845 deletions(-)
---
diff --git a/docs/tutorial/zh_CN/zh_CN.po b/docs/tutorial/zh_CN/zh_CN.po
index 3115ed9..f654aca 100644
--- a/docs/tutorial/zh_CN/zh_CN.po
+++ b/docs/tutorial/zh_CN/zh_CN.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: gtkmm-documentation master\n"
-"POT-Creation-Date: 2020-12-21 21:37+8000\n"
+"POT-Creation-Date: 2020-12-26 00:05+8000\n"
 "PO-Revision-Date: 2020-12-23 11:40+8000\n"
 "Last-Translator: XiangQun Luo <Script tar gz gmail com>\n"
 "Language-Team: Chinese (China) <i18n-zh googlegroups com>\n"
@@ -17,8 +17,7 @@ msgstr ""
 
 msgctxt "_"
 msgid "translator-credits"
-msgstr ""
-"译者积分"
+msgstr "译者积分"
 
 #: C/index-in.docbook:36
 msgid "Programming with <application>gtkmm</application> 4"
@@ -33,8 +32,8 @@ msgid ""
 "<firstname>Bernhard</firstname> <surname>Rieder</surname> <contrib>Chapter "
 "on \"Timeouts\".</contrib>"
 msgstr ""
-"<firstname>Bernhard</firstname> <surname>Rieder</surname>"
-"<contrib>编写\"Timeouts\"部分。</contrib>"
+"<firstname>Bernhard</firstname> <surname>Rieder</surname><contrib>编写"
+"\"Timeouts\"部分。</contrib>"
 
 #: C/index-in.docbook:48
 msgid ""
@@ -43,18 +42,17 @@ msgid ""
 "gtkmm's Source Code\".</contrib> <contrib>Chapter on \"Recent Files\".</"
 "contrib>"
 msgstr ""
-"<firstname>Jonathon</firstname> <surname>Jongsma</surname>"
-"<contrib>编写使用Cairo绘图章节。</contrib>"
-"<contrib>编写使用gtkmm源代码章节。</contrib>"
-"<contrib>编写\"最近的文件\"。</contrib>"
+"<firstname>Jonathon</firstname> <surname>Jongsma</surname><contrib>编写使用"
+"Cairo绘图章节。</contrib><contrib>编写使用gtkmm源代码章节。</"
+"contrib><contrib>编写\"最近的文件\"。</contrib>"
 
 #: C/index-in.docbook:55
 msgid ""
 "<firstname>Ole</firstname> <surname>Laursen</surname> <contrib>Parts of "
 "chapter on \"Internationalization\".</contrib>"
 msgstr ""
-"<firstname>Ole</firstname> <surname>Laursen</surname> "
-"<contrib>编写\"国际化\"章节的一部分。</contrib>"
+"<firstname>Ole</firstname> <surname>Laursen</surname> <contrib>编写\"国际化"
+"\"章节的一部分。</contrib>"
 
 #: C/index-in.docbook:60
 msgid ""
@@ -62,9 +60,8 @@ msgid ""
 "on \"Printing\".</contrib> <contrib>Parts of chapter on "
 "\"Internationalization\".</contrib>"
 msgstr ""
-"<firstname>Marko</firstname> <surname>Anastasov</surname> "
-"<contrib>编写\"打印\"章节。</contrib> "
-"<contrib>编写\"国际化\"章节的一部分。</contrib>"
+"<firstname>Marko</firstname> <surname>Anastasov</surname> <contrib>编写\"打印"
+"\"章节。</contrib> <contrib>编写\"国际化\"章节的一部分。</contrib>"
 
 #: C/index-in.docbook:66
 msgid ""
@@ -72,32 +69,32 @@ msgid ""
 "\"Build Structure\" of chapter on \"Wrapping C Libraries with gmmproc\".</"
 "contrib>"
 msgstr ""
-"<firstname>Daniel</firstname> <surname>Elstner</surname>"
-"编写《使用 gmmproc 封装 C 库》〈构建结构〉章节。"
+"<firstname>Daniel</firstname> <surname>Elstner</surname>编写《使用 gmmproc 封"
+"装 C 库》〈构建结构〉章节。"
 
 #: C/index-in.docbook:72
 msgid ""
 "<firstname>Chris</firstname> <surname>Vine</surname> <contrib>Chapter on "
 "\"Multi-threaded programs\".</contrib>"
 msgstr ""
-"<firstname>Chris</firstname> <surname>Vine</surname>"
-"<contrib>编写\"多线程编程\"章节。</contrib>"
+"<firstname>Chris</firstname> <surname>Vine</surname><contrib>编写\"多线程编程"
+"\"章节。</contrib>"
 
 #: C/index-in.docbook:77
 msgid ""
 "<firstname>David</firstname> <surname>King</surname> <contrib>Section on "
 "Gtk::Grid.</contrib>"
 msgstr ""
-"<firstname>David</firstname> <surname>King</surname>"
-"<contrib>编写Gtk::Grid部分。</contrib>"
+"<firstname>David</firstname> <surname>King</surname><contrib>编写Gtk::Grid部"
+"分。</contrib>"
 
 #: C/index-in.docbook:82
 msgid ""
 "<firstname>Pedro</firstname> <surname>Ferreira</surname> <contrib>Chapter on "
 "Keyboard Events.</contrib>"
 msgstr ""
-"<firstname>Pedro</firstname> <surname>Ferreira</surname>"
-"<contrib>编写键盘事件章节。</contrib>"
+"<firstname>Pedro</firstname> <surname>Ferreira</surname><contrib>编写键盘事件"
+"章节。</contrib>"
 
 #: C/index-in.docbook:87
 msgid ""
@@ -105,9 +102,8 @@ msgid ""
 "from gtkmm 3 to gtkmm 4.</contrib> <contrib>Chapter on \"Building "
 "applications\".</contrib>"
 msgstr ""
-"<firstname>Kjell</firstname> <surname>Ahlstedt</surname>"
-" <contrib>编写从gtkmm迁移到gtkmm4指南。</contrib> "
-"<contrib>编写\"构建应用\"章节。</contrib>"
+"<firstname>Kjell</firstname> <surname>Ahlstedt</surname> <contrib>编写从gtkmm"
+"迁移到gtkmm4指南。</contrib> <contrib>编写\"构建应用\"章节。</contrib>"
 
 #: C/index-in.docbook:98
 msgid ""
@@ -188,9 +184,10 @@ msgid ""
 "application> 4. All shown example programs are compatible with "
 "<application>gtkmm</application> 4, though."
 msgstr ""
-"本书介绍了<application>gtkmm</application>4, 但是有些部分还没有完成更新 "
-"以下是描述<application>gtkmm</application>3而不是<application>gtkmm</application>4的段落。"
-"不过显式的所有示例都与<application>gtkmm</application>4兼容。"
+"本书介绍了<application>gtkmm</application>4, 但是有些部分还没有完成更新 以下"
+"是描述<application>gtkmm</application>3而不是<application>gtkmm</"
+"application>4的段落。不过显式的所有示例都与<application>gtkmm</application>4"
+"兼容。"
 
 #: C/index-in.docbook:145
 msgid "gtkmm"
@@ -271,8 +268,8 @@ msgid ""
 "<application>gtkmm</application> involves less code compared to GTK, which "
 "uses prefixed function names and lots of cast macros."
 msgstr ""
-"<application>gtkmm</application> 比 GTK 的代码更加简短,GTK 使用了大量带前"
-"缀的函数名以及大量的转型宏。"
+"<application>gtkmm</application> 比 GTK 的代码更加简短,GTK 使用了大量带前缀"
+"的函数名以及大量的转型宏。"
 
 #: C/index-in.docbook:168
 msgid "<application>gtkmm</application> compared to Qt"
@@ -306,7 +303,8 @@ msgstr ""
 "代。它重复了大量的现存于标准库中的东西,比如容器、类型信息等等。最重要的是,"
 "Trolltech 修改了 C++ 语言以提供信号的功能,这样 Qt 的类无法很容易的与非 Qt 类"
 "共同使用。<application>gtkmm</application> 则可以使用标准 C++ 提供信号功能,"
-"而无需修改 C++ 语言。请看<ulink url=\"https://wiki.gnome.org/Projects/gtkmm/FAQ\";>常见问题</ulink>以了解具体差异。"
+"而无需修改 C++ 语言。请看<ulink url=\"https://wiki.gnome.org/Projects/gtkmm/";
+"FAQ\">常见问题</ulink>以了解具体差异。"
 
 #: C/index-in.docbook:176
 msgid "<application>gtkmm</application> is a wrapper"
@@ -328,9 +326,9 @@ msgstr ""
 "工具集的 C++ 封装。这种分离接口和实现的方式存在诸多优势。<application>gtkmm</"
 "application> 开发人员用了他们大量的时间来讨论如何让 <application>gtkmm</"
 "application> 提供一个最清晰的 API,而不必为模糊的技术细节尴尬的进行妥协。我们"
-"想其他的 C 程序员、Perl 程序员和 Python 程序员等等一样,对底层的 GTK 代码库"
-"进行了一点点贡献。因此,GTK 可以从比某个语言特定的工具集更广泛的用户群中获得"
-"好处,有更多的实现、更多的开发人员、更多的测试人员以及更多的用户。"
+"想其他的 C 程序员、Perl 程序员和 Python 程序员等等一样,对底层的 GTK 代码库进"
+"行了一点点贡献。因此,GTK 可以从比某个语言特定的工具集更广泛的用户群中获得好"
+"处,有更多的实现、更多的开发人员、更多的测试人员以及更多的用户。"
 
 #: C/index-in.docbook:185
 msgid "Installation"
@@ -346,7 +344,8 @@ msgid ""
 "application><application>-4.0</application>, you might first need to install "
 "these other packages."
 msgstr ""
-"在试图安装 <application>gtkmm</application><application>-4.0</application>之前,你必须已经安装了这些包。"
+"在试图安装 <application>gtkmm</application><application>-4.0</application>之"
+"前,你必须已经安装了这些包。"
 
 #: C/index-in.docbook:193
 msgid "<application>sigc++-3.0</application>"
@@ -464,8 +463,8 @@ msgid ""
 msgstr ""
 "如果你的发行版没提供预编译的 <application>gtkmm</application> 包,或者如果你"
 "想安装一个和发行版所提供的不同的版本,那么你也可以从源代码安装 "
-"<application>gtkmm</application>。可以从 <ulink url=\"https://download.gnome.org/";
-"sources/gtkmm/\"/> 中下载 <application>gtkmm</application> 的源代码。"
+"<application>gtkmm</application>。可以从 <ulink url=\"https://download.gnome.";
+"org/sources/gtkmm/\"/> 中下载 <application>gtkmm</application> 的源代码。"
 
 #: C/index-in.docbook:253
 msgid ""
@@ -476,8 +475,9 @@ msgid ""
 "application> version you've downloaded."
 msgstr ""
 "在安装了所有依赖的库后,下载 <application>gtkmm</application> 源代码、解压"
-"缩,并且切换到新创建的目录。<application>gtkmm</application>可以使用Meson构建。 "
-"参见你所下载的<application>gtkmm</application>源代码中的<filename>README</filename>。"
+"缩,并且切换到新创建的目录。<application>gtkmm</application>可以使用Meson构"
+"建。 参见你所下载的<application>gtkmm</application>源代码中的"
+"<filename>README</filename>。"
 
 #: C/index-in.docbook:260
 msgid ""
@@ -486,9 +486,9 @@ msgid ""
 "<command>sudo</command> command will allow you to enter the <literal>root</"
 "literal> password and have <literal>root</literal> status temporarily."
 msgstr ""
-"记住,在 Unix 或 Linux 操作系统上,你也许需要 <literal>root</literal> 权限以安装软件。"
-"<command>su</command>或者<command>sudo</command> 命令允许你输入 <literal>root</literal> 密码,"
-"并且临时拥有 <literal>root</literal> 权限。"
+"记住,在 Unix 或 Linux 操作系统上,你也许需要 <literal>root</literal> 权限以"
+"安装软件。<command>su</command>或者<command>sudo</command> 命令允许你输入 "
+"<literal>root</literal> 密码,并且临时拥有 <literal>root</literal> 权限。"
 
 #: C/index-in.docbook:267
 msgid ""
@@ -496,8 +496,9 @@ msgid ""
 "check to make sure all of the required dependencies are already installed. "
 "If you are missing any dependencies, it will exit and display an error."
 msgstr ""
-"<filename>configure</filename>脚本或者<command>meson</command>将会检查以确认所有必须的依赖软件包都已经正确的"
-"安装了。如果你遗漏了某个依赖软件包的话,它会退出并提示错误信息。"
+"<filename>configure</filename>脚本或者<command>meson</command>将会检查以确认"
+"所有必须的依赖软件包都已经正确的安装了。如果你遗漏了某个依赖软件包的话,它会"
+"退出并提示错误信息。"
 
 #: C/index-in.docbook:278
 #, no-wrap
@@ -516,10 +517,10 @@ msgid ""
 "Red Hat Linux systems you might use the <literal>--prefix</literal> option "
 "with configure, like so: <_:screen-1/>"
 msgstr ""
-"默认情况下,如果使用Autotools构建<application>gtkmm</application> 则其将会被安装在"
-" <filename>/usr/local</filename> 目录。在有些系统中,你也许需要安装到不同的位置。比如,在 "
-"Red Hat Linux 系统中,你也许需要使用 <literal>--prefix</literal> 选项进行配"
-"置,例如:<_:screen-1/>"
+"默认情况下,如果使用Autotools构建<application>gtkmm</application> 则其将会被"
+"安装在 <filename>/usr/local</filename> 目录。在有些系统中,你也许需要安装到不"
+"同的位置。比如,在 Red Hat Linux 系统中,你也许需要使用 <literal>--prefix</"
+"literal> 选项进行配置,例如:<_:screen-1/>"
 
 #: C/index-in.docbook:283
 msgid ""
@@ -564,11 +565,12 @@ msgid ""
 "Win32</link> appendix for Windows-specific installation instructions and "
 "notes."
 msgstr ""
-"GTK和<application>gtkmm</application> 被设计成在 Microsoft Windows 上也能"
-"很好地工作,而且开发者们鼓励在 win32 平台上使用它们。然而,还有没为 Wnidows "
-"平台的开发库提供标准的安装方法。请参阅 <ulink url=\"https://wiki.gnome.org/";
-"Projects/gtkmm/MSWindows\">Windows Intallation</ulink>或者 
<linklinkend=\"sec-windows-installation\"><application>gtkmm</application>"
-" and Win32</link> 以得到关于Windows相关的安装方法和注意事项。"
+"GTK和<application>gtkmm</application>被设计成在Microsoft Windows上也能很好"
+"地工作,而且开发者们鼓励在win32平台上使用它们。但是目前还有没为Windows平台"
+"的开发库提供标准的安装方法。请参阅 <ulink url=\"https://wiki.gnome.org/";
+"Projects/gtkmm/MSWindows\">Windows Intallation</ulink>或者<link linkend="
+"\"sec-windows-installation\"><application>gtkmm</application>和Win32</"
+"link>以得到关于Windows相关的安装方法和注意事项。"
 
 #: C/index-in.docbook:315
 msgid "Basics"
@@ -616,7 +618,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/base\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/base\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/base\">源代码</ulink>"
 
 #: C/index-in.docbook:334
 msgid "We will now explain each line of the example"
@@ -653,9 +656,11 @@ msgid ""
 "application> applications. The <methodname>create()</methodname> method for "
 "this object initializes <application>gtkmm</application>."
 msgstr ""
-"下一条语句: 
<_:programlisting-1/>创建一个<classname>Gtk::Application</classname>对象,将其储存在一个<classname>Glib::RefPtr</classname>智能指针中。"
-"所有的<application>gtkmm</application>应用都需要如此做。"
-"该对象的<methodname>create()</methodname>方法将初始化<application>gtkmm</application>。"
+"下一条语句: <_:programlisting-1/>创建一个<classname>Gtk::Application</"
+"classname>对象,将其储存在一个<classname>Glib::RefPtr</classname>智能指针中。"
+"所有的<application>gtkmm</application>应用都需要如此做。该对象的"
+"<methodname>create()</methodname>方法将初始化<application>gtkmm</"
+"application>。"
 
 #: C/index-in.docbook:352
 msgid ""
@@ -684,7 +689,6 @@ msgid ""
 msgstr ""
 "最后一行显示窗口并进入<application>gtkmm</application>主循环,当窗口被关闭。"
 "你的<function>main()</function>函数将会返回成功或者适当的错误码。"
-#. 之后关于argc与argv<的描述由于其在gtkmm4中被弃用了所以不进行翻译
 
 #: C/index-in.docbook:364
 #, no-wrap
@@ -707,10 +711,10 @@ msgid ""
 "the <literal>pkg-config</literal> invocation on the command line."
 msgstr ""
 "将源代码保存到 <literal>simple.cc</literal> 后,你可以使用 gcc 编译上面的程"
-"序:<_:programlisting-1/> 注意,你必须将 <literal>pkg-config</literal> 的调用包含"
-"在一对反单引号中。反单引号会导致其内的命令由 shell 执行,并且将命令的输出做为"
-"该命令行的一部分来使用。另外请注意,在命令行中<literal>simple.cc</literal>必须"
-"位于<literal>pkg-config</literal>调用之前。"
+"序:<_:programlisting-1/> 注意,你必须将 <literal>pkg-config</literal> 的调用"
+"包含在一对反单引号中。反单引号会导致其内的命令由 shell 执行,并且将命令的输出"
+"做为该命令行的一部分来使用。另外请注意,在命令行中<literal>simple.cc</"
+"literal>必须位于<literal>pkg-config</literal>调用之前。"
 
 #: C/index-in.docbook:379
 msgid "Headers and Linking"
@@ -728,9 +732,9 @@ msgid ""
 msgstr ""
 "虽然我们已经给出了这个简单的例子的编译命令,但是你最好还是使用 automake 和 "
 "autoconf 工具,就像 G. V. Vaughan 等在《Autoconf, Automake, Libtool》中所描述"
-"的那样。本书中用到的例子都包含在 <application>gtkmm-documentation</application> 包内,同时"
-"附有适当的编译构建的文件,所以我们以后不会再给出任何编译命令。你只需要找到恰"
-"当的目录然后键入 <literal>make</literal>。"
+"的那样。本书中用到的例子都包含在 <application>gtkmm-documentation</"
+"application> 包内,同时附有适当的编译构建的文件,所以我们以后不会再给出任何编"
+"译命令。你只需要找到恰当的目录然后键入 <literal>make</literal>。"
 
 #: C/index-in.docbook:383
 msgid ""
@@ -765,9 +769,9 @@ msgid ""
 "and defines MYAPP_LIBS and MYAPP_CFLAGS for use in your Makefile.am files."
 msgstr ""
 "然而,在标准的 configure.ac 中使用 <function>PKG_CHECK_MODULES()</function> "
-"宏,并且运行 autoconf 和 automake 后,这变的更加简单。例如:<_:programlisting-1/> "
-"这将会检查是否存在 gtkmm,并且定义了可以在你的 Makefile.am 文件中使用的 "
-"MYAPP_LIBS 和 MYAPP_CFLAGS 变量。"
+"宏,并且运行 autoconf 和 automake 后,这变的更加简单。例如:<_:"
+"programlisting-1/> 这将会检查是否存在 gtkmm,并且定义了可以在你的 Makefile."
+"am 文件中使用的 MYAPP_LIBS 和 MYAPP_CFLAGS 变量。"
 
 #: C/index-in.docbook:399
 msgid ""
@@ -779,11 +783,12 @@ msgid ""
 "break. There might be a future gtkmm-5.0 API which would install in parallel "
 "with gtkmm-4.0 without affecting existing applications."
 msgstr ""
-"gtkmm-4.0 是当前稳定 API 的名字。更早期的 API 叫做 gtkmm-2.4和gtkmm-3.0,如果需要的话它"
-"可以和 gtkmm-2.4 ,gtkmm-3.0 同时安装到系统。gtkmm-2.4 有许多版本,例如,gtkmm-2.10,还有多个版本gtkmm-3.0的api。"
-"注意,API 的名字并不会随着每个版本变化而发生变化,因为如果这个发生变化了,则意"
-"味着 API 和 ABI 不再同以前保持兼容。理论上,将来可以有 gtkmm-5.0 API 与现在"
-"的 gtkmm-4.0 同时安装到系统,而现有应用程序不会受到影响。"
+"gtkmm-4.0 是当前稳定 API 的名字。更早期的 API 叫做 gtkmm-2.4和gtkmm-3.0,如果"
+"需要的话它可以和 gtkmm-2.4 ,gtkmm-3.0 同时安装到系统。gtkmm-2.4 有许多版本,"
+"例如,gtkmm-2.10,还有多个版本gtkmm-3.0的api。注意,API 的名字并不会随着每个"
+"版本变化而发生变化,因为如果这个发生变化了,则意味着 API 和 ABI 不再同以前保"
+"持兼容。理论上,将来可以有 gtkmm-5.0 API 与现在的 gtkmm-4.0 同时安装到系统,"
+"而现有应用程序不会受到影响。"
 
 #: C/index-in.docbook:406
 msgid ""
@@ -798,8 +803,9 @@ msgid ""
 "software/autoconf/\">autoconf</ulink> and <ulink url=\"https://www.gnu.org/";
 "software/automake/\">automake</ulink>."
 msgstr ""
-"GNU网站上拥有更多<ulink url=\"https://www.gnu.org/software/autoconf/\";>autoconf</ulink>和"
-"<ulink url=\"https://www.gnu.org/software/automake/\";>automake</ulink>的相关信息。"
+"GNU网站上拥有更多<ulink url=\"https://www.gnu.org/software/autoconf/";
+"\">autoconf</ulink>和<ulink url=\"https://www.gnu.org/software/automake/";
+"\">automake</ulink>的相关信息。"
 
 #: C/index-in.docbook:412
 msgid ""
@@ -808,8 +814,9 @@ msgid ""
 "<filename>Makefile.example</filename> files in the <link linkend=\"chapter-"
 "building-applications\">Building applications</link> chapter."
 msgstr ""
-"如果你打算自己从小型应用程序开始试验,那么使用<link linkend=\"chapter-building-applications\">构建应用程序</link>"
-"章节的<filename>Makefile.example</filename>文件从MakeFile开始比较容易。"
+"如果你打算自己从小型应用程序开始试验,那么使用<link linkend=\"chapter-"
+"building-applications\">构建应用程序</link>章节的<filename>Makefile.example</"
+"filename>文件从MakeFile开始比较容易。"
 
 #: C/index-in.docbook:420 C/index-in.docbook:5869
 msgid "Widgets"
@@ -855,10 +862,12 @@ msgid ""
 "programlisting-2/>"
 msgstr ""
 "部件被安置在褚如 frame、notebook 这样的容器部件中,以一种部件包含部件的层次结"
-"构的形式。其中一些容器部件,像 <classname>Gtk::Grid</classname> 这样的容器部件是不可见的,它们只是被"
-"用来安置其它部件的。这里有一些示例代码,将两个 <classname>Gtk::Button</classname> 部件放到一个 "
-"<classname>Box</classname> 容器部件中:<_:programlisting-1/> 接下来是如何把这个包含两个按钮的 <classname>Gtk::Box</classname> "
-"添加到一个 <classname>Gtk::Frame</classname> 中,它包含一个可视的边框和标题:<_:programlisting-2/>"
+"构的形式。其中一些容器部件,像 <classname>Gtk::Grid</classname> 这样的容器部"
+"件是不可见的,它们只是被用来安置其它部件的。这里有一些示例代码,将两个 "
+"<classname>Gtk::Button</classname> 部件放到一个 <classname>Box</classname> 容"
+"器部件中:<_:programlisting-1/> 接下来是如何把这个包含两个按钮的 "
+"<classname>Gtk::Box</classname> 添加到一个 <classname>Gtk::Frame</classname> "
+"中,它包含一个可视的边框和标题:<_:programlisting-2/>"
 
 #: C/index-in.docbook:428
 msgid ""
@@ -897,10 +906,11 @@ msgid ""
 msgstr ""
 "尽管 <application>gtkmm</application> 部件实例拥有像其它 C++ 类那样的生存时间"
 "和作用域,<application>gtkmm</application> 还是有一些可选的节省时间的特性,接"
-"下来你会在接下来的一些例子中看到。<function>Gtk::make_managed()</function> 允许你创建一个新的部件并"
-"声明该部件由放置它的容器部件所拥有。这将允许你创建部件然后将其添加到容器中,而不必承担记住删除它的心智负担,"
-"因为当它的父容器被删除时它将被一并删除。如果你需要了解更多关于 <application>gtkmm</application> 内存管理技术的话,"
-"请看 <link linkend=\"chapter-memory\">内存管理</link> 章节。"
+"下来你会在接下来的一些例子中看到。<function>Gtk::make_managed()</function> 允"
+"许你创建一个新的部件并声明该部件由放置它的容器部件所拥有。这将允许你创建部件"
+"然后将其添加到容器中,而不必承担记住删除它的心智负担,因为当它的父容器被删除"
+"时它将被一并删除。如果你需要了解更多关于 <application>gtkmm</application> 内"
+"存管理技术的话,请看 <link linkend=\"chapter-memory\">内存管理</link> 章节。"
 
 #: C/index-in.docbook:449 C/index-in.docbook:4689 C/index-in.docbook:4933
 #: C/index-in.docbook:8092
@@ -916,7 +926,7 @@ msgid ""
 "can emit. To make a button click result in an action, we set up a "
 "<emphasis>signal handler</emphasis> to catch the button's \"clicked\" signal."
 msgstr ""
-"像大多数 GUI 工具集一样,<application>gtkmm</application> 是<emphasis>事件驱"
+"像大多数GUI工具包一样,<application>gtkmm</application> 是<emphasis>事件驱"
 "动</emphasis>的。当一个事件发生时,比如说一个鼠标按键被按下,那么所点击的部件"
 "就会<emphasis>发出</emphasis>一个合适的信号。每种部件都可以发出一套不同的信"
 "号。为了使这个按钮点击产生一个动作,我们可以设置一个<emphasis>信号处理函数"
@@ -939,8 +949,8 @@ msgid ""
 "programlisting-1/>"
 msgstr ""
 "<application>gtkmm</application> 使用 libsigc++ 来实现信号操作。下面这个例子"
-"演示怎样把 Gtk::Button 的“clicked” 信号连接到命名为“on_button_clicked”的信号处"
-"理函数上:<_:programlisting-1/>"
+"演示怎样把 Gtk::Button 的“clicked” 信号连接到命名为“on_button_clicked”的信号"
+"处理函数上:<_:programlisting-1/>"
 
 #: C/index-in.docbook:463
 msgid ""
@@ -974,12 +984,12 @@ msgid ""
 "rest of this section. But read on if you want to use languages other than "
 "English in your application."
 msgstr ""
-"你一定很惊讶得知 <application>gtkmm</application> 没有在它的接口上使用 "
-"<classname>std::string</classname>,相反,它使用了 <classname>Glib::ustring</"
-"classname>。 <classname>Glib::ustring</classname>与 <classname>std::string</"
-"classname> 非常相似,甚至在某些场合,你甚至可以把它当成 <classname>std::"
-"string</classname> 来使用,而忽略本节后面的内容。但是如果你希望在你的应用程序"
-"中使用英语以外的语言的话,那么请继续读下去。"
+"当你得知<application>gtkmm</application>没有在它的接口上使用<classname>std::str"
+"ing</classname>而是使用了<classname>Glib::ustring</classname>的时候一定很惊讶。"
+"<classname>Glib::ustring</classname>与<classname>std::string</classname>非常相"
+"似,甚至在某些场合,你甚至可以把它当成<classname>std::string</classname>来使用"
+",而忽略本节后面的内容。但是如果你希望在你的应用程序中使用英语以外的语言的话,那"
+"么请继续读下去。"
 
 #: C/index-in.docbook:472
 msgid ""
@@ -993,10 +1003,11 @@ msgid ""
 "with automatic conversions to and from std::string."
 msgstr ""
 "std::string 对每个字符使用8位编码,但是这对于像阿拉伯语、汉语和日语这样的语言"
-"来说,8位是不够的。尽管<ulink url=\"http://www.unicode.org/\";>Unicode 协会</ulink>已经详细定义了这些语言的编码,"
-"但是C和C++尚未为UTF-8编码提供任何标准化的Unicode支持。GTK 和 GNOME 采用 UTF-8 编码来实现 "
-"Unicode,这就是 Glib::ustring 所包装的东西。它提供了和 std::string 几乎相同的"
-"接口,以及和 std::string 的自动类型转换的功能。"
+"来说,8位是不够的。尽管<ulink url=\"http://www.unicode.org/\";>Unicode 协会</"
+"ulink>已经详细定义了这些语言的编码,但是C和C++尚未为UTF-8编码提供任何标准化的"
+"Unicode支持。GTK 和 GNOME 采用 UTF-8 编码来实现 Unicode,这就是 Glib::"
+"ustring 所包装的东西。它提供了和 std::string 几乎相同的接口,以及和 std::"
+"string 的自动类型转换的功能。"
 
 #: C/index-in.docbook:477
 msgid ""
@@ -1057,7 +1068,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/glibmm/unstable/classGlib_1_1ustring.";
 "html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/glibmm/unstable/classGlib_1_1ustring.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/glibmm/unstable/classGlib_1_1ustring.";
+"html\">参考</ulink>"
 
 #: C/index-in.docbook:485
 msgid ""
@@ -1103,9 +1115,9 @@ msgid ""
 "<function>gobj()</function> function to obtain a pointer to the underlying C "
 "instance. For example: <_:programlisting-1/>"
 msgstr ""
-"要用 C 函数使用一个 <application>gtkmm</application> 实例需要一个 C <classname>GObject</classname> "
-"实例,使用C++的<function>gobj()</function>接口函数可以得到一个底层 GObject 实例的指"
-"针。例如:<_:programlisting-1/>"
+"要用 C 函数使用一个 <application>gtkmm</application> 实例需要一个 C "
+"<classname>GObject</classname> 实例,使用C++的<function>gobj()</function>接口"
+"函数可以得到一个底层 GObject 实例的指针。例如:<_:programlisting-1/>"
 
 #: C/index-in.docbook:514
 #, no-wrap
@@ -1137,14 +1149,16 @@ msgid ""
 "<function>Gtk::manage()</function> has not been called on it (which includes "
 "if it was created with <function>Gtk::make_managed()</function>), or"
 msgstr ""
-"并未在其上调用<function>Gtk::manage()</function>(包括使用<function>Gtk::make_managed()</function>创建的) ,或者"
+"并未在其上调用<function>Gtk::manage()</function>(包括使用<function>Gtk::"
+"make_managed()</function>创建的) ,或者"
 
 #: C/index-in.docbook:524
 msgid ""
 "<function>Gtk::manage()</function> was called on it, but it was never added "
 "to, or was later removed from, its parent."
 msgstr ""
-"在其上调用了<function>Gtk::manage()</function>,但是从未将其加入到父项中,也从未将其从父项中删除。"
+"在其上调用了<function>Gtk::manage()</function>,但是从未将其加入到父项中,也"
+"从未将其从父项中删除。"
 
 #: C/index-in.docbook:508
 msgid ""
@@ -1158,10 +1172,12 @@ msgid ""
 "instances to each other. Don't delete the C++ instance before you want the C "
 "instance to die."
 msgstr ""
-"要从C的<classname>GObject</classname>实例获得一个<application>gtkmm</application>,请使用许多个<function>Glib::wrap()</function>"
-"函数的其中一个重载。除非你将可选的<parameter>take_copy</parameter>参数设置为<literal>true</literal>,否则C实例的引用计数将不会增加。"
-"例如:<_:programlisting-1/> 如果<_:itemizedlist-2/> <function>Glib::wrap()</function>将C和C++示例相互绑定,则应明确删除C++包装器。"
-"请不要在C示例死亡前删除C++实例。"
+"要从C的<classname>GObject</classname>实例获得一个<application>gtkmm</"
+"application>,请使用许多个<function>Glib::wrap()</function>函数的其中一个重"
+"载。除非你将可选的<parameter>take_copy</parameter>参数设置为<literal>true</"
+"literal>,否则C实例的引用计数将不会增加。例如:<_:programlisting-1/> 如果<_:"
+"itemizedlist-2/> <function>Glib::wrap()</function>将C和C++示例相互绑定,则应"
+"明确删除C++包装器。请不要在C示例死亡前删除C++实例。"
 
 #: C/index-in.docbook:529
 msgid ""
@@ -1170,8 +1186,9 @@ msgid ""
 "wrap()</function> overloads that return a <classname>Glib::RefPtr</"
 "classname>."
 msgstr ""
-"在所有其他情况下,当删除对C实例的最后一个引用时,C++实例将会自动被删除。这包括所有的<function>Glib::wrap()</function>"
-"所返回的<classname>Glib::RefPtr</classname>。"
+"在所有其他情况下,当删除对C实例的最后一个引用时,C++实例将会自动被删除。这包"
+"括所有的<function>Glib::wrap()</function>所返回的<classname>Glib::RefPtr</"
+"classname>。"
 
 #: C/index-in.docbook:536
 msgid "Hello World in <application>gtkmm</application>"
@@ -1191,7 +1208,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/helloworld\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/helloworld\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/helloworld\">源代码</ulink>"
 
 #: C/index-in.docbook:545
 msgid ""
@@ -1288,8 +1306,8 @@ msgid ""
 "Next we call the Button's <methodname>set_margin()</methodname> method. This "
 "sets the amount of space around the button."
 msgstr ""
-"接下来调用 Button 类的 <methodname>set_margin()</methodname> 方法。这将设"
-"置按钮周围空间的大小。"
+"接下来调用 Button 类的 <methodname>set_margin()</methodname> 方法。这将设置按"
+"钮周围空间的大小。"
 
 #: C/index-in.docbook:603
 msgid ""
@@ -1307,8 +1325,9 @@ msgid ""
 "<literal>m_button</literal> in the Window. The <methodname>set_child()</"
 "methodname> method places the Widget in the Window."
 msgstr ""
-"接下来调用 Windows 类的 <methodname>set_child()</methodname> 方法将<literal>m_button</literal>"
-"放入窗口。<methodname>set_child()</methodname>方法会将部件放入窗口中。"
+"接下来调用 Windows 类的 <methodname>set_child()</methodname> 方法将"
+"<literal>m_button</literal>放入窗口。<methodname>set_child()</methodname>方法"
+"会将部件放入窗口中。"
 
 #: C/index-in.docbook:614
 msgid ""
@@ -1340,9 +1359,9 @@ msgid ""
 "Application</classname>. Every <application>gtkmm</application> program must "
 "have one of these."
 msgstr ""
-"我们首先实例化一个储存在名为 <literal>app</literal> 的<classname>RefPtr</classname>智能指针对象,它的类型为 "
-"<classname>Gtk::Application</classname> 。每一个 <application>gtkmm</application> 程"
-"序都有这样的一个东西。"
+"我们首先实例化一个储存在名为 <literal>app</literal> 的<classname>RefPtr</"
+"classname>智能指针对象,它的类型为 <classname>Gtk::Application</classname> 。"
+"每一个 <application>gtkmm</application> 程序都有这样的一个东西。"
 
 #: C/index-in.docbook:631
 msgid ""
@@ -1358,11 +1377,12 @@ msgid ""
 "then finish."
 msgstr ""
 "接着我们创建了 <classname>HelloWorld</classname> 类的对象,它的构造函数没有参"
-"数,当然,它现在还不是可视的。当我们调用<methodname>Gtk::Application::run()</methodname>并给它提供一个 "
-"helloworld 窗口和命令行参数时,它将显示这个窗口并进入 <application>gtkmm</"
-"application><emphasis>消息循环</emphasis>。在消息循环中,<application>gtkmm</"
-"application> 是空闲的,它等待用户的操作并作出相应的反应。当用户关闭窗口时,"
-"<methodname>run()</methodname> 函数将返回,导致<function>main()</function>函数的最后一行将被执行。然后程序就结束了。"
+"数,当然,它现在还不是可视的。当我们调用<methodname>Gtk::Application::run()</"
+"methodname>并给它提供一个 helloworld 窗口和命令行参数时,它将显示这个窗口并进"
+"入 <application>gtkmm</application><emphasis>消息循环</emphasis>。在消息循环"
+"中,<application>gtkmm</application> 是空闲的,它等待用户的操作并作出相应的反"
+"应。当用户关闭窗口时,<methodname>run()</methodname> 函数将返回,导致"
+"<function>main()</function>函数的最后一行将被执行。然后程序就结束了。"
 
 #: C/index-in.docbook:640
 msgid ""
@@ -1370,8 +1390,8 @@ msgid ""
 "use the command-line parameters. It's not necessary to pass them to "
 "<methodname>run()</methodname>."
 msgstr ""
-"就像我们之前显示的简单示例一样,这个 Hello World 程序不实用命令行参数。"
-"不需要将其传递给<methodname>run()</methodname>。"
+"就像我们之前显示的简单示例一样,这个 Hello World 程序不实用命令行参数。不需要"
+"将其传递给<methodname>run()</methodname>。"
 
 #: C/index-in.docbook:649
 msgid "Changes in <application>gtkmm</application> 3"
@@ -1390,12 +1410,14 @@ msgid ""
 "compatibility. If you never used the <application>gtkmm</application>-2.4 "
 "API then you can safely ignore this chapter."
 msgstr ""
-"<application>gtkmm</application>-3.0是<application>gtkmm</application> API的旧版本它依旧能与"
-"<application>gtkmm</application>-2.4和新的<application>gtkmm</application>-4.0 API并行安装。"
-"<application>gtkmm</application>-2.4 API的最新版本是<application>gtkmm</application> 2.24。"
-"<application>gtkmm</application>3于<application>gtkmm</application>2之间并没有重大的改变,但确实存在"
-"一些微小的变动,这些变动导致无法做到令他们保持二进制兼容。"
-"如果你从未用过<application>gtkmm</application>-2.4 API 则你可以放心的忽略本章。"
+"<application>gtkmm</application>-3.0是<application>gtkmm</application> API的"
+"旧版本它依旧能与<application>gtkmm</application>-2.4和新的"
+"<application>gtkmm</application>-4.0 API并行安装。<application>gtkmm</"
+"application>-2.4 API的最新版本是<application>gtkmm</application> 2.24。"
+"<application>gtkmm</application>3于<application>gtkmm</application>2之间并没"
+"有重大的改变,但确实存在一些微小的变动,这些变动导致无法做到令他们保持二进制"
+"兼容。如果你从未用过<application>gtkmm</application>-2.4 API 则你可以放心的忽"
+"略本章。"
 
 #: C/index-in.docbook:653
 msgid ""
@@ -1405,8 +1427,10 @@ msgid ""
 "config check should ask for <literal>gtkmm-3.0</literal> rather than "
 "<literal>gtkmm-2.4</literal>."
 msgstr ""
-"<application>gtkmm</application>3库调用<literal>libgtkmm-3.0</literal>而不是<literal>libgtkmm-2.4</literal> "
-"并将其的头文件安装于类似的目录下,所以你的pkg-config应该检索<literal>gtkmm-3.0</literal>而不是<literal>gtkmm-2.4</literal>。"
+"<application>gtkmm</application>3库调用<literal>libgtkmm-3.0</literal>而不是"
+"<literal>libgtkmm-2.4</literal> 并将其的头文件安装于类似的目录下,所以你的"
+"pkg-config应该检索<literal>gtkmm-3.0</literal>而不是<literal>gtkmm-2.4</"
+"literal>。"
 
 #: C/index-in.docbook:656
 msgid "<application>gtkmm</application> 3 added some new classes:"
@@ -1418,8 +1442,9 @@ msgid ""
 "classname>, <classname>Gtk::AppChooserDialog</classname> allow the user to "
 "select an installed application to open a particular type of content."
 msgstr ""
-"<classname>Gtk::AppChooser</classname>,<classname>Gtk::AppChooserButton</classname>"
-",<classname>Gtk::AppChooserDialog</classname>允许用户选择已安装的应用程序用以打开特定类型的内容。"
+"<classname>Gtk::AppChooser</classname>,<classname>Gtk::AppChooserButton</"
+"classname>,<classname>Gtk::AppChooserDialog</classname>允许用户选择已安装的应"
+"用程序用以打开特定类型的内容。"
 
 #: C/index-in.docbook:660
 msgid ""
@@ -1428,8 +1453,9 @@ msgid ""
 "Table</classname>. It arranges its children according to properties of those "
 "children rather than its own layout details."
 msgstr ""
-"<classname>Gtk::Grid</classname>是一个新的容器部件他将在未来完全替换<classname>Gtk::Box</classname>和"
-"<classname>Gtk::Table</classname>。它根据它的子项的属性而不是自身的布局属性对子项进行排列。"
+"<classname>Gtk::Grid</classname>是一个新的容器部件他将在未来完全替换"
+"<classname>Gtk::Box</classname>和<classname>Gtk::Table</classname>。它根据它"
+"的子项的属性而不是自身的布局属性对子项进行排列。"
 
 #: C/index-in.docbook:661
 msgid ""
@@ -1437,8 +1463,9 @@ msgid ""
 "than <classname>Gtk::CheckButton</classname>. It may be useful, for "
 "instance, when allowing users to activate hardware."
 msgstr ""
-"与<classname>Gtk::CheckButton</classname>相比<classname>Gtk::Switch</classname>更明确的显示开/关状态。"
-"例如,在允许用户激活硬件的时候,他可能很有用。"
+"与<classname>Gtk::CheckButton</classname>相比<classname>Gtk::Switch</"
+"classname>更明确的显示开/关状态。例如,在允许用户激活硬件的时候,他可能很有"
+"用。"
 
 #: C/index-in.docbook:664
 msgid ""
@@ -1446,8 +1473,9 @@ msgid ""
 "API, which you will probably encounter when porting code that used "
 "<application>gtkmm</application>-2.4. Here is a short list:"
 msgstr ""
-"<application>gtkmm</application>3还对API进行了一些小的变更,在移植<application>gtkmm</application>-2.4"
-"的代码的时候你可能会遇到这些变更。这是一个简短的清单:"
+"<application>gtkmm</application>3还对API进行了一些小的变更,在移植"
+"<application>gtkmm</application>-2.4的代码的时候你可能会遇到这些变更。这是一"
+"个简短的清单:"
 
 #: C/index-in.docbook:669
 msgid ""
@@ -1457,16 +1485,18 @@ msgid ""
 "can be used to specify more details of how the <classname>CellRenderer</"
 "classname>s are arranged and aligned."
 msgstr ""
-"<classname>Gtk::IconView</classname>, 
<classname>Gtk::TreeView::Column</classname>和<classname>Gtk::ComboBox</classname>"
-"使用<classname>Gtk::CellLayout</classname>,现在有<classname>Gtk::CellArea</classname>可以用于指示<classname>CellRenderer</classname>"
-"的排列与对齐方式的详情。"
+"<classname>Gtk::IconView</classname>, <classname>Gtk::TreeView::Column</"
+"classname>和<classname>Gtk::ComboBox</classname>使用<classname>Gtk::"
+"CellLayout</classname>,现在有<classname>Gtk::CellArea</classname>可以用于指"
+"示<classname>CellRenderer</classname>的排列与对齐方式的详情。"
 
 #: C/index-in.docbook:671
 msgid ""
 "Gtk::ComboBox now derives from CellLayout, allowing easier layout and "
 "alignment of its <classname>Gtk::CellRenderer</classname>s."
 msgstr ""
-"Gtk::ComboBox现在从CellLayout派生,从而使更容易对<classname>Gtk::CellRenderer</classname>进行布局与对齐。"
+"Gtk::ComboBox现在从CellLayout派生,从而使更容易对<classname>Gtk::"
+"CellRenderer</classname>进行布局与对齐。"
 
 #: C/index-in.docbook:673
 msgid ""
@@ -1474,8 +1504,9 @@ msgid ""
 "and <classname>Gdk::Cursor</classname> are now used via <classname>Glib::"
 "RefPtr</classname>."
 msgstr ""
-"<classname>Gtk::Adjustment</classname>和<classname>Gtk::IconSet</classname>类和<classname>Gdk::Cursor</classname>类"
-"现在通过<classname>Glib::RefPtr</classname>使用。"
+"<classname>Gtk::Adjustment</classname>和<classname>Gtk::IconSet</classname>类"
+"和<classname>Gdk::Cursor</classname>类现在通过<classname>Glib::RefPtr</"
+"classname>使用。"
 
 #: C/index-in.docbook:675
 msgid ""
@@ -1491,9 +1522,10 @@ msgstr ""
 "<classname>Gtk::Box</classname>, <classname>Gtk::ButtonBox</classname>,"
 "<classname>Gtk::IconView</classname>, <classname>Gtk::Paned</classname>, "
 "<classname>Gtk::ProgressBar</classname>, <classname>Gtk::ScaleButton</"
-"classname>, <classname>Gtk::Scrollbar</classname>和<classname>Gtk::Separator</classname>"
-"现在从<classname>Gtk::Orientable</classname>派生,允许在不使用派生类(例如<classname>Gtk::HBox</classname>)"
-"的情况指定其方向(垂直或者水平)。"
+"classname>, <classname>Gtk::Scrollbar</classname>和<classname>Gtk::"
+"Separator</classname>现在从<classname>Gtk::Orientable</classname>派生,允许在"
+"不使用派生类(例如<classname>Gtk::HBox</classname>)的情况指定其方向(垂直或者水"
+"平)。"
 
 #: C/index-in.docbook:678
 msgid ""
@@ -1504,8 +1536,9 @@ msgid ""
 "set_scroll_adjustments signal."
 msgstr ""
 "<classname>Gtk::IconView</classname>, <classname>Gtk::TextView</classname>, "
-"<classname>Gtk::TreeView</classname>和其他部件派生自Scrollable而不使用他们自己的方法,"
-"例如<methodname>get_vadjustment()</methodname>拥有自己的set_scroll_adjustments信号。"
+"<classname>Gtk::TreeView</classname>和其他部件派生自Scrollable而不使用他们自"
+"己的方法,例如<methodname>get_vadjustment()</methodname>拥有自己的"
+"set_scroll_adjustments信号。"
 
 #: C/index-in.docbook:680
 msgid ""
@@ -1515,8 +1548,8 @@ msgid ""
 "CssProvider</classname>."
 msgstr ""
 "<classname>Gtk::Style</classname>和<classname>Gtk::Rc</classname>已被删除,由"
-"<classname>Gtk::StyleContext</classname>和<classname>Gtk::StyleProvider</classname>替换,例如"
-"<classname>Gtk::CssProvider</classname>。"
+"<classname>Gtk::StyleContext</classname>和<classname>Gtk::StyleProvider</"
+"classname>替换,例如<classname>Gtk::CssProvider</classname>。"
 
 #: C/index-in.docbook:682
 msgid ""
@@ -1525,8 +1558,9 @@ msgid ""
 "Context</classname> and does not require you to call <methodname>Cairo::"
 "Context::clip()</methodname>."
 msgstr ""
-"Widget::on_expose_event()被Widget::on_draw()取代,通过提供的<classname>Cairo::Context</classname>使用cairomm进行绘制,"
-"并且不需要你自己调用<methodname>Cairo::Context::clip()</methodname>。"
+"Widget::on_expose_event()被Widget::on_draw()取代,通过提供的"
+"<classname>Cairo::Context</classname>使用cairomm进行绘制,并且不需要你自己调"
+"用<methodname>Cairo::Context::clip()</methodname>。"
 
 #: C/index-in.docbook:684
 msgid ""
@@ -1534,29 +1568,31 @@ msgid ""
 "adding an alpha component for opacity. <classname>Colormap</classname> was "
 "removed, along with its awkward use to allocate colors."
 msgstr ""
-"<classname>Color</classname>被<classname>Gdk::RGBA</classname>替代,添加alpha分量以支持透明度。"
-"<classname>Colormap</classname>与其笨拙的颜色分配方式一并被删除。"
+"<classname>Color</classname>被<classname>Gdk::RGBA</classname>替代,添加alpha"
+"分量以支持透明度。<classname>Colormap</classname>与其笨拙的颜色分配方式一并被"
+"删除。"
 
 #: C/index-in.docbook:686
 msgid ""
 "<classname>Gdk::Pixmap</classname> and <classname>Gdk::Bitmap</classname> "
 "were removed in favour of <classname>Gdk::Pixbuf</classname>."
 msgstr ""
-"<classname>Gdk::Pixmap</classname>和<classname>Gdk::Bitmap</classname>现在被<classname>Gdk::Pixbuf</classname>所取代。"
+"<classname>Gdk::Pixmap</classname>和<classname>Gdk::Bitmap</classname>现在被"
+"<classname>Gdk::Pixbuf</classname>所取代。"
 
 #: C/index-in.docbook:688
 msgid ""
 "<classname>Gdk::Drawable</classname> was removed, with its methods moving "
 "into <classname>Gdk::Window</classname>."
 msgstr ""
-"<classname>Gdk::Drawable</classname>被删除,与其有关的方法被移动到了<classname>Gdk::Window</classname>。"
+"<classname>Gdk::Drawable</classname>被删除,与其有关的方法被移动到了"
+"<classname>Gdk::Window</classname>。"
 
 #: C/index-in.docbook:690
 msgid ""
 "We now use std::vector in several methods instead of the intermediate "
 "*Handle types to make the API clearer."
-msgstr ""
-"我们现在使用std::vector而不是使用中间类型(*Handle)以使API更加的清晰。"
+msgstr "我们现在使用std::vector而不是使用中间类型(*Handle)以使API更加的清晰。"
 
 #: C/index-in.docbook:695
 msgid ""
@@ -1564,7 +1600,8 @@ msgid ""
 "though there have been new deprecations in later <application>gtkmm</"
 "application> 3.x versions."
 msgstr ""
-"在<application>gtkmm</application> 3.0中我们删除了所有弃用的API,尽管在<application>gtkmm</application> 3.x版本中出现了新的被弃用的AP。I"
+"在<application>gtkmm</application> 3.0中我们删除了所有弃用的API,尽管在"
+"<application>gtkmm</application> 3.x版本中出现了新的被弃用的API。"
 
 #: C/index-in.docbook:697
 msgid ""
@@ -1577,16 +1614,18 @@ msgid ""
 "PortingToGtkmm3\">gtkmm 3 porting wiki page</ulink> for more details."
 msgstr ""
 "将源代码迁移到<application>gtkmm</application>-3.0的第一步,你应该通过定义"
-"GTKMM_DISABLE_DEPRECATED宏以检查你是否使用了在<application>gtkmm</application>-2.4中被弃用"
-"的API,然后删除他们。有一些autotools宏可以在编译时帮助你通过构建。"
-"访问<ulink url=\"https://wiki.gnome.org/Projects/gtkmm/PortingToGtkmm3\";>gtkmm3移植Wiki</ulink>了解更多详情。"
+"GTKMM_DISABLE_DEPRECATED宏以检查你是否使用了在<application>gtkmm</"
+"application>-2.4中被弃用的API,然后删除他们。有一些autotools宏可以在编译时帮助"
+"你通过构建。访问<ulink url=\"https://wiki.gnome.org/Projects/gtkmm/";
+"PortingToGtkmm3\">gtkmm3移植Wiki</ulink>了解更多详情。"
 
 #: C/index-in.docbook:702
 msgid ""
 "Changes in <application>gtkmm</application>-4.0 and "
 "<application>glibmm-2.68</application>"
 msgstr ""
-"<application>gtkmm</application>-4.0和<application>glibmm-2.68</application>中的变更。"
+"<application>gtkmm</application>-4.0和<application>glibmm-2.68</application>"
+"中的变更。"
 
 #: C/index-in.docbook:704
 msgid ""
@@ -1601,12 +1640,13 @@ msgid ""
 "compatibility. If you never used the <application>gtkmm</application>-3.0 "
 "API then you can safely ignore this chapter."
 msgstr ""
-"<application>gtkmm</application>-4.0是<application>gtkmm</application> API的新版本。它可以与"
-"较早发行的<application>gtkmm</application>-2.4和<application>gtkmm</application>-3.0并行安装。"
-"<application>gtkmm</application>-3.0 API的最新版本是<application>gtkmm</application> 3.24。"
-"<application>gtkmm</application> 4与<application>gtkmm</application> 3没有根本性的区别,"
-"虽然有些变更但是保持了二进制兼容。如果你从未使用过<application>gtkmm</application>-3.0 API则你"
-"可以放心的忽略本章。"
+"<application>gtkmm</application>-4.0是<application>gtkmm</application> API的"
+"新版本。它可以与较早发行的<application>gtkmm</application>-2.4和"
+"<application>gtkmm</application>-3.0并行安装。<application>gtkmm</"
+"application>-3.0 API的最新版本是<application>gtkmm</application> 3.24。"
+"<application>gtkmm</application> 4与<application>gtkmm</application> 3没有根"
+"本性的区别,虽然有些变更但是保持了二进制兼容。如果你从未使用过"
+"<application>gtkmm</application>-3.0 API则你可以放心的忽略本章。"
 
 #: C/index-in.docbook:712
 msgid ""
@@ -1616,9 +1656,10 @@ msgid ""
 "<application>pkg-config</application> check should ask for "
 "<literal>gtkmm-4.0</literal> rather than <literal>gtkmm-3.0</literal>."
 msgstr ""
-"<application>gtkmm</application> 4库调用<literal>libgtkmm-4.0</literal>而不是<literal>libgtkmm-3.0</literal>,"
-"并将其的头文件安装于类似的目录下,所以你的<application>pkg-config</application>应该检索<literal>gtkmm-4.0</literal>"
-"而不是<literal>gtkmm-3.0</literal>。"
+"<application>gtkmm</application> 4库调用<literal>libgtkmm-4.0</literal>而不是"
+"<literal>libgtkmm-3.0</literal>,并将其的头文件安装于类似的目录下,所以你的"
+"<application>pkg-config</application>应该检索<literal>gtkmm-4.0</literal>而不"
+"是<literal>gtkmm-3.0</literal>。"
 
 #: C/index-in.docbook:718
 msgid ""
@@ -1635,19 +1676,24 @@ msgid ""
 "<function>Glib::init()</function> or <methodname>Gtk::Application::create()</"
 "methodname>."
 msgstr ""
-"<application>gtkmm</application>-4.0与<application>glibmm-2.68</application>结合使用,将设置"
-"程序的全局语言环境。较旧的<application>glibmm-2.4</application>不会这样做,而<application>gtkmm</application>-3.0"
-"只在一定程度上做到了。简而言之,如果你的<application>gtkmm</application>-3.0应用包涵了对<function>std::locale::global(std::locale(\"\"))</function>"
-"的调用,则你大概可以将其删除。如果你不希望<application>glibmm</application>或者<application>gtkmm</application>为你"
-"设置程序的全局语言环境,则应该在调用任何<function>Glib::init()</function>函数或<methodname>Gtk::Application::create()</methodname>方法之前"
-"添加对<function>Glib::set_init_to_users_preferred_locale(false)</function>的调用。"
+"<application>gtkmm</application>-4.0与<application>glibmm-2.68</application>"
+"结合使用,将设置程序的全局语言环境。较旧的<application>glibmm-2.4</"
+"application>不会这样做,而<application>gtkmm</application>-3.0只在一定程度上"
+"做到了。简而言之,如果你的<application>gtkmm</application>-3.0应用包涵了对"
+"<function>std::locale::global(std::locale(\"\"))</function>的调用,则你大概率"
+"可以直接将其删除。如果你不希望<application>glibmm</application>或者"
+"<application>gtkmm</application>为你设置程序的全局语言环境,则应该在调用任何"
+"<function>Glib::init()</function>函数或<methodname>Gtk::Application::"
+"create()</methodname>方法之前添加对<function>Glib::"
+"set_init_to_users_preferred_locale(false)</function>的调用。"
 
 #: C/index-in.docbook:728
 msgid ""
 "<ulink url=\"http://developer.gnome.org/glibmm/unstable/namespaceGlib.html";
 "\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/glibmm/unstable/namespaceGlib.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/glibmm/unstable/namespaceGlib.html\";>"
+"参考</ulink>"
 
 #: C/index-in.docbook:730
 msgid ""
@@ -1655,15 +1701,16 @@ msgid ""
 "application>-3.0 and <application>gtkmm</application>-4.0. The following "
 "lists are not complete."
 msgstr ""
-"<application>gtkmm</application>-3.0和<application>gtkmm</application>-4.0之间有很多不同之处。"
-"以下是不完整的列表。"
+"<application>gtkmm</application>-3.0和<application>gtkmm</application>-4.0之"
+"间有很多不同之处。以下是不完整的列表。"
 
 #: C/index-in.docbook:733
 msgid ""
 "Some new classes were added in <application>gtkmm</application> 4 and "
 "<application>glibmm</application> 2.68:"
 msgstr ""
-"在<application>gtkmm</application> 4和<application>glibmm</application> 2.68中添加了一些新的类:"
+"在<application>gtkmm</application> 4和<application>glibmm</application> 2.68"
+"中添加了一些新的类:"
 
 #: C/index-in.docbook:736
 msgid ""
@@ -1671,8 +1718,9 @@ msgid ""
 "classname>: These classes are needed only for writing custom widgets. See "
 "the <link linkend=\"sec-custom-widgets\">Custom Widgets</link> section."
 msgstr ""
-"<classname>Glib::ExtraClassInit</classname>和<classname>Gtk::Snapshot</classname>:这些类"
-"只用于编写自定义的窗口小部件。参见<link linkend=\"sec-custom-widgets\">自定义部件</link>小节。"
+"<classname>Glib::ExtraClassInit</classname>和<classname>Gtk::Snapshot</"
+"classname>:这些类只用于编写自定义的窗口小部件。参见<link linkend=\"sec-"
+"custom-widgets\">自定义部件</link>小节。"
 
 #: C/index-in.docbook:739
 msgid ""
@@ -1699,7 +1747,8 @@ msgid ""
 "<classname>Gdk::Window</classname> has been renamed to <classname>Gdk::"
 "Surface</classname>. (<classname>Gtk::Window</classname> keeps its name.)"
 msgstr ""
-"<classname>Gdk::Window</classname>被重命名为<classname>Gdk::Surface</classname>(<classname>Gtk::Window</classname>名称保持不变)。"
+"<classname>Gdk::Window</classname>被重命名为<classname>Gdk::Surface</"
+"classname>(<classname>Gtk::Window</classname>名称保持不变)。"
 
 #: C/index-in.docbook:747
 msgid ""
@@ -1707,22 +1756,25 @@ msgid ""
 "classname> are new. <classname>Gdk::DrawingContext</classname> has been "
 "removed."
 msgstr ""
-"新添加了<classname>Gdk::DrawContext</classname>和<classname>Gdk::CairoContext</classname>。"
-"<classname>Gdk::DrawingContext</classname>已被删除。"
+"新添加了<classname>Gdk::DrawContext</classname>和<classname>Gdk::"
+"CairoContext</classname>。<classname>Gdk::DrawingContext</classname>已被删"
+"除。"
 
 #: C/index-in.docbook:749
 msgid ""
 "<classname>Gtk::Clipboard</classname> has been replaced by the new "
 "<classname>Gdk::Clipboard</classname>."
 msgstr ""
-"<classname>Gtk::Clipboard</classname>被新的<classname>Gdk::Clipboard</classname>替换。"
+"<classname>Gtk::Clipboard</classname>被新的<classname>Gdk::Clipboard</"
+"classname>替换。"
 
 #: C/index-in.docbook:751
 msgid ""
 "<classname>Gdk::DragContext</classname> has been split into <classname>Gdk::"
 "Drag</classname> and <classname>Gdk::Drop</classname>."
 msgstr ""
-"<classname>Gdk::DragContext</classname>现在被拆分为<classname>Gdk::Drag</classname>和<classname>Gdk::Drop</classname>。"
+"<classname>Gdk::DragContext</classname>现在被拆分为<classname>Gdk::Drag</"
+"classname>和<classname>Gdk::Drop</classname>。"
 
 #: C/index-in.docbook:755
 msgid ""
@@ -1730,8 +1782,9 @@ msgid ""
 "encounter when porting code that used <application>gtkmm</application>-3.0 "
 "and <application>glibmm</application>-2.4. Here is a short list:"
 msgstr ""
-"API也进行了一些更改,在移植<application>gtkmm</application>-3.0和<application>glibmm</application>-2.4代码"
-"时你可能会遇到这些更改。以下是一个简短的变更列表:"
+"API也进行了一些更改,在移植<application>gtkmm</application>-3.0和"
+"<application>glibmm</application>-2.4代码时你可能会遇到这些更改。以下是一个简"
+"短的变更列表:"
 
 #: C/index-in.docbook:760
 msgid "A C++17 compiler is required."
@@ -1745,15 +1798,17 @@ msgid ""
 "the removed <classname>Gtk::Activatable</classname> interface."
 msgstr ""
 "<classname>Gtk::Button</classname>,<classname>Gtk::ToolButton</classname>,"
-"<classname>Gtk::MenuItem</classname>和<classname>Gtk::Switch</classname> "
-"实现了<classname>Gtk::Actionable</classname>接口而不是已被删除的<classname>Gtk::Activatable</classname>接口。"
+"<classname>Gtk::MenuItem</classname>和<classname>Gtk::Switch</classname> 实现"
+"了<classname>Gtk::Actionable</classname>接口而不是已被删除的<classname>Gtk::"
+"Activatable</classname>接口。"
 
 #: C/index-in.docbook:765
 msgid ""
 "<classname>Gtk::FontButton</classname> implements the <classname>Gtk::"
 "FontChooser</classname> interface."
 msgstr ""
-"<classname>Gtk::FontButton</classname>实现了<classname>Gtk::FontChooser</classname>接口。"
+"<classname>Gtk::FontButton</classname>实现了<classname>Gtk::FontChooser</"
+"classname>接口。"
 
 #: C/index-in.docbook:766
 msgid ""
@@ -1761,8 +1816,9 @@ msgid ""
 "methodname>s have been replaced by <methodname>measure_vfunc()</methodname>. "
 "This change only affects custom widgets."
 msgstr ""
-"<classname>Gtk::Widget</classname>:<methodname>get_preferred_*_vfunc()</methodname>方法"
-"已被<methodname>measure_vfunc()</methodname>方法替代。此变更只影响自定义部件。"
+"<classname>Gtk::Widget</classname>:<methodname>get_preferred_*_vfunc()</"
+"methodname>方法已被<methodname>measure_vfunc()</methodname>方法替代。此变更只"
+"影响自定义部件。"
 
 #: C/index-in.docbook:769
 msgid ""
@@ -1771,17 +1827,15 @@ msgid ""
 "void(int, int)&gt;</classname> instead of <classname>sigc::slot&lt;void, "
 "int, int&gt;</classname>."
 msgstr ""
-"<classname>sigc::slot</classname>使用<classname>sigc::slot&lt;"
-"R(Args...)&gt;</classname>语法。 例如: <classname>sigc::slot&lt;"
-"void(int, int)&gt;</classname>而不是使用<classname>sigc::slot&lt;void, "
-"int, int&gt;</classname>。"
+"<classname>sigc::slot</classname>使用<classname>sigc::slot&lt;R(Args...)&gt;"
+"</classname>语法。 例如: <classname>sigc::slot&lt;void(int, int)&gt;</"
+"classname>而不是使用<classname>sigc::slot&lt;void, int, int&gt;</classname>。"
 
 #: C/index-in.docbook:771
 msgid ""
 "<classname>Gtk::DrawingArea</classname> uses a draw function instead of the "
 "draw signal."
-msgstr ""
-"<classname>Gtk::DrawingArea</classname>使用绘制函数替代绘制信号。"
+msgstr "<classname>Gtk::DrawingArea</classname>使用绘制函数替代绘制信号。"
 
 #: C/index-in.docbook:772
 msgid ""
@@ -1795,9 +1849,10 @@ msgid ""
 msgstr ""
 "<classname>Glib::ArrayHandle</classname>, <classname>Glib::"
 "StringArrayHandle</classname>, <classname>Glib::ListHandle</classname>和"
-"<classname>Glib::SListHandle</classname>已被删除。他们曾在<application>glibmm</application>-2.4中"
-"被使用,而<application>gtkmm</application>-3.0并未使用他们。如果你曾经使用过他们,则将他们替换为"
-"标准C++容器,例如<classname>std::vector</classname>。"
+"<classname>Glib::SListHandle</classname>已被删除。他们曾在"
+"<application>glibmm</application>-2.4中被使用,而<application>gtkmm</"
+"application>-3.0并未使用他们。如果你曾经使用过他们,则将他们替换为标准C++容"
+"器,例如<classname>std::vector</classname>。"
 
 #: C/index-in.docbook:776
 msgid "<classname>Gtk::Container</classname> has been removed."
@@ -1809,8 +1864,9 @@ msgid ""
 "default value of <methodname>Gtk::Widget::property_visible()</methodname>has "
 "been changed from <literal>false</literal> to <literal>true</literal>."
 msgstr ""
-"<methodname>Gtk::Widget::show_all()</methodname>已被删除。"
-"<methodname>Gtk::Widget::property_visible()</methodname>的默认值从<literal>false</literal>改为<literal>true</literal>。"
+"<methodname>Gtk::Widget::show_all()</methodname>已被删除。<methodname>Gtk::"
+"Widget::property_visible()</methodname>的默认值从<literal>false</literal>改为"
+"<literal>true</literal>。"
 
 #: C/index-in.docbook:780
 msgid ""
@@ -1824,11 +1880,13 @@ msgid ""
 "<methodname>signal_key_press_event()</methodname> and "
 "<methodname>signal_key_release_event()</methodname>."
 msgstr ""
-"<classname>Gtk::Widget</classname>上的所有事件信号均已被删除。 "
-"大多数时候你可以使用<classname>Gtk::EventController</classname>的子类之一进行替换。"
-"例如, 使用<classname>Gtk::GestureMultiPress</classname>替代<methodname>signal_button_press_event()</methodname>以及"
-"<methodname>signal_button_release_event()</methodname>,使用<classname>Gtk::EventControllerKey</classname>替代"
-"<methodname>signal_key_press_event()</methodname>和<methodname>signal_key_release_event()</methodname>。"
+"<classname>Gtk::Widget</classname>上的所有事件信号均已被删除。 大多数时候你可"
+"以使用<classname>Gtk::EventController</classname>的子类之一进行替换。例如, 使"
+"用<classname>Gtk::GestureMultiPress</classname>替代"
+"<methodname>signal_button_press_event()</methodname>以及"
+"<methodname>signal_button_release_event()</methodname>,使用<classname>Gtk::"
+"EventControllerKey</classname>替代<methodname>signal_key_press_event()</"
+"methodname>和<methodname>signal_key_release_event()</methodname>。"
 
 #: C/index-in.docbook:787
 msgid ""
@@ -1839,10 +1897,11 @@ msgid ""
 "<methodname>Glib::make_refptr_for_instance()</methodname> in your "
 "<methodname>create()</methodname> methods."
 msgstr ""
-"<classname>Glib::RefPtr</classname>是<classname>std::shared_ptr</classname>的别名。"
-"如果你使用返回<classname>Glib::RefPtr</classname>的<methodname>create()</methodname>方法用以创建"
-"派生自<classname>Glib::ObjectBase</classname>的类,则你必须在你的<methodname>create()</methodname>方法"
-"中调用<methodname>Glib::make_refptr_for_instance()</methodname>。"
+"<classname>Glib::RefPtr</classname>是<classname>std::shared_ptr</classname>的"
+"别名。如果你使用返回<classname>Glib::RefPtr</classname>的"
+"<methodname>create()</methodname>方法用以创建派生自<classname>Glib::"
+"ObjectBase</classname>的类,则你必须在你的<methodname>create()</methodname>方"
+"法中调用<methodname>Glib::make_refptr_for_instance()</methodname>。"
 
 #: C/index-in.docbook:792
 msgid ""
@@ -1852,9 +1911,11 @@ msgid ""
 "methodname>, <methodname>insert_child_after()</methodname> and "
 "<methodname>insert_child_at_start()</methodname>."
 msgstr ""
-"<methodname>Gtk::Box::pack_start()</methodname>和<methodname>Gtk::Box::pack_end()</methodname>已被删除。"
-"现在<classname>Gtk::Box</classname>使用新的<methodname>append()</methodname>,<methodname>prepend()</methodname>,"
-"<methodname>insert_child_after()</methodname>和<methodname>insert_child_at_start()</methodname>方法。"
+"<methodname>Gtk::Box::pack_start()</methodname>和<methodname>Gtk::Box::"
+"pack_end()</methodname>已被删除。现在<classname>Gtk::Box</classname>使用新的"
+"<methodname>append()</methodname>,<methodname>prepend()</methodname>,"
+"<methodname>insert_child_after()</methodname>和"
+"<methodname>insert_child_at_start()</methodname>方法。"
 
 #: C/index-in.docbook:797
 msgid "<classname>Gtk::ButtonBox</classname> has been removed."
@@ -1867,8 +1928,10 @@ msgid ""
 "CheckButton</classname> or <classname>Gtk::ToggleButton</classname> with "
 "<methodname>set_group()</methodname>."
 msgstr ""
-"<classname>Gtk::RadioButton</classname>和<classname>Gtk::RadioButtonGroup</classname>已被删除。"
-"改为使用<classname>Gtk::CheckButton</classname>或者是<classname>Gtk::ToggleButton</classname>的<methodname>set_group()</methodname>。"
+"<classname>Gtk::RadioButton</classname>和<classname>Gtk::RadioButtonGroup</"
+"classname>已被删除。改为使用<classname>Gtk::CheckButton</classname>或者是"
+"<classname>Gtk::ToggleButton</classname>的<methodname>set_group()</"
+"methodname>。"
 
 #: C/index-in.docbook:804
 msgid ""
@@ -1876,8 +1939,8 @@ msgid ""
 "<application>glibmm</application> 2.68, though there will be new "
 "deprecations in future versions."
 msgstr ""
-"<application>gtkmm</application>和<application>glibmm</application> 2.68移除了所有"
-"之前标记为弃用的API,未来还会有新的API被标记为弃用。"
+"<application>gtkmm</application>和<application>glibmm</application> 2.68移除"
+"了所有之前标记为弃用的API,未来还会有新的API被标记为弃用。"
 
 #: C/index-in.docbook:807
 msgid ""
@@ -1892,18 +1955,20 @@ msgid ""
 "PortingToGtkmm3\">Porting from gtkmm-2.4 to gtkmm-3.0</ulink> wiki page for "
 "more details."
 msgstr ""
-"将源代码移植到<application>gtkmm</application>-4.0的第一步,通过定义GTKMM_DISABLE_DEPRECATED,"
-"GDKMM_DISABLE_DEPRECATED,GLIBMM_DISABLE_DEPRECATED和GIOMM_DISABLE_DEPRECATED宏禁用所有在"
-"<application>gtkmm</application>-3.0和<application>glibmm-2.4</application>中弃用的API,"
-"有一些autotools宏可以帮助你在编译时定义他们。更多有关详情请参见"
-"<ulink url=\"https://wiki.gnome.org/Projects/gtkmm/PortingToGtkmm3\";>从gtkmm-2.4迁移到gtkmm-3.0</ulink>Wiki页面。"
+"将源代码移植到<application>gtkmm</application>-4.0的第一步,通过定义"
+"GTKMM_DISABLE_DEPRECATED,GDKMM_DISABLE_DEPRECATED,GLIBMM_DISABLE_DEPRECATED"
+"和GIOMM_DISABLE_DEPRECATED宏禁用所有在<application>gtkmm</application>-3.0和"
+"<application>glibmm-2.4</application>中弃用的API,有一些autotools宏可以帮助你"
+"在编译时定义他们。更多有关详情请参见<ulink url=\"https://wiki.gnome.org/";
+"Projects/gtkmm/PortingToGtkmm3\">从gtkmm-2.4迁移到gtkmm-3.0</ulink>Wiki页面。"
 
 #: C/index-in.docbook:815
 msgid ""
 "See also <ulink url=\"https://developer.gnome.org/gtk4/unstable/gtk-";
 "migrating-3-to-4.html\"> Migrating from GTK 3.x to GTK 4</ulink>."
 msgstr ""
-"另请参见<ulink url=\"https://developer.gnome.org/gtk4/unstable/gtk-migrating-3-to-4.html\";>从GTK3.X迁移到GTK 
4</ulink>。"
+"另请参见<ulink url=\"https://developer.gnome.org/gtk4/unstable/gtk-";
+"migrating-3-to-4.html\">从GTK3.X迁移到GTK 4</ulink>。"
 
 #: C/index-in.docbook:821
 msgid "Buttons"
@@ -1924,10 +1989,10 @@ msgid ""
 "marked with a label or picture. Pushing one triggers an action. See the "
 "<link linkend=\"sec-pushbuttons\">Button</link> section."
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
-"classGtk_1_1Button.html\"><classname>Gtk::Button</classname></ulink>。这是标"
-"准按钮,通常标有文字标签或者图片。按一下就会触发一个动作。参看 <link linkend="
-"\"sec-pushbuttons\">Button</link> 小节。"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Button.";
+"html\"><classname>Gtk::Button</classname></ulink>。这是标准按钮,通常标有文字"
+"标签或者图片。按一下就会触发一个动作。参看 <link linkend=\"sec-pushbuttons"
+"\">Button</link> 小节。"
 
 #: C/index-in.docbook:839
 msgid "Toggle buttons"
@@ -1980,10 +2045,11 @@ msgid ""
 "buttons can act as radio buttons. See the <link linkend=\"sec-radio-buttons"
 "\">Radio Button</link> section."
 msgstr ""
-"它是根据老式汽车内的收音机的选台器来命名的,选台器是一组选择按钮并且"
-"它们是互斥的。按下其中任何一个都会使这一组中的其它按钮都弹起。它们的布局和 "
-"CheckButton (一个旁边有标签的小部件)很相似,但是通常看起来不太一样。没有单独的"
-"单选按钮类。复选按钮和开关按钮可以充当单选按钮。参见<link linkend=\"sec-radio-buttons\">RadioButton</link> 小节。"
+"它是根据老式汽车内的收音机的选台器来命名的,选台器是一组选择按钮并且它们是互"
+"斥的。按下其中任何一个都会使这一组中的其它按钮都弹起。它们的布局和 "
+"CheckButton (一个旁边有标签的小部件)很相似,但是通常看起来不太一样。没有单独"
+"的单选按钮类。复选按钮和开关按钮可以充当单选按钮。参见<link linkend=\"sec-"
+"radio-buttons\">RadioButton</link> 小节。"
 
 #: C/index-in.docbook:877
 msgid ""
@@ -2035,15 +2101,16 @@ msgid ""
 "The <classname>Gtk::Button</classname> widget has the <literal>clicked</"
 "literal> signal which is emitted when the button is pressed and released."
 msgstr ""
-"<classname>Gtk::Button</classname>部件具有<literal>clicked</literal>信号,"
-"当按下或释放按钮时将会发出该信号。"
+"<classname>Gtk::Button</classname>部件具有<literal>clicked</literal>信号,当"
+"按下或释放按钮时将会发出该信号。"
 
 #: C/index-in.docbook:907
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Button.";
 "html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Button.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Button.";
+"html\">参考</ulink>"
 
 #: C/index-in.docbook:909 C/index-in.docbook:962 C/index-in.docbook:1019
 #: C/index-in.docbook:1137 C/index-in.docbook:1194 C/index-in.docbook:1502
@@ -2074,7 +2141,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/buttons/button\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/buttons/button\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/buttons/button\">源代码</ulink>"
 
 #: C/index-in.docbook:929
 msgid "ToggleButton"
@@ -2119,7 +2187,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1ToggleButton.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1ToggleButton.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1ToggleButton.html\">参考</ulink>"
 
 #: C/index-in.docbook:950 C/index-in.docbook:965
 msgid "CheckButton"
@@ -2135,22 +2204,25 @@ msgid ""
 "ToggleButton</classname>."
 msgstr ""
 "<classname>Gtk::CheckButton</classname> 继承自 <classname>Gtk::Widget</"
-"classname>。它与<classname>Gtk::ToggleButton</classname>类似,二者只有外观不同。"
-"因此你可以像<classname>Gtk::ToggleButton</classname>一样使用同样的方法来检查、设置和转换多选按钮的状态。"
+"classname>。它与<classname>Gtk::ToggleButton</classname>类似,二者只有外观不"
+"同。因此你可以像<classname>Gtk::ToggleButton</classname>一样使用同样的方法来"
+"检查、设置和转换多选按钮的状态。"
 
 #: C/index-in.docbook:960
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1CheckButton.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1CheckButton.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1CheckButton.html\">参考</ulink>"
 
 #: C/index-in.docbook:971
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/buttons/checkbutton\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/buttons/checkbutton\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/buttons/checkbutton\">源代码</ulink>"
 
 #: C/index-in.docbook:977
 msgid "Radio Button"
@@ -2162,7 +2234,8 @@ msgid ""
 "buttons act as radio buttons when they form a group. Only one button in a "
 "group can be selected at any one time."
 msgstr ""
-"单选按钮没有单独的类。当复选按钮和开关按钮在一个组中的时候它们充当单选按钮。任何时候只能选择一个组中的一个按钮。"
+"单选按钮没有单独的类。当复选按钮和开关按钮在一个组中的时候它们充当单选按钮。"
+"任何时候只能选择一个组中的一个按钮。"
 
 #: C/index-in.docbook:985
 msgid "Groups"
@@ -2173,7 +2246,8 @@ msgid ""
 "You create the buttons, and set up their group afterwards. In the following "
 "example, we put 3 radio buttons in a group:"
 msgstr ""
-"你创建了三个按钮,然后为他们设置了组。在下面的例子中,我们将三个单选按钮放入一个组中。"
+"你创建了三个按钮,然后为他们设置了组。在下面的例子中,我们将三个单选按钮放入"
+"一个组中。"
 
 #: C/index-in.docbook:991
 #, no-wrap
@@ -2201,9 +2275,10 @@ msgid ""
 "<classname>CheckButton</classname>."
 msgstr ""
 "我们告诉<application>gtkmm</application>把三个<classname>CheckButton</"
-"classname>都放到一个组内,通过<methodname>get_group()</methodname>来得到这"
-"个组,然后使用<methodname>set_group()</methodname>告诉其它的"
-"<classname>CheckButton</classname>与第一个<classname>CheckButton</classname>共享这个组。"
+"classname>都放到一个组内,通过<methodname>get_group()</methodname>来得到这个"
+"组,然后使用<methodname>set_group()</methodname>告诉其它的"
+"<classname>CheckButton</classname>与第一个<classname>CheckButton</classname>"
+"共享这个组。"
 
 #: C/index-in.docbook:1008 C/index-in.docbook:1464 C/index-in.docbook:4627
 msgid "Methods"
@@ -2216,22 +2291,24 @@ msgid ""
 "them, they will all be off. Don't forget to turn one of them on using "
 "<methodname>set_active()</methodname>."
 msgstr ""
-"当<classname>CheckButton</classname>和<classname>ToggleButton</classname>创建后默认是未选中的,"
-"也就是说当你第一次创建一组单选按钮的时候,它们都会是未选中的。所以别忘了使用"
-"<methodname>set_active()</methodname>来选中一个。"
+"当<classname>CheckButton</classname>和<classname>ToggleButton</classname>创建"
+"后默认是未选中的,也就是说当你第一次创建一组单选按钮的时候,它们都会是未选中"
+"的。所以别忘了使用<methodname>set_active()</methodname>来选中一个。"
 
 #: C/index-in.docbook:1015
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1RadioButton.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1RadioButton.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1RadioButton.html\">参考</ulink>"
 
 #: C/index-in.docbook:1020
 msgid ""
 "The following example demonstrates the use of grouped "
 "<classname>CheckButton</classname>s:"
-msgstr "接下来的例子中演示了对<classname>CheckButton</classname>进行分组的用法:"
+msgstr ""
+"接下来的例子中演示了对<classname>CheckButton</classname>进行分组的用法:"
 
 #: C/index-in.docbook:1026
 msgid "RadioButton"
@@ -2242,7 +2319,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/buttons/radiobutton\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/buttons/radiobutton\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/buttons/radiobutton\">源代码</ulink>"
 
 #: C/index-in.docbook:1042 C/index-in.docbook:1148
 msgid "Range Widgets"
@@ -2280,10 +2358,10 @@ msgid ""
 "See the <link linkend=\"chapter-adjustment\">Adjustments</link> section for "
 "further details."
 msgstr ""
-"就象将在后面的<link linkend=\"chapter-adjustment\">Adjustments</link> 小节要谈"
-"到的那样,所有的 Range 部件都有一个关联的 <classname>Adjustment</classname> "
-"对象。如果你想修改部件的最小值、最大值以及当前值,你需要调用该部件关联的 "
-"<classname>Adjustment</classname> 对象的方法,该对象可以通过调用 "
+"就象将在后面的<link linkend=\"chapter-adjustment\">Adjustments</link> 小节要"
+"谈到的那样,所有的 Range 部件都有一个关联的 <classname>Adjustment</"
+"classname> 对象。如果你想修改部件的最小值、最大值以及当前值,你需要调用该部件"
+"关联的 <classname>Adjustment</classname> 对象的方法,该对象可以通过调用 "
 "<methodname>get_adjustment()</methodname> 方法来得到。<classname>Range</"
 "classname> 部件默认构造函数会自动的创建一个 <classname>Adjustment</"
 "classname>,当然,你也可以指定一个现有的 <classname>Adjustment</classname>,"
@@ -2295,7 +2373,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Range.html";
 "\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Range.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Range.html";
+"\">参考</ulink>"
 
 #: C/index-in.docbook:1072
 msgid "Scrollbar Widgets"
@@ -2324,7 +2403,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scrollbar.";
 "html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scrollbar.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scrollbar.";
+"html\">参考</ulink>"
 
 #: C/index-in.docbook:1091
 msgid "Scale Widgets"
@@ -2350,8 +2430,8 @@ msgid ""
 "<literal>0.0</literal>. This isn't useful so you will need to set some "
 "<classname>Adjustment</classname> details to get meaningful behaviour."
 msgstr ""
-"像 <classname>Scrollbar</classname> 一样,也分别有水平和垂直两种方向。默"
-"认构造函数会创建一个 <classname>Adjustment</classname>,并且所有值都设为 "
+"像 <classname>Scrollbar</classname> 一样,也分别有水平和垂直两种方向。默认构"
+"造函数会创建一个 <classname>Adjustment</classname>,并且所有值都设为 "
 "<literal>0.0</literal>。当然,这显然没有意义,所以你需要设置一些 "
 "<classname>Adjustment</classname> 的细节来让它获得有意义的行为。"
 
@@ -2393,7 +2473,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scale.html";
 "\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scale.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Scale.html";
+"\">参考</ulink>"
 
 #: C/index-in.docbook:1139
 msgid ""
@@ -2402,16 +2483,17 @@ msgid ""
 "parameters mentioned above and in the section on adjustments, so you can see "
 "how they affect the way these widgets work for the user."
 msgstr ""
-"这个示例显示了一个窗口,其中有三个关联到同一个Adjustment对象,"
-"还有几个控制部件用来调整前文讨论过的一些参数,这样你可以很清楚地看到那些参数"
-"是如何影响这些部件的行为方式的。"
+"这个示例显示了一个窗口,其中有三个关联到同一个Adjustment对象,还有几个控制部"
+"件用来调整前文讨论过的一些参数,这样你可以很清楚地看到那些参数是如何影响这些"
+"部件的行为方式的。"
 
 #: C/index-in.docbook:1154
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/range_widgets\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/range_widgets\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/range_widgets\">源代码</ulink>"
 
 #: C/index-in.docbook:1161
 msgid "Miscellaneous Widgets"
@@ -2429,16 +2511,18 @@ msgid ""
 "<methodname>set_text()</methodname> or <methodname>set_markup()</methodname> "
 "methods."
 msgstr ""
-"标签是用于在窗口中放置不可编辑文本的主要方法,例如将标题放于<classname>Entry</classname>"
-"部件旁。你可以直接在构造函数中指定文本,也可以于稍后调用<methodname>set_text()</methodname>或"
-"<methodname>set_markup()</methodname>方法设置想要显示的文本。"
+"标签是用于在窗口中放置不可编辑文本的主要方法,例如将标题放于"
+"<classname>Entry</classname>部件旁。你可以直接在构造函数中指定文本,也可以于"
+"稍后调用<methodname>set_text()</methodname>或<methodname>set_markup()</"
+"methodname>方法设置想要显示的文本。"
 
 #: C/index-in.docbook:1173
 msgid ""
 "The width of the label will be adjusted automatically. You can produce multi-"
 "line labels by putting line breaks (\"\\n\") in the label string."
 msgstr ""
-"标签会自动调整宽度。你也可以通过在标签锁显示的字符串中放置换行符(\"\\n\")来生成多行标签。"
+"标签会自动调整宽度。你也可以通过在标签锁显示的字符串中放置换行符(\"\\n\")来生"
+"成多行标签。"
 
 #: C/index-in.docbook:1177
 msgid ""
@@ -2446,8 +2530,9 @@ msgid ""
 "methodname> method. The widget is also capable of word-wrapping, which can "
 "be activated with <methodname>set_line_wrap()</methodname>."
 msgstr ""
-"标签文本可以使用<methodname>set_justify()</methodname>方法进行对齐。"
-"这个部件还具有自动换行功能,你可以使用<methodname>set_line_wrap()</methodname>激活它。"
+"标签文本可以使用<methodname>set_justify()</methodname>方法进行对齐。这个部件"
+"还具有自动换行功能,你可以使用<methodname>set_line_wrap()</methodname>激活"
+"它。"
 
 #: C/index-in.docbook:1183
 msgid ""
@@ -2458,16 +2543,18 @@ msgid ""
 "Markup syntax</ulink>. For instance, <code> &lt;b&gt;bold text&lt;/b&gt; and "
 "&lt;s&gt;strikethrough text&lt;/s&gt; </code> ."
 msgstr ""
-"Gtk::Label支持简单的格式,例如,允许你将某些文本设置成粗体,彩色,或者更大的字号。"
-"你也可以使用<ulink url=\"http://developer.gnome.org/pango/unstable/PangoMarkupFormat.html\";>Pango 标记语法</ulink>。"
-"例如, <code> &lt;b&gt;bold text&lt;/b&gt; and &lt;s&gt;strikethrough text&lt;/s&gt; </code> 。"
+"Gtk::Label支持简单的格式,例如,允许你将某些文本设置成粗体,彩色,或者更大的"
+"字号。你也可以使用<ulink url=\"http://developer.gnome.org/pango/unstable/";
+"PangoMarkupFormat.html\">Pango 标记语法</ulink>。例如, <code> &lt;b&gt;bold "
+"text&lt;/b&gt; and &lt;s&gt;strikethrough text&lt;/s&gt; </code> 。"
 
 #: C/index-in.docbook:1192
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Label.html";
 "\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Label.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Label.html";
+"\">参考</ulink>"
 
 #: C/index-in.docbook:1195
 msgid ""
@@ -2478,17 +2565,18 @@ msgid ""
 "<literal>m_Label_Normal</literal> is shown underlined only when you press "
 "the <keycap>Alt</keycap> key."
 msgstr ""
-"下面是一个用于说明这些功能的简短示例。这个样例使用框架(Frame)部件以更好的"
-"演示标签样式。(框架部件的教程: <link linkend=\"sec-frame\">框架(Frame)部件</link>)"
-"仅当你按<keycap>Alt</keycap>键时,<literal>m_Label_Normal</literal>的第一个字符才"
-"显示为下划线的样式。"
+"下面是一个用于说明这些功能的简短示例。这个样例使用框架(Frame)部件以更好的演示"
+"标签样式。(框架部件的教程: <link linkend=\"sec-frame\">框架(Frame)部件</"
+"link>)仅当你按<keycap>Alt</keycap>键时,<literal>m_Label_Normal</literal>的第"
+"一个字符才显示为下划线的样式。"
 
 #: C/index-in.docbook:1210
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/label\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/label\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/label\">源代码</ulink>"
 
 #: C/index-in.docbook:1217 C/index-in.docbook:1274
 msgid "Entry"
@@ -2504,8 +2592,9 @@ msgid ""
 "the <methodname>set_text()</methodname> method, and read the current "
 "contents with the <methodname>get_text()</methodname> method."
 msgstr ""
-"条目部件允许用户输入文本。你可以使用<methodname>set_text()</methodname>方法更改"
-"部件当前的内容,还可以使用<methodname>get_text()</methodname>方法读取当前的内容。"
+"条目部件允许用户输入文本。你可以使用<methodname>set_text()</methodname>方法更"
+"改部件当前的内容,还可以使用<methodname>get_text()</methodname>方法读取当前的"
+"内容。"
 
 #: C/index-in.docbook:1227
 msgid ""
@@ -2514,7 +2603,8 @@ msgid ""
 "<methodname>set_editable()</methodname> method."
 msgstr ""
 "有时你可能想使<classname>Entry</classname>部件变为只读的。你可以通过向"
-"<methodname>set_editable()</methodname>方法传递<literal>false</literal>做到这点。"
+"<methodname>set_editable()</methodname>方法传递<literal>false</literal>做到这"
+"点。"
 
 #: C/index-in.docbook:1233
 msgid ""
@@ -2522,8 +2612,9 @@ msgid ""
 "echoed on the screen, calling <methodname>set_visibility()</methodname> with "
 "<literal>false</literal> will cause the text to be hidden."
 msgstr ""
-"对于不想在屏幕上回显的密码、密语或者其他信息,你可以通过向<methodname>set_visibility()</methodname>"
-"方法传递<literal>false</literal>使输入文本被隐藏。"
+"对于不想在屏幕上回显的密码、密语或者其他信息,你可以通过向"
+"<methodname>set_visibility()</methodname>方法传递<literal>false</literal>使输"
+"入文本被隐藏。"
 
 #: C/index-in.docbook:1239
 msgid ""
@@ -2541,14 +2632,16 @@ msgid ""
 "comboboxentry\">ComboBox with an Entry</link> section contains example "
 "programs that use these signals."
 msgstr ""
-"当用户在条目部件上输入文本时你可能想要收到通知。为此<classname>Gtk::Entry</classname>提供"
-"了两个信号,他们分别是<literal>activate</literal>和<literal>changed</literal>。"
-"当用户在条目部件上按下<keycap>Enter</keycap>键时,部件将发出<literal>activate</literal>信号;"
-"当部件上的文本发生更改的时候,部件将会发出<literal>changed</literal>信号。你可以利用这些信号"
-"对用户的输入进行校验或者是过滤。将键盘焦点移动到其他的部件可能表示用户已经完成了文本输入。"
-"这种时候<classname>Gtk::Entry</classname>将会发出继承自<classname>Gtk::Widget</classname>的"
-"<literal>focus_out_event</literal>信号提醒你。<link linkend=\"sec-comboboxentry\">带有条目的组合框</link>"
-"小结包含了使用这些信号的示例程序。"
+"当用户在条目部件上输入文本时你可能想要收到通知。为此<classname>Gtk::Entry</"
+"classname>提供了两个信号,他们分别是<literal>activate</literal>和"
+"<literal>changed</literal>。当用户在条目部件上按下<keycap>Enter</keycap>键"
+"时,部件将发出<literal>activate</literal>信号;当部件上的文本发生更改的时候,"
+"部件将会发出<literal>changed</literal>信号。你可以利用这些信号对用户的输入进"
+"行校验或者是过滤。将键盘焦点移动到其他的部件可能表示用户已经完成了文本输入。"
+"这种时候<classname>Gtk::Entry</classname>将会发出继承自<classname>Gtk::"
+"Widget</classname>的<literal>focus_out_event</literal>信号提醒你。<link "
+"linkend=\"sec-comboboxentry\">带有条目的组合框</link>小结包含了使用这些信号的"
+"示例程序。"
 
 #: C/index-in.docbook:1254
 msgid ""
@@ -2562,19 +2655,21 @@ msgid ""
 "Widget::set_can_default()</methodname> and <methodname>Gtk::Widget::"
 "grab_default()</methodname>."
 msgstr ""
-"如果你将<literal>true</literal>传递给<methodname>set_activates_default()</methodname>方法,"
-"那么当你在<classname>Gtk::Entry</classname>中按下<keycap>Enter</keycap>的时候包涵这个"
-"<classname>Gtk::Entry</classname>的窗口将会激活其默认部件。这在对话框中特别的有用。"
-"默认部件通常会是对话框的按钮之一,例如对话框的关闭按钮。若你想主动的将某个部件设置"
-"为默认部件,请使用<methodname>Gtk::Widget::set_can_default()</methodname>和"
-"<methodname>Gtk::Widget::grab_default()</methodname>。"
+"如果你将<literal>true</literal>传递给<methodname>set_activates_default()</"
+"methodname>方法,那么当你在<classname>Gtk::Entry</classname>中按下"
+"<keycap>Enter</keycap>的时候包涵这个<classname>Gtk::Entry</classname>的窗口将"
+"会激活其默认部件。这在对话框中特别的有用。默认部件通常会是对话框的按钮之一,"
+"例如对话框的关闭按钮。若你想主动的将某个部件设置为默认部件,请使用"
+"<methodname>Gtk::Widget::set_can_default()</methodname>和<methodname>Gtk::"
+"Widget::grab_default()</methodname>。"
 
 #: C/index-in.docbook:1264
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Entry.html";
 "\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Entry.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Entry.html";
+"\">参考</ulink>"
 
 #: C/index-in.docbook:1266
 msgid "Simple Entry Example"
@@ -2586,15 +2681,17 @@ msgid ""
 "<classname>CheckButton</classname>s, with which you can toggle the editable "
 "and visible flags."
 msgstr ""
-"本示例使用<classname>Gtk::Entry</classname>。他还有两个<classname>CheckButton</classname>,"
-"你可以使用他们切换条目部件的可见性和可编辑性标志。"
+"本示例使用<classname>Gtk::Entry</classname>。他还有两个"
+"<classname>CheckButton</classname>,你可以使用他们切换条目部件的可见性和可编"
+"辑性标志。"
 
 #: C/index-in.docbook:1280
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/entry/simple\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/entry/simple\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/entry/simple\">源代码</ulink>"
 
 #: C/index-in.docbook:1287 C/index-in.docbook:1321
 msgid "Entry Completion"
@@ -2606,8 +2703,8 @@ msgid ""
 "existing choices based on the first few characters typed by the user. For "
 "instance, a search dialog could suggest text from previous searches."
 msgstr ""
-"<classname>Entry</classname>条目组件可以通过用户输入的前几个字符提供预先准备好"
-"选项的下拉列表。例如,在搜索对话框中提供以前输入过的文本作为建议。"
+"<classname>Entry</classname>条目组件可以通过用户输入的前几个字符提供预先准备"
+"好选项的下拉列表。例如,在搜索对话框中提供以前输入过的文本作为建议。"
 
 #: C/index-in.docbook:1293
 msgid ""
@@ -2616,8 +2713,8 @@ msgid ""
 "via the <methodname>set_completion()</methodname> method."
 msgstr ""
 "要启用此功能,你需要创建一个<classname>EntryCompletion</classname>对象,然后"
-"使用<classname>Entry</classname>部件的<methodname>set_completion()</methodname>方法"
-"将其提供给条目部件。"
+"使用<classname>Entry</classname>部件的<methodname>set_completion()</"
+"methodname>方法将其提供给条目部件。"
 
 #: C/index-in.docbook:1298
 msgid ""
@@ -2627,9 +2724,10 @@ msgid ""
 "<methodname>set_text_column()</methodname> to specify which of your model "
 "columns should be used to match possible text entries."
 msgstr ""
-"<classname>EntryCompletion</classname>可以用<methodname>set_model()</methodname>指定一个"
-"包含所有可能的条目的<classname>TreeModel</classname>。你应该调用<methodname>set_text_column()</methodname>"
-"指定该模型的那一行用以匹配可能的文本条目。"
+"<classname>EntryCompletion</classname>可以用<methodname>set_model()</"
+"methodname>指定一个包含所有可能的条目的<classname>TreeModel</classname>。你应"
+"该调用<methodname>set_text_column()</methodname>指定该模型的那一行用以匹配可"
+"能的文本条目。"
 
 #: C/index-in.docbook:1304
 msgid ""
@@ -2647,7 +2745,8 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1EntryCompletion.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1EntryCompletion.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1EntryCompletion.html\">参考</ulink>"
 
 #: C/index-in.docbook:1312
 msgid "Entry Completion Example"
@@ -2669,7 +2768,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/entry/completion\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/entry/completion\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/entry/completion\">源代码</ulink>"
 
 #: C/index-in.docbook:1333
 msgid "Entry Icons"
@@ -2684,10 +2784,11 @@ msgid ""
 "respond to the user pressing the icon by handling the "
 "<methodname>signal_icon_press</methodname> signal."
 msgstr ""
-"<classname>Entry</classname>部件可以在文本区域的开头或结尾显示一个图标。"
-"可以使用<methodname>set_icon_from_pixbuf()</methodname>或<methodname>set_icon_from_icon_name()</methodname>"
-"之类的方法指定要显示的图标。应用程序可以通过响应<methodname>signal_icon_press</methodname>信号"
-"来处理用户按下图标事件。"
+"<classname>Entry</classname>部件可以在文本区域的开头或结尾显示一个图标。可以"
+"使用<methodname>set_icon_from_pixbuf()</methodname>或"
+"<methodname>set_icon_from_icon_name()</methodname>之类的方法指定要显示的图"
+"标。应用程序可以通过响应<methodname>signal_icon_press</methodname>信号来处理"
+"用户按下图标事件。"
 
 #: C/index-in.docbook:1341
 msgid "Entry Icon Example"
@@ -2698,8 +2799,8 @@ msgid ""
 "This example shows a <classname>Gtk::Entry</classname> widget with a named "
 "search icon, and prints text to the terminal when the icon is pressed."
 msgstr ""
-"这个示例显示带有具名搜索图标的<classname>Gtk::Entry</classname>部件,并且"
-"在按下这个图标的时候将该名称打印到终端上。"
+"这个示例显示带有具名搜索图标的<classname>Gtk::Entry</classname>部件,并且在按"
+"下这个图标的时候将该名称打印到终端上。"
 
 #: C/index-in.docbook:1348
 msgid "Entry with Icon"
@@ -2710,7 +2811,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/entry/icon\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/entry/icon\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/entry/icon\">源代码</ulink>"
 
 #: C/index-in.docbook:1360
 msgid "Entry Progress"
@@ -2723,9 +2825,10 @@ msgid ""
 "<methodname>set_progress_fraction()</methodname> or "
 "<methodname>set_progress_pulse_step()</methodname> methods are called."
 msgstr ""
-"<classname>Entry</classname>部件可以在输入的文本之下显示一个进度条。"
-"当部件的<methodname>set_progress_fraction()</methodname>或<methodname>set_progress_pulse_step()</methodname>"
-"方法被调用的时候进度条将显示出来。"
+"<classname>Entry</classname>部件可以在输入的文本之下显示一个进度条。当部件的"
+"<methodname>set_progress_fraction()</methodname>或"
+"<methodname>set_progress_pulse_step()</methodname>方法被调用的时候进度条将显"
+"示出来。"
 
 #: C/index-in.docbook:1366
 msgid "Entry Progress Example"
@@ -2735,8 +2838,7 @@ msgstr "条目进度示例"
 msgid ""
 "This example shows a <classname>Gtk::Entry</classname> widget with a "
 "progress bar."
-msgstr ""
-"这个示例显示一个带有进度条的<classname>Gtk::Entry</classname>部件。"
+msgstr "这个示例显示一个带有进度条的<classname>Gtk::Entry</classname>部件。"
 
 #: C/index-in.docbook:1373
 msgid "Entry with Progress Bar"
@@ -2747,7 +2849,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/entry/progress\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/entry/progress\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/entry/progress\">源代码</ulink>"
 
 #: C/index-in.docbook:1387 C/index-in.docbook:1509
 msgid "SpinButton"
@@ -2764,7 +2867,8 @@ msgid ""
 msgstr ""
 "<classname>SpinButton</classname>允许用户从一个数值范围内选择一个值。它包含了"
 "一个<classname>Entry</classname>部件在其侧边有递增和递减按钮。单击按钮会使得"
-"值在可能的范围内“旋转”。你也可以直接在<classname>Entry</classname>部件中输入一个值。"
+"值在可能的范围内“旋转”。你也可以直接在<classname>Entry</classname>部件中输入"
+"一个值。"
 
 #: C/index-in.docbook:1397
 msgid ""
@@ -2774,8 +2878,8 @@ msgid ""
 "optionally cause the value to change more quickly the longer the button is "
 "held down."
 msgstr ""
-"这个值的小数位可以进行调整,步长也可以进行配置。<classname>SpinButton</classname>具有"
-"“自动重复”功能:长按递增、递减按钮该值的变化速度会越来越快。"
+"这个值的小数位可以进行调整,步长也可以进行配置。<classname>SpinButton</"
+"classname>具有“自动重复”功能:长按递增、递减按钮该值的变化速度会越来越快。"
 
 #: C/index-in.docbook:1412
 msgid "<literal>value</literal>: value for the Spin Button"
@@ -2793,13 +2897,15 @@ msgstr "<literal>upper</literal>:微调按钮允许的最大值"
 msgid ""
 "<literal>step_increment</literal>: value to increment/decrement when "
 "pressing mouse button 1"
-msgstr "<literal>step_increment</literal>:鼠标键1(通常是左键)点击一下递增/递减的值"
+msgstr ""
+"<literal>step_increment</literal>:鼠标键1(通常是左键)点击一下递增/递减的值"
 
 #: C/index-in.docbook:1436
 msgid ""
 "<literal>page_increment</literal>: value to increment/decrement when "
 "pressing mouse button 2"
-msgstr "<literal>page_increment</literal>:鼠标键2(通常是右键)点击一下递增/递减的值"
+msgstr ""
+"<literal>page_increment</literal>:鼠标键2(通常是右键)点击一下递增/递减的值"
 
 #: C/index-in.docbook:1443
 msgid "<literal>page_size</literal>: unused"
@@ -2812,14 +2918,17 @@ msgid ""
 "These Adjustment attributes are used by the Spin Button like so: <_:"
 "itemizedlist-1/>"
 msgstr ""
-"<classname>SpinButton</classname>使用<link linkend=\"chapter-adjustment\">调整(Adjustment)</link>对象"
-"保存值的范围信息。下述调整属性由微调按钮使用:<_:itemizedlist-1/>"
+"<classname>SpinButton</classname>使用<link linkend=\"chapter-adjustment\">调"
+"整(Adjustment)</link>对象保存值的范围信息。下述调整属性由微调按钮使用:<_:"
+"itemizedlist-1/>"
 
 #: C/index-in.docbook:1451
 msgid ""
 "Additionally, mouse button 3 can be used to jump directly to the "
 "<literal>upper</literal> or <literal>lower</literal> values."
-msgstr "另外,鼠标键3(通常是中键)用于直接跳到<literal>upper</literal>或<literal>lower</literal> values。"
+msgstr ""
+"另外,鼠标键3(通常是中键)用于直接跳到<literal>upper</literal>或"
+"<literal>lower</literal> values。"
 
 #: C/index-in.docbook:1456
 msgid ""
@@ -2828,9 +2937,11 @@ msgid ""
 "<methodname>get_adjustment()</methodname> method, or you can specify an "
 "existing <classname>Adjustment</classname> in the constructor."
 msgstr ""
-"<classname>SpinButton</classname>可以创建一个默认状态的<classname>Adjustment</classname>,"
-"然后你可以调用<methodname>get_adjustment()</methodname>方法访问这个<classname>Adjustment</classname>"
-",也可以通过<classname>SpinButton</classname>的构造函数直接使用一个已经存在的<classname>Adjustment</classname>。"
+"<classname>SpinButton</classname>可以创建一个默认状态的"
+"<classname>Adjustment</classname>,然后你可以调用"
+"<methodname>get_adjustment()</methodname>方法访问这个<classname>Adjustment</"
+"classname>,也可以通过<classname>SpinButton</classname>的构造函数直接使用一个"
+"已经存在的<classname>Adjustment</classname>。"
 
 #: C/index-in.docbook:1466
 msgid ""
@@ -2845,8 +2956,8 @@ msgid ""
 "methodname> method, and retrieve it with <methodname>get_value()</"
 "methodname>."
 msgstr ""
-"你可以使用<methodname>set_value()</methodname>方法设置微调按钮的值,也可以"
-"使用<methodname>get_value()</methodname>方法获得微调按钮的值。"
+"你可以使用<methodname>set_value()</methodname>方法设置微调按钮的值,也可以使"
+"用<methodname>get_value()</methodname>方法获得微调按钮的值。"
 
 #: C/index-in.docbook:1476
 msgid ""
@@ -2855,8 +2966,9 @@ msgid ""
 "had been clicked. You need to specify a <classname>Gtk::SpinType</classname> "
 "to specify the direction or new position."
 msgstr ""
-"<methodname>spin()</methodname>方法的行为和手动点击递增/递减按钮一样。你需要传递"
-"一个<classname>Gtk::SpinType</classname>对象给该方法以指定是递增还是递减。"
+"<methodname>spin()</methodname>方法的行为和手动点击递增/递减按钮一样。你需要"
+"传递一个<classname>Gtk::SpinType</classname>对象给该方法以指定是递增还是递"
+"减。"
 
 #: C/index-in.docbook:1483
 msgid ""
@@ -2864,30 +2976,33 @@ msgid ""
 "pass <literal>true</literal> to the <methodname>set_numeric()</methodname> "
 "method."
 msgstr ""
-"将<literal>true</literal>传递给<methodname>set_numeric()</methodname>方法"
-"可以阻止用户在条目框内输入非数字字符。"
+"将<literal>true</literal>传递给<methodname>set_numeric()</methodname>方法可以"
+"阻止用户在条目框内输入非数字字符。"
 
 #: C/index-in.docbook:1488
 msgid ""
 "To make the <classname>SpinButton</classname> 'wrap' between its upper and "
 "lower bounds, use the <methodname>set_wrap()</methodname> method."
 msgstr ""
-"使用<methodname>set_wrap()</methodname>方法指定<classname>SpinButton</classname>的值到达上下限的时候是否绕回。"
+"使用<methodname>set_wrap()</methodname>方法指定<classname>SpinButton</"
+"classname>的值到达上下限的时候是否绕回。"
 
 #: C/index-in.docbook:1493
 msgid ""
 "To force it to snap to the nearest <literal>step_increment</literal>, use "
 "<methodname>set_snap_to_ticks()</methodname>."
 msgstr ""
-"使用<methodname>set_snap_to_ticks()</methodname>方法可以在向微调按钮设置了无效值的时候强制校正到最接近"
-"<literal>step_increment</literal>策略可达到的有效值。"
+"使用<methodname>set_snap_to_ticks()</methodname>方法可以在向微调按钮设置了无"
+"效值的时候强制校正到最接近<literal>step_increment</literal>策略可达到的有效"
+"值。"
 
 #: C/index-in.docbook:1498
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1SpinButton.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1SpinButton.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1SpinButton.html\">参考</ulink>"
 
 #: C/index-in.docbook:1504
 msgid "Here's an example of a <classname>SpinButton</classname> in action:"
@@ -2898,7 +3013,8 @@ msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/spinbutton\">Source Code</ulink>"
 msgstr ""
-"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/spinbutton\";>源代码</ulink>"
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/spinbutton\">源代码</ulink>"
 
 #: C/index-in.docbook:1522 C/index-in.docbook:1570
 msgid "ProgressBar"
@@ -2910,6 +3026,8 @@ msgid ""
 "instance, a <classname>ProgressBar</classname> can show how much of a task "
 "has been completed."
 msgstr ""
+"进度条用于显示正在进行的操作的状态。例如,<classname>ProgressBar</classname>"
+"可以用于显示已经有多少任务被完成。"
 
 #: C/index-in.docbook:1530
 msgid ""
@@ -2917,6 +3035,8 @@ msgid ""
 "method, passing a <type>double</type> between 0.0 and 1.0 to provide the new "
 "fraction."
 msgstr ""
+"要修改显示的值,请调用<methodname>set_fraction()</methodname>方法,向该方法传"
+"递一个0.0到1.0之间的<type>double</type>值。"
 
 #: C/index-in.docbook:1535
 msgid ""
@@ -2932,11 +3052,12 @@ msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1ProgressBar.html\">Reference</ulink>"
 msgstr ""
-"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1ProgressBar.html\";>参考</ulink>"
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
+"classGtk_1_1ProgressBar.html\">参考</ulink>"
 
 #: C/index-in.docbook:1544
 msgid "Activity Mode"
-msgstr ""
+msgstr "活动模式"
 
 #: C/index-in.docbook:1545
 msgid ""
@@ -2948,6 +3069,10 @@ msgid ""
 "operation cannot be calculated as a value range (e.g., receiving a file of "
 "unknown length)."
 msgstr ""
+"除了用于表示已经达成的进度,进度条还可以用于表示任务处于活动状态;只需要将进"
+"度条的行为模式设置为<emphasis>activity mode</emphasis>即可。在这个模式下,进"
+"度条显示一个小矩形,该矩形可以在进度条内前后移动。活动模式在无法确定操作的进"
+"度的时候很有用(例如,接受一个长度未知的文件)。"
 
 #: C/index-in.docbook:1555
 msgid ""
@@ -2955,23 +3080,28 @@ msgid ""
 "regular intervals. You can also choose the step size, with the "
 "<methodname>set_pulse_step()</methodname> method."
 msgstr ""
+"为此,你还需要定时调用<methodname>pulse()</methodname>方法。你还可以使用"
+"<methodname>set_pulse_step()</methodname>方法控制矩形的移动步长。"
 
 #: C/index-in.docbook:1561
 msgid ""
 "The progress bar can also display a configurable text string next to the "
 "bar, using the <methodname>set_text()</methodname> method."
 msgstr ""
-"进度条还可以使用<methodname>set_text()</methodname>方法来在其边上显示可配置的文本字符串。"
+"进度条还可以使用<methodname>set_text()</methodname>方法来在其边上显示可配置的"
+"文本字符串。"
 
 #: C/index-in.docbook:1576
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/progressbar\">Source Code</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/progressbar\">源代码</ulink>"
 
 #: C/index-in.docbook:1584 C/index-in.docbook:1594
 msgid "InfoBar"
-msgstr ""
+msgstr "信息栏"
 
 #: C/index-in.docbook:1586
 msgid ""
@@ -2980,22 +3110,29 @@ msgid ""
 "top of the current window instead of opening a new window. Its API is very "
 "similar to the <link linkend=\"chapter-dialogs\">Gtk::Dialog</link> API."
 msgstr ""
+"<classname>InfoBar</classname>可用于显示一些信息、小物品或者简短的问题。他显"
+"示在窗口的顶部而不是和<classname>Dialog</classname>一样打开一个新的窗口。但是"
+"他的API和<link linkend=\"chapter-dialogs\">Gtk::Dialog</link>的API十分相似。"
 
 #: C/index-in.docbook:1589
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1InfoBar.";
 "html\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1InfoBar.";
+"html\">参考</ulink>"
 
 #: C/index-in.docbook:1600
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/infobar\">Source Code</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/infobar\">源代码</ulink>"
 
 #: C/index-in.docbook:1607
 msgid "Tooltips"
-msgstr ""
+msgstr "工具提示框"
 
 #: C/index-in.docbook:1609
 msgid ""
@@ -3005,32 +3142,42 @@ msgid ""
 "classname>. <classname>Gtk::Tooltip</classname> is used for more advanced "
 "tooltip usage, such as showing an image as well as text."
 msgstr ""
+"工具提示框是将鼠标悬停于部件上几秒后弹出的信息窗口。使用"
+"<methodname>set_tooltip_text()</methodname>可以为任意的<classname>Widget</"
+"classname>设置一个文本字符串作为提示。<classname>Gtk::Tooltip</classname>被用"
+"作更高级的提示工具,例如显示图像和文本。"
 
 #: C/index-in.docbook:1618
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Widget.";
 "html\">Widget Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Widget.";
+"html\">部件参考</ulink>"
 
 #: C/index-in.docbook:1619
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Tooltip.";
 "html\">Tooltip Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Tooltip.";
+"html\">工具提示框参考</ulink>"
 
 #: C/index-in.docbook:1624
 msgid "Tooltip"
-msgstr ""
+msgstr "工具提示框"
 
 #: C/index-in.docbook:1630
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/tooltips\">Source Code</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/tooltips\">源代码</ulink>"
 
 #: C/index-in.docbook:1639
 msgid "Container Widgets"
-msgstr ""
+msgstr "容器部件"
 
 #: C/index-in.docbook:1641
 msgid ""
@@ -3040,10 +3187,14 @@ msgid ""
 "interfaces. Others, such as <classname>Gtk::Frame</classname> contain only "
 "one child widget."
 msgstr ""
+"容器部件与其他部件一样都是从<classname>Gtk::Widget</classname>派生而来。"
+"一些容器部件可以容纳多个子部件,例如<classname>Gtk::Grid</classname>,因此"
+"通常他们具有更为复杂的接口。还有些容器部件只能容纳一个子部件,例如<classna"
+"me>Gtk::Frame</classname>"
 
 #: C/index-in.docbook:1649
 msgid "Single-item Containers"
-msgstr ""
+msgstr "单项容器"
 
 #: C/index-in.docbook:1651
 msgid ""
@@ -3053,6 +3204,9 @@ msgid ""
 "are technically single-item containers, but we have discussed them already "
 "elsewhere."
 msgstr ""
+"大多数单项容器部件具有其子部件的<methodname>set_child()</methodname>和<methodname>unset_"
+"child()</methodname>方法。<classname>Gtk::Button</classname>和<classname>Gtk::Window</cl"
+"assname>从技术上来说是单项容器,但是我们已经在其他地方讨论过它们。"
 
 #: C/index-in.docbook:1658
 msgid ""
@@ -3060,10 +3214,13 @@ msgid ""
 "you to divide a window into two separate \"panes\". This widget actually "
 "contains two child widgets, but the number is fixed so it seems appropriate."
 msgstr ""
+"我们还讨论了<classname>Gtk::Paned</classname>部件,它允许你将窗口分为两个"
+"单独的\"窗格\",这个部件实际上可以包含两个子部件,但是他只能包含固定数量"
+"的部件,因此也将其称为单项容器。"
 
 #: C/index-in.docbook:1665 C/index-in.docbook:1679
 msgid "Frame"
-msgstr ""
+msgstr "框架(Frame)"
 
 #: C/index-in.docbook:1667
 msgid ""
@@ -3072,22 +3229,27 @@ msgid ""
 "classname>s or <classname>CheckButton</classname>s in a <classname>Frame</"
 "classname>."
 msgstr ""
+"框架可以将一个或一组部件封装在一个框内,还可以为他们选择标题。例如你可以"
+"将一组<classname>ToggleButton</classname>或者<classname>CheckButton</classname>"
+"放入一个<classname>Frame</classname>中。"
 
 #: C/index-in.docbook:1674
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Frame.html";
 "\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Frame.html\";>参考</ulink>"
 
 #: C/index-in.docbook:1685
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/frame\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/frame\";>源代码</ulink>"
 
 #: C/index-in.docbook:1693 C/index-in.docbook:1719
 msgid "Paned"
-msgstr ""
+msgstr "窗格(Paned)"
 
 #: C/index-in.docbook:1695
 msgid ""
@@ -3095,6 +3257,8 @@ msgid ""
 "two halves (panes) can be oriented either horizontally (side by side) or "
 "vertically (one above the other)."
 msgstr ""
+"窗格用一个可移动的分隔符将一个部件一分为二。其可以水平(使两个窗格并排)也可"
+"以竖直(使两个窗格一个在另一个之上)的分隔部件。"
 
 #: C/index-in.docbook:1701
 msgid ""
@@ -3103,6 +3267,9 @@ msgid ""
 "<methodname>set_start_child()</methodname> and <methodname>set_end_child()</"
 "methodname> instead of a <methodname>set_child()</methodname> method."
 msgstr ""
+"与本小节的其他小部件不一样的是,窗格部件包含两个子部件而不是一个部件(每个窗格中一个)。"
+"因此你应该用<methodname>set_start_child()</methodname>和<methodname>set_end_child()</"
+"methodname>替代<methodname>set_child()</methodname>方法。"
 
 #: C/index-in.docbook:1708
 msgid ""
@@ -3110,22 +3277,25 @@ msgid ""
 "<methodname>set_position()</methodname> method, and you will probably need "
 "to do so."
 msgstr ""
+"如果你需要,你可以使用<methodname>set_position()</methodname>调整分割线的位置。"
 
 #: C/index-in.docbook:1714
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Paned.html";
 "\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Paned.html\";>参考</ulink>"
 
 #: C/index-in.docbook:1725
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/paned\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/paned\";>源代码</ulink>"
 
 #: C/index-in.docbook:1732 C/index-in.docbook:1764
 msgid "ScrolledWindow"
-msgstr ""
+msgstr "滚动窗口"
 
 #: C/index-in.docbook:1734
 msgid ""
@@ -3135,6 +3305,10 @@ msgid ""
 "Note that <classname>ScrolledWindow</classname> is not a <classname>Gtk::"
 "Window</classname> despite the slightly misleading name."
 msgstr ""
+"<classname>ScrolledWindow</classname>部件会创建一个可以滚动的区域。你可以将"
+"任何类型的部件插入到<classname>ScrolledWindow</classname>中,无论该部件有多大"
+"你都可以通过滚动条来访问它。请注意虽然<classname>ScrolledWindow</classname>的"
+"名称像是<classname>Gtk::Window</classname>的衍生部件,但其实不是。"
 
 #: C/index-in.docbook:1743
 msgid ""
@@ -3148,28 +3322,39 @@ msgid ""
 "<literal>Gtk::PolicyType::ALWAYS</literal> will cause the scrollbar to be "
 "displayed always."
 msgstr ""
+"滚动窗口具有用于确定是否要显示<classname>Scrollbar(滚动条)</classname>的"
+"<emphasis>scrollbar policies(滚动条策略)</emphasis>。你可以使用<methodname"
+">set_policy()</methodname>方法来设置策略。例如设置策略为<literal>Gtk::Poli"
+"cyType::AUTOMATIC</literal>或是<literal>Gtk::PolicyType::ALWAYS</literal>。"
+"当策略为<literal>Gtk::PolicyType::AUTOMATIC</literal>的时候,只有在被包含的"
+"部件大于可见区域的时候滚动条才会被显示出来。而<literal>Gtk::PolicyType::ALW"
+"AYS</literal>将使滚动条始终显示。"
 
 #: C/index-in.docbook:1755
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1ScrolledWindow.html\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1ScrolledWindow.html\";>参考</ulink>"
 
 #: C/index-in.docbook:1759
 msgid ""
 "Here is a simple example that packs 100 toggle buttons into a "
 "ScrolledWindow. Try resizing the window to see the scrollbars react."
 msgstr ""
+"这是一个简单的示例,其将100个开关按钮放入滚动窗口中。你可以尝试调整"
+"窗口的大小,以查看滚动条的反应。"
 
 #: C/index-in.docbook:1770
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/scrolledwindow\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/scrolledwindow\";>源代码</ulink>"
 
 #: C/index-in.docbook:1777 C/index-in.docbook:1799
 msgid "AspectFrame"
-msgstr ""
+msgstr "定比框架(AspectFrame)"
 
 #: C/index-in.docbook:1779
 msgid ""
@@ -3180,12 +3365,17 @@ msgid ""
 "photograph without allowing the user to distort it horizontally or "
 "vertically while resizing."
 msgstr ""
+"<classname>AspectFrame</classname>部件和<classname>Frame</classname>部件类似"
+",但它强制子部件的<emphasis>aspect ratio(长宽比)</emphasis>(长与宽的比例)"
+"保持不变。并在有必要的时候添加额外的空间。例如,这将允许你显示照片并且无需"
+"在用户调整窗口大小的时候对照片进行水平/垂直变形。"
 
 #: C/index-in.docbook:1788
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/";
 "classGtk_1_1AspectFrame.html\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1AspectFrame.html\";>参考</ulink>"
 
 #: C/index-in.docbook:1792
 msgid ""
@@ -3193,16 +3383,19 @@ msgid ""
 "present a drawing area whose aspect ratio will always be 2:1, no matter how "
 "the user resizes the top-level window."
 msgstr ""
+"下面的程序使用<classname>Gtk::AspectFrame</classname>显示一个绘图区域,无论"
+"用户如何调整顶层窗口大小宽高比依旧保持2:1。"
 
 #: C/index-in.docbook:1805
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/aspectframe\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/aspectframe\";>源代码</ulink>"
 
 #: C/index-in.docbook:1812
 msgid "Other Single-item Containers"
-msgstr ""
+msgstr "其他单项容器"
 
 #: C/index-in.docbook:1814
 msgid ""
@@ -3210,22 +3403,28 @@ msgid ""
 "a complete list. Here are links to some example programs that show "
 "containers, which are not mentioned elsewhere in this tutorial."
 msgstr ""
+"还有其他的单项容器。请参阅参考文档获取完整列表。这里是一些本教程其他地方"
+"未曾提及的显示容器的示例程序的链接。"
 
 #: C/index-in.docbook:1820
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/expander\">Source Code, Expander</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/expander\">扩展器(Expander)源代码</ulink>"
 
 #: C/index-in.docbook:1821
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/popover\">Source Code, Popover</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/popover\">气泡(Popover)源代码</ulink>"
 
 #: C/index-in.docbook:1828
 msgid "Multiple-item Containers"
-msgstr ""
+msgstr "多项容器"
 
 #: C/index-in.docbook:1830
 msgid ""
@@ -3238,10 +3437,15 @@ msgid ""
 "multiple-item containers takes an argument, specifying which widget to "
 "remove."
 msgstr ""
+"多项容器部件除<methodname>set_child()</methodname>和<methodname>unset_child()"
+"</methodname>方法以外还有其他的方法。不同容器有不同的添加/删除子部件的方法。"
+"例如<classname>Gtk::Box</classname>具有<methodname>append()</methodname>和"
+"<methodname>remove()</methodname>以及其他方法。多项容器的<methodname>remove()"
+"</methodname>方法需要传入一个用于指示需要删除的部件的参数。"
 
 #: C/index-in.docbook:1840
 msgid "Packing"
-msgstr ""
+msgstr "组装(Packing)"
 
 #: C/index-in.docbook:1841
 msgid ""
@@ -3249,6 +3453,9 @@ msgid ""
 "\"elastic\" - they can usually be stretched in many different ways. This is "
 "due to the <emphasis>widget packing</emphasis> system."
 msgstr ""
+"你可能已经注意到了<application>gtkmm</application>窗口看起来是“弹性”的 -他们"
+"通常可以以不同方式进行拉伸。这是<emphasis>部件装填(widget packing)</emphasis>"
+"系统在起作用。"
 
 #: C/index-in.docbook:1846
 msgid ""
@@ -3256,6 +3463,8 @@ msgid ""
 "absolute positioning, often using a visual editor. This leads to several "
 "problems:"
 msgstr ""
+"许多GUI工具包使用可视化编辑器的时候都要求你使用部件相对于窗口的绝对位置。"
+"这将导致以下几个问题:"
 
 #: C/index-in.docbook:1853
 msgid ""
@@ -3263,6 +3472,8 @@ msgid ""
 "widgets are hidden when the window is made smaller, and lots of useless "
 "space appears when the window is made larger."
 msgstr ""
+"在调整窗口大小的时候部件不会重新排布自己。窗口变小的时候一些部件会被隐藏"
+"窗口变大的时候会出现很多无用的空间。"
 
 #: C/index-in.docbook:1857
 msgid ""
@@ -3271,6 +3482,8 @@ msgid ""
 "Unix it is also impossible to anticipate the effects of every theme and "
 "window manager."
 msgstr ""
+"将文本翻译成其他语言或者用其他字体显示的时候,无法预测显示文本所需要的空间。"
+"而在Unix上不可能预料在每个主题和窗口管理器下的显示效果。"
 
 #: C/index-in.docbook:1861
 msgid ""
@@ -3278,6 +3491,7 @@ msgid ""
 "appear, for instance, is complex. It requires tedious recalculation of every "
 "widget's position."
 msgstr ""
+"即时更改窗口布局以显示额外的部件将会很复杂,这需要对每个部件的位置进行繁琐的重新计算。"
 
 #: C/index-in.docbook:1867
 msgid ""
@@ -3294,6 +3508,13 @@ msgid ""
 "resize and reposition everything sensibly and smoothly when the user "
 "manipulates the window."
 msgstr ""
+"<application>gtkmm</application>使用装填系统解决这些问题。无需为窗口中的每"
+"个部件指定大小和位置,而是将部件放入行、列、和或网格中。<application>gtkmm"
+"</application>可以基于包含的部件的大小自动调整你的窗口大小。部件的大小由它"
+"包含的文本量、最大/小尺寸(由你指定的)、部件之间如何共享可用空间(你要求"
+"的方式)共同决定。你可以通过为每个部件指定边距与居中值来完善布局。然后<app"
+"lication>gtkmm</application>会使用以上的信息在用户操作窗口的时候合理、顺畅的"
+"调整部件们的大小和位置。"
 
 #: C/index-in.docbook:1876
 msgid ""
@@ -3305,6 +3526,11 @@ msgid ""
 "container widgets in <application>gtkmm</application> are single-child "
 "containers, including <classname>Gtk::Window</classname>."
 msgstr ""
+"<application>gtkmm</application>使用<emphasis>containers</emphasis>分层排布部件。"
+"容器部件包含其他部件。大多数的<application>gtkmm</application>部件都是容器部件。"
+"窗口(Windows)部件、笔记本选项卡(Notebook tabs)部件、按钮(Buttons)部件都是容器部件。"
+"容器有两种类型:单项容器和多项容器。<application>gtkmm</application>中包括<classn"
+"ame>Gtk::Window</classname>在内的多数容器部件都是单项部件。"
 
 #: C/index-in.docbook:1885
 msgid ""
@@ -3313,6 +3539,9 @@ msgid ""
 "in the window. The most useful container widgets are <classname>Gtk::Grid</"
 "classname> and <classname>Gtk::Box</classname>."
 msgstr ""
+"对,没错,一个窗口最多只能包含一个部件。那么我们要如何将多个部件放于窗口中"
+"呢?答案是通过向窗口放入一个多项容器实现。最合理的部件是<classname>Gtk::Gri"
+"d</classname>和<classname>Gtk::Box</classname>。"
 
 #: C/index-in.docbook:1896
 msgid ""
@@ -3320,16 +3549,21 @@ msgid ""
 "columns. Use <methodname>attach()</methodname> and "
 "<methodname>attach_next_to()</methodname> to insert child widgets."
 msgstr ""
+"<classname>Gtk::Grid</classname>将其子部件按行和列排列。使用<methodname"
+">attach()</methodname>和<methodname>attach_next_to()</methodname>方法向"
+"网格(Grid)部件中插入子部件。"
 
 #: C/index-in.docbook:1904
 msgid ""
 "<classname>Gtk::Box</classname> arranges its child widgets vertically or "
 "horizontally. Use <methodname>append()</methodname> to insert child widgets."
 msgstr ""
+"<classname>Gtk::Box</classname>将其子部件水平或垂直排列。使用<methodname>ap"
+"pend()</methodname>方法向盒(Box)部件插入子部件。"
 
 #: C/index-in.docbook:1912
 msgid "There are several other containers, which we will also discuss."
-msgstr ""
+msgstr "还有几个容器我们将在之后讨论。"
 
 #: C/index-in.docbook:1916
 msgid ""
@@ -3337,26 +3571,29 @@ msgid ""
 "to. You'll probably find, however, that you don't need to rely on visual "
 "form editors quite as much as you might with other toolkits."
 msgstr ""
+"如果你之前从未使用组装工具包,那可能需要一段时间来适应它。然后你会发现你不需要"
+"和使用其他工具包一样依赖可视化编辑工具。"
 
 #: C/index-in.docbook:1926
 msgid "An improved Hello World"
-msgstr ""
+msgstr "改进后的Hello World"
 
 #: C/index-in.docbook:1928
 msgid ""
 "Let's take a look at a slightly improved <literal>helloworld</literal>, "
 "showing what we've learnt."
-msgstr ""
+msgstr "让我们看看改进后的<literal>helloworld</literal>,以展示我们所学到的内容。"
 
 #: C/index-in.docbook:1933
 msgid "Hello World 2"
-msgstr ""
+msgstr "Hello World 2"
 
 #: C/index-in.docbook:1939
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/helloworld2\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/helloworld2\";>源代码</ulink>"
 
 #: C/index-in.docbook:1941
 msgid ""
@@ -3367,10 +3604,14 @@ msgid ""
 "<methodname>set_valign()</methodname> while reading the <link linkend=\"sec-"
 "boxes\">Boxes</link> section."
 msgstr ""
+"生成并运行这个程序后,请尝试调整窗口的大小查看其行为。此外在阅读<link linkend"
+"=\"sec-boxes\">盒子(Boxes)</link>小节时请尝试使用<methodname>set_expand()</me"
+"thodname>、<methodname>set_hexpand()</methodname>、<methodname>set_vexpand()</methodname>"
+"、<methodname>set_halign()</methodname>和<methodname>set_valign()</methodname>方法。"
 
 #: C/index-in.docbook:1952
 msgid "Boxes"
-msgstr ""
+msgstr "盒子(Boxes)"
 
 #: C/index-in.docbook:1954
 msgid ""
@@ -3381,14 +3622,17 @@ msgid ""
 "combination of boxes inside or beside other boxes to create the desired "
 "effect."
 msgstr ""
+"如上例所示,这些都是不可见容器我们可以将容器装入其中。将部件装填到水平盒中"
+"的时候部件从左到右水平插入。将部件装填到垂直盒中的时候部件从上到下垂直插入。"
+"你可以在盒中或盒侧组合使用盒以达到你所需的效果。"
 
 #: C/index-in.docbook:1963
 msgid "Adding widgets"
-msgstr ""
+msgstr "添加部件"
 
 #: C/index-in.docbook:1964
 msgid "Per-child packing options"
-msgstr ""
+msgstr "子部件装填选项"
 
 #: C/index-in.docbook:1965
 msgid ""
@@ -3401,6 +3645,11 @@ msgid ""
 "<methodname>insert_child_at_start()</methodname>. We will use "
 "<methodname>append()</methodname> in our examples."
 msgstr ""
+"<methodname>append()</methodname>方法将部件放置于这些容器中。它们将从顶部开始。"
+"按<classname>Box</classname>的垂直方向向下移动,或者按<classname>Box</classname>的"
+"水平方向从左向右移动。如果你不愿意按此顺序添加子部件,请使用<methodname>insert_ch"
+"ild_after()</methodname>或<methodname>insert_child_at_start()</methodname>方法。我们"
+"将在示例中使用<methodname>append()</methodname>。"
 
 #: C/index-in.docbook:1975
 msgid ""
@@ -3415,14 +3664,20 @@ msgid ""
 "might even decide to use the <classname>Gtk::Builder</classname> API to load "
 "your GUI at runtime."
 msgstr ""
+"有几个选项可以控制部件的打包方式,但是初次使用可能会难以理清效果。你可以在"
+"子部件上使用<methodname>set_expand()</methodname>、<methodname>set_hexpand()</"
+"methodname>、<methodname>set_vexpand()</methodname>、<methodname>set_halign()</"
+"methodname>、<methodname>set_valign()</methodname>方法修改装填策略。如果你感到"
+"困难,可以试试<application>glade</application>GUI设计器,看看能不能对你有所帮助。"
+"你甚至可以使用<classname>Gtk::Builder</classname>API在运行时加载GUI。"
 
 #: C/index-in.docbook:1987
 msgid "There are basically five different styles, as shown in this picture:"
-msgstr ""
+msgstr "如图所示,有五种不同的基本样式。"
 
 #: C/index-in.docbook:1993
 msgid "Box Packing 1"
-msgstr ""
+msgstr "组装盒1"
 
 #: C/index-in.docbook:1999
 msgid ""
@@ -3433,16 +3688,21 @@ msgid ""
 "<methodname>set_margin_start()</methodname> and "
 "<methodname>set_margin_end()</methodname> methods."
 msgstr ""
+"每一行包含一个有多个按钮的水平<classname>Box</classname>。行中的每一个按钮都"
+"使用相同参数的<methodname>set_hexpand()</methodname>、<methodname>set_halign()"
+"</methodname>、<methodname>set_margin_start()</methodname>和<methodname>set_mar"
+"gin_end()</methodname>方法装入<classname>Box</classname>。"
 
 #: C/index-in.docbook:2008
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Box.html";
 "\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Box.html\";>参考</ulink>"
 
 #: C/index-in.docbook:2012
 msgid "Per-container packing options"
-msgstr ""
+msgstr "容器装填选项"
 
 #: C/index-in.docbook:2016
 #, no-wrap
@@ -3452,6 +3712,10 @@ msgid ""
 "void set_spacing(int spacing);\n"
 "void set_homogeneous(bool homogeneous = true);"
 msgstr ""
+"Gtk::Box(Gtk::Orientation orientation = Gtk::Orientation::HORIZONTAL, int spacing = 0);\n"
+"void set_orientation(Gtk::Orientation orientation);\n"
+"void set_spacing(int spacing);\n"
+"void set_homogeneous(bool homogeneous = true);"
 
 #: C/index-in.docbook:2013
 msgid ""
@@ -3462,6 +3726,10 @@ msgid ""
 "<parameter>spacing</parameter> is a (minimum) number of pixels to leave "
 "between each widget."
 msgstr ""
+"这是<classname>Box</classname>部件的构造函数,以及设置每个容器的打包选项的方法"
+":<_:programlisting-1/> 将<literal>true</literal>传递给<methodname>set_homogeneo"
+"us()</methodname>方法将导致容器部件所包含的所有部件都有一样的大小。<parameter>sp"
+"acing</parameter>是每个部件之间要保留的最小像素数。"
 
 #: C/index-in.docbook:2026
 msgid ""
@@ -3471,14 +3739,17 @@ msgid ""
 "following figure should make it clearer. The shown margins are the left and "
 "right margins of each button in the row."
 msgstr ""
+"间距(创建盒的时候设置)与边距(为每个子部件分别设置)的区别是:在对象之间"
+"添加间距,在部件的一侧或多侧添加边距。下图能使你更清楚的理解这一点。所显示的"
+"边距是该行中每个按钮的左右边距。"
 
 #: C/index-in.docbook:2035
 msgid "Box Packing 2"
-msgstr ""
+msgstr "组装盒2"
 
 #: C/index-in.docbook:2045
 msgid "Gtk::Application and command-line options"
-msgstr ""
+msgstr "Gtk::Application和命令行选项"
 
 #: C/index-in.docbook:2046
 msgid ""
@@ -3486,6 +3757,8 @@ msgid ""
 "code shows two ways of handling command-line options in combination with "
 "<classname>Gtk::Application</classname>."
 msgstr ""
+"下面的示例程序需要一个命令行选项。源代码展示了两种<classname>Gtk::Applica"
+"tion</classname>处理命令行选项的方式。"
 
 #: C/index-in.docbook:2052
 msgid ""
@@ -3493,6 +3766,9 @@ msgid ""
 "<classname>Gtk::Application</classname> by setting <literal>argc = 1</"
 "literal> in the call to <methodname>Gtk::Application::run()</methodname>."
 msgstr ""
+"在<function>main()</function>中处理选项并且通过设置<literal>argc = 1</literal>"
+"将他们从<classname>Gtk::Application</classname>中隐藏,然后调用<methodname>Gt"
+"k::Application::run()</methodname>。"
 
 #: C/index-in.docbook:2058
 msgid ""
@@ -3502,6 +3778,9 @@ msgid ""
 "methodname>. Connect a signal handler to the <literal>command_line</literal> "
 "signal, and handle the command-line options in the signal handler."
 msgstr ""
+"将所有的命令行选项传递给<methodname>Gtk::Application::run()</methodname>并为"
+"<methodname>Gtk::Application::create()</methodname>方法设置标志<literal>Gio::"
+"Application::Flags::HANDLES_COMMAND_LINE</literal>。"
 
 #: C/index-in.docbook:2065
 msgid ""
@@ -3513,6 +3792,12 @@ msgid ""
 "main window. (<classname>Gio::Application</classname> is a base class of "
 "<classname>Gtk::Application</classname>.)"
 msgstr ""
+"你必须在调用<literal>signal_command_line().connect()</literal>时设置可选"
+"参数<literal>after = false</literal>,因为此时必须在默认的信号处理程序"
+"之前调用你的信号处理程序。你还必须调用<methodname>Gio::Application::acti"
+"vate()</methodname>处理程序,除非你希望你的应用程序不显示主窗口直接退出("
+"<classname>Gio::Application</classname>是<classname>Gtk::Application</classn"
+"ame>的基类)。"
 
 #: C/index-in.docbook:2078
 msgid ""
@@ -3520,16 +3805,19 @@ msgid ""
 "When you run this example, provide a number between 1 and 3 as a command-"
 "line option, to see different packing options in use."
 msgstr ""
+"这是上述截图所运行示例的源代码。在运行此示例时请提供1到3之间的数字作为命令行选项"
+"以查看正在使用不同装填选项的行为。"
 
 #: C/index-in.docbook:2081
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/box\">Source Code</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/box\";>源代码</ulink>"
 
 #: C/index-in.docbook:2087 C/index-in.docbook:2116
 msgid "Grid"
-msgstr ""
+msgstr "网格(Grid)"
 
 #: C/index-in.docbook:2089
 msgid ""
@@ -3537,6 +3825,8 @@ msgid ""
 "columns. The dimensions of the grid do not need to be specified in the "
 "constructor."
 msgstr ""
+"<classname>Grid</classname>在行与列中动态的摆放他的子部件。不需要在其构造函数"
+"当中指定维数。"
 
 #: C/index-in.docbook:2094
 msgid ""
@@ -3547,6 +3837,11 @@ msgid ""
 "<methodname>set_row_homogeneous()</methodname> and "
 "<methodname>set_column_homogeneous()</methodname>."
 msgstr ""
+"使用<methodname>attach()</methodname>方法可以跨越多行/列插入子部件,也可以"
+"使用<methodname>attach_next_to()</methodname>将子部件插入已经存在于网格中的"
+"部件的旁边。可以通过调用<methodname>set_row_homogeneous()</methodname>和<meth"
+"odname>set_column_homogeneous()</methodname>令网格中所有子部件具有一致的高度或宽度。"
+
 
 #: C/index-in.docbook:2101
 msgid ""
@@ -3554,12 +3849,15 @@ msgid ""
 "properties of the child <classname>Widget</classname>s to control their "
 "spacing and their behaviour when the Grid is resized."
 msgstr ""
+"你可以设置子部件的<emphasis>margin</emphasis>和<emphasis>expand</emphasis>属性"
+"用以控制调整网格大小时它们之间的间距。"
 
 #: C/index-in.docbook:2105
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Grid.html";
 "\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Grid.html\";>参考</ulink>"
 
 #: C/index-in.docbook:2108
 msgid ""
@@ -3567,16 +3865,19 @@ msgid ""
 "buttons are in the upper row, from left to right. A third button is attached "
 "underneath the first button, in a new lower row, spanning two columns."
 msgstr ""
+"本示例创建一个窗口其中具有一个包含三个按钮的网格。前两个按钮位于最上行并从左"
+"向右排列。第三个按钮位于第一个按钮的下方,位于最下行并横跨两列。"
 
 #: C/index-in.docbook:2122
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/grid\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/grid\";>源代码</ulink>"
 
 #: C/index-in.docbook:2129 C/index-in.docbook:2164
 msgid "Notebook"
-msgstr ""
+msgstr "笔记本(Notebook)"
 
 #: C/index-in.docbook:2131
 msgid ""
@@ -3586,6 +3887,10 @@ msgid ""
 "several sets of widgets to be placed in a small space, by only showing one "
 "page at a time. For instance, they are often used in preferences dialogs."
 msgstr ""
+"<classname>Notebook</classname>有一组堆叠好的<literal>pages</literal>,每个"
+"页面(page)包含一个部件。带标签的<literal>tabs</literal>允许用户选择页面。"
+"<classname>Notebook</classname>一次只显示一页,这样可以将好几组部件放于很小"
+"的空间当中。例如他们经常在首选项对话框中使用。"
 
 #: C/index-in.docbook:2140
 msgid ""
@@ -3594,6 +3899,9 @@ msgid ""
 "pages to the <literal>Notebook</literal>, supplying the child widget and the "
 "name for the tab."
 msgstr ""
+"使用<methodname>append_page()</methodname>、<methodname>prepend_page()</metho"
+"dname>和<methodname>insert_page()</methodname>方法可以添加带标签的页面到<lite"
+"ral>Notebook</literal>中,你需要为这些方法提供子部件和标签名。"
 
 #: C/index-in.docbook:2147
 msgid ""
@@ -3602,28 +3910,34 @@ msgid ""
 "number, and then calling <methodname>get_nth_page()</methodname> with that "
 "number will give you a pointer to the actual child widget."
 msgstr ""
+"如果你想知道当前可见的页面是那一个,可以使用<methodname>get_current_page()"
+"</methodname>方法。该方法返回一个页码,你可以将页码传递给<methodname>get_nt"
+"h_page()</methodname>获取指向该页当前子部件的指针。"
 
 #: C/index-in.docbook:2154
 msgid ""
 "To programmatically change the selected page, use the "
 "<methodname>set_current_page()</methodname> method."
 msgstr ""
+"要以编程方式改变所选的页面,请使用<methodname>set_current_page()</methodname>方法。"
 
 #: C/index-in.docbook:2159
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Notebook.";
 "html\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Notebook.html\";>参考</ulink>"
 
 #: C/index-in.docbook:2170
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/notebook/\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/notebook/\";>源代码</ulink>"
 
 #: C/index-in.docbook:2177 C/index-in.docbook:2204
 msgid "Assistant"
-msgstr ""
+msgstr "助手(Assistant)"
 
 #: C/index-in.docbook:2179
 msgid ""
@@ -3633,6 +3947,10 @@ msgid ""
 "automatically depending on the type of the page, set with "
 "<methodname>set_page_type()</methodname>."
 msgstr ""
+"<classname>Assistant</classname>将一个复杂的操作切分为数个步骤。每个步骤都"
+"是一个页面,包含一个标题、一个子部件和一个可操作区域。助手的操作区域有一个"
+"导航按钮,这些按钮会根据页面的类型自动更新(使用<methodname>set_page_type()"
+"</methodname>设置页面类型)。"
 
 #: C/index-in.docbook:2183
 msgid ""
@@ -3641,6 +3959,9 @@ msgid ""
 "to the <classname>Assistant</classname>, supplying the child widget for each "
 "page."
 msgstr ""
+"使用<methodname>append_page()</methodname>、<methodname>prepend_page</methodname>"
+"和<methodname>insert_page()</methodname>方法可以向<classname>Assistant</classname>"
+"添加页面,你需要每个页面提供子部件。"
 
 #: C/index-in.docbook:2187
 msgid ""
@@ -3650,12 +3971,17 @@ msgid ""
 "actual widget. To programmatically change the current page, use the "
 "<methodname>set_current_page()</methodname> method."
 msgstr ""
+"要确定当前可见的页面,请使用<methodname>get_current_page()</methodname>方法,"
+"然后将返回值传递给<methodname>get_nth_page()</methodname>,其会返回一个指向"
+"实际部件的指针。要想用编程的方式改变当前页,请使用<methodname>set_current_p"
+"age()</methodname>方法。"
 
 #: C/index-in.docbook:2191
 msgid ""
 "To set the title of a page, use the <methodname>set_page_title()</"
 "methodname> method."
 msgstr ""
+"要为页面设置标题,请使用<methodname>set_page_title()</methodname>方法。"
 
 #: C/index-in.docbook:2195
 msgid ""
@@ -3663,22 +3989,27 @@ msgid ""
 "methodname> method. They will be packed alongside the default buttons. Use "
 "the <methodname>remove_action_widget()</methodname> method to remove widgets."
 msgstr ""
+"要将部件添加到操作区域,请使用<methodname>add_action_widget()</methodname>方法。"
+"他们将与默认按钮一并被装填。使用<methodname>remove_action_widget()</methodname>"
+"方法可以删除部件。"
 
 #: C/index-in.docbook:2199
 msgid ""
 "<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Assistant.";
 "html\">Reference</ulink>"
 msgstr ""
+"<ulink url=\"http://developer.gnome.org/gtkmm/unstable/classGtk_1_1Assistant.html\";>参考</ulink>"
 
 #: C/index-in.docbook:2210
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/assistant/\">Source Code</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/assistant/\";>源代码</ulink>"
 
 #: C/index-in.docbook:2217
 msgid "Other Multi-item Containers"
-msgstr ""
+msgstr "其他多项容器"
 
 #: C/index-in.docbook:2219
 msgid ""
@@ -3686,24 +4017,30 @@ msgid ""
 "complete list. Here are links to some example programs that show containers, "
 "which are not mentioned elsewhere in this tutorial."
 msgstr ""
+"还有其他多项容器。请参阅文档以获取完整列表。这里是一些本教程未提及的显示容器"
+"的示例程序连接。"
 
 #: C/index-in.docbook:2225
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/actionbar\">Source Code, ActionBar</ulink>"
 msgstr ""
+"<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
+"examples/book/actionbar\">动作条(ActionBar)源代码</ulink>"
 
 #: C/index-in.docbook:2226
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/flowbox\">Source Code, FlowBox</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/flowbox\";>流式盒(FlowBox)源代码</ulink>"
 
 #: C/index-in.docbook:2227
 msgid ""
 "<ulink url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/";
 "examples/book/iconview\">Source Code, IconView</ulink>"
 msgstr ""
+"<ulink 
url=\"https://gitlab.gnome.org/GNOME/gtkmm-documentation/tree/master/examples/book/iconview\";>图标视图(IconView)源代码</ulink>"
 
 #: C/index-in.docbook:2237
 msgid "The TreeView widget"
@@ -5613,8 +5950,9 @@ msgid ""
 "are derived from <classname>Gtk::Application</classname> and <classname>Gtk::"
 "ApplicationWindow</classname>."
 msgstr ""
-"该程序拥有一个应用程序菜单,一个菜单栏和一个工具栏。这个类是自<classname>Gtk::Application</classname>"
-"和<classname>Gtk::ApplicationWindow</classname>派生而来的。"
+"该程序拥有一个应用程序菜单,一个菜单栏和一个工具栏。这个类是自"
+"<classname>Gtk::Application</classname>和<classname>Gtk::ApplicationWindow</"
+"classname>派生而来的。"
 
 #: C/index-in.docbook:3628
 msgid "App and Main Menu"
@@ -6751,7 +7089,8 @@ msgid ""
 "<classname>Widget</classname>s can be identified as sources or destinations "
 "using these <classname>Gtk::Widget</classname> methods:"
 msgstr ""
-"<classname>Gtk::Widget</classname>的以下方法可以将<classname>Widget</classname>作为来源或者目标:"
+"<classname>Gtk::Widget</classname>的以下方法可以将<classname>Widget</"
+"classname>作为来源或者目标:"
 
 #: C/index-in.docbook:4632
 #, no-wrap
@@ -7244,7 +7583,7 @@ msgid ""
 "m_refPageSetup = new_page_setup;\n"
 msgstr ""
 
-#: C/index-in.docbook:5046 C/index-in.docbook:5111 C/index-in.docbook:10637
+#: C/index-in.docbook:5046 C/index-in.docbook:5111 C/index-in.docbook:10636
 msgid "For instance, <_:programlisting-1/>"
 msgstr ""
 
@@ -11735,13 +12074,10 @@ msgid ""
 "to build and install <application>gtkmm</application> from the source "
 "repository (git). For up-to-date information on <application>jhbuild</"
 "application>, please refer to the <ulink url=\"http://developer.gnome.org/";
-"jhbuild/unstable/\">jhbuild manual</ulink>. If you need assistance using "
-"<application>jhbuild</application>, you should ask for help on the <ulink "
-"url=\"http://mail.gnome.org/mailman/listinfo/gnome-love\";>gnome-love mailing "
-"list</ulink>."
+"jhbuild/unstable/\">jhbuild manual</ulink>."
 msgstr ""
 
-#: C/index-in.docbook:8779
+#: C/index-in.docbook:8775
 msgid ""
 "Note that to build <application>gtkmm</application> from git, you'll often "
 "need to build many of its dependencies from git as well. "
@@ -11751,16 +12087,25 @@ msgid ""
 "quickly if you report them."
 msgstr ""
 
-#: C/index-in.docbook:8788
+#: C/index-in.docbook:8783
+msgid ""
+"<application>gnome-build-meta</application> is an alternative to "
+"<application>jhbuild</application>. It is described at the <ulink url="
+"\"https://wiki.gnome.org/Newcomers/BuildSystemComponent\";>Building system "
+"components</ulink> wiki page, but here we concentrate on "
+"<application>jhbuild</application>."
+msgstr ""
+
+#: C/index-in.docbook:8790
 msgid "Setting up jhbuild"
 msgstr ""
 
-#: C/index-in.docbook:8797
+#: C/index-in.docbook:8799
 #, no-wrap
 msgid "$ cp examples/sample.jhbuildrc ~/.config/jhbuildrc"
 msgstr ""
 
-#: C/index-in.docbook:8789
+#: C/index-in.docbook:8791
 msgid ""
 "To set up <application>jhbuild</application>, follow the basic installation "
 "instructions from the <ulink url=\"http://developer.gnome.org/jhbuild/";
@@ -11771,28 +12116,25 @@ msgid ""
 "application> directory: <_:screen-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8806
+#: C/index-in.docbook:8805
 #, no-wrap
-msgid "moduleset = 'gnome-world'"
+msgid "moduleset = 'gnome-suites-core-deps-latest'"
 msgstr ""
 
-#: C/index-in.docbook:8799
+#: C/index-in.docbook:8801
 msgid ""
 "The <application>gtkmm</application> module is defined in the "
-"<filename>gnome-suites-core-deps-x.y.modules</filename> moduleset, but if "
-"you are interested in the latest version, it's easier to let "
-"<application>jhbuild</application> read from <filename>gnome-world.modules</"
-"filename>. It always includes the latest version of other <filename>."
-"modules</filename> files. So edit your <filename>jhbuildrc</filename> file "
-"and set your moduleset setting like so: <_:programlisting-1/>"
+"<filename>gnome-suites-core-deps-latest.modules</filename> moduleset. So "
+"edit your <filename>jhbuildrc</filename> file and set your moduleset setting "
+"like so: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8813
+#: C/index-in.docbook:8812
 #, no-wrap
 msgid "modules = [ 'gtkmm' ]"
 msgstr ""
 
-#: C/index-in.docbook:8808
+#: C/index-in.docbook:8807
 msgid ""
 "After setting the correct moduleset, you need to tell <application>jhbuild</"
 "application> which module or modules to build. To build <application>gtkmm</"
@@ -11800,7 +12142,7 @@ msgid ""
 "like so: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8815
+#: C/index-in.docbook:8814
 msgid ""
 "You can build several modules by setting the <varname>modules</varname> "
 "variable to a meta-package, e.g. <literal>meta-gnome-core</literal>, or "
@@ -11811,22 +12153,23 @@ msgid ""
 "gtkmm</command>)."
 msgstr ""
 
-#: C/index-in.docbook:8825
+#: C/index-in.docbook:8824
 msgid "Setting a prefix"
 msgstr ""
 
-#: C/index-in.docbook:8826
+#: C/index-in.docbook:8825
 msgid ""
 "By default, <application>jhbuild</application>'s configuration is configured "
 "to install all software built with <application>jhbuild</application> under "
-"the <filename>/opt/gnome</filename> prefix. You can choose a different "
-"prefix, but it is recommended that you keep this prefix different from other "
-"software that you've installed (don't set it to <filename>/usr</filename>!) "
-"If you've followed the jhbuild instructions then this prefix belongs to your "
-"user, so you don't need to run jhbuild as <literal>root</literal>."
+"the <filename>~/jhbuild/install</filename> prefix. You can choose a "
+"different prefix, but it is recommended that you keep this prefix different "
+"from other software that you've installed (don't set it to <filename>/usr</"
+"filename>!) If you've followed the jhbuild instructions then this prefix "
+"belongs to your user, so you don't need to run jhbuild as <literal>root</"
+"literal>."
 msgstr ""
 
-#: C/index-in.docbook:8838
+#: C/index-in.docbook:8837
 msgid ""
 "When you downloaded <application>jhbuild</application> from the git "
 "repository, you got a number of <filename>.modules</filename> files, "
@@ -11837,19 +12180,19 @@ msgid ""
 "in <filename>.jhbuildrc</filename>."
 msgstr ""
 
-#: C/index-in.docbook:8849
+#: C/index-in.docbook:8848
 msgid ""
 "Installing and Using the git version of <application>gtkmm</application>"
 msgstr ""
 
-#: C/index-in.docbook:8857
+#: C/index-in.docbook:8856
 #, no-wrap
 msgid ""
 "$ jhbuild bootstrap\n"
 "$ jhbuild sanitycheck"
 msgstr ""
 
-#: C/index-in.docbook:8850
+#: C/index-in.docbook:8849
 msgid ""
 "Once you've configured <application>jhbuild</application> as described "
 "above, building <application>gtkmm</application> should be relatively "
@@ -11859,13 +12202,13 @@ msgid ""
 "is set up correctly: <_:screen-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8861
+#: C/index-in.docbook:8860
 msgid ""
 "Installing <application>gtkmm</application> with <application>jhbuild</"
 "application>"
 msgstr ""
 
-#: C/index-in.docbook:8862
+#: C/index-in.docbook:8861
 msgid ""
 "If everything worked correctly, you should be able to build "
 "<application>gtkmm</application> and all of its dependencies from git by "
@@ -11874,7 +12217,7 @@ msgid ""
 "with the command <command>jhbuild build gtkmm</command>)."
 msgstr ""
 
-#: C/index-in.docbook:8869
+#: C/index-in.docbook:8868
 msgid ""
 "This command will build and install a series of modules and will probably "
 "take quite a long time the first time through. After the first time, "
@@ -11886,26 +12229,27 @@ msgid ""
 "command>."
 msgstr ""
 
-#: C/index-in.docbook:8880
+#: C/index-in.docbook:8879
 msgid "Using the git version of <application>gtkmm</application>"
 msgstr ""
 
-#: C/index-in.docbook:8881
+#: C/index-in.docbook:8880
 msgid ""
 "After you've installed the git version of <application>gtkmm</application>, "
 "you're ready to start using and experimenting with it. In order to use the "
 "new version of <application>gtkmm</application> you've just installed, you "
 "need to set some environment variables so that your <filename>configure</"
-"filename> script knows where to find the new libraries. Fortunately, "
-"<application>jhbuild</application> offers an easy solution to this problem. "
-"Executing the command <command>jhbuild shell</command> will start a new "
-"shell with all of the correct environment variables set. Now if you re-"
-"configure and build your project just as you usually do, it should link "
-"against the newly installed libraries. To return to your previous "
-"environment, simply exit the <application>jhbuild</application> shell."
+"filename> or <filename>meson.build</filename> script knows where to find the "
+"new libraries. Fortunately, <application>jhbuild</application> offers an "
+"easy solution to this problem. Executing the command <command>jhbuild shell</"
+"command> will start a new shell with all of the correct environment "
+"variables set. Now if you re-configure and build your project just as you "
+"usually do, it should link against the newly installed libraries. To return "
+"to your previous environment, simply exit the <application>jhbuild</"
+"application> shell."
 msgstr ""
 
-#: C/index-in.docbook:8895
+#: C/index-in.docbook:8894
 msgid ""
 "Once you've built your software, you'll need to run your program within the "
 "jhbuild environment as well. To do this, you can again use the "
@@ -11918,11 +12262,11 @@ msgid ""
 "program exits."
 msgstr ""
 
-#: C/index-in.docbook:8912
+#: C/index-in.docbook:8911
 msgid "Wrapping C Libraries with gmmproc"
 msgstr ""
 
-#: C/index-in.docbook:8913
+#: C/index-in.docbook:8912
 msgid ""
 "<application>gtkmm</application> uses the <command>gmmproc</command> tool to "
 "generate most of its source code, using .defs files that define the APIs of "
@@ -11930,17 +12274,17 @@ msgid ""
 "additional gtkmm-style wrappers of other glib/GObject-based libraries."
 msgstr ""
 
-#: C/index-in.docbook:8918
+#: C/index-in.docbook:8917
 msgid ""
 "This involves a variety of tools, some of them crufty, but at least they "
 "work, and has been used successfully by several projects."
 msgstr ""
 
-#: C/index-in.docbook:8923
+#: C/index-in.docbook:8922
 msgid "The build structure"
 msgstr ""
 
-#: C/index-in.docbook:8924
+#: C/index-in.docbook:8923
 msgid ""
 "Generation of the source code for a gtkmm-style wrapper API requires use of "
 "tools such as <command>gmmproc</command> and <filename>generate_wrap_init."
@@ -11951,7 +12295,7 @@ msgid ""
 "lot to pick an existing binding module as an example to look at."
 msgstr ""
 
-#: C/index-in.docbook:8932
+#: C/index-in.docbook:8931
 msgid ""
 "For instance, let's pretend that we are wrapping a C library called "
 "libsomething. It provides a <classname>GObject</classname>-based API with "
@@ -11959,11 +12303,11 @@ msgid ""
 "<classname>SomeStuff</classname>."
 msgstr ""
 
-#: C/index-in.docbook:8938
+#: C/index-in.docbook:8937
 msgid "Copying the skeleton project"
 msgstr ""
 
-#: C/index-in.docbook:8945
+#: C/index-in.docbook:8944
 #, no-wrap
 msgid ""
 "\n"
@@ -11971,7 +12315,7 @@ msgid ""
 "  $ cp -a mm-common/skeletonmm libsomethingmm\n"
 msgstr ""
 
-#: C/index-in.docbook:8940
+#: C/index-in.docbook:8939
 msgid ""
 "Typically our wrapper library would be called libsomethingmm. We can start "
 "by copying the <ulink url=\"https://gitlab.gnome.org/GNOME/mm-common/tree/";
@@ -11981,26 +12325,26 @@ msgid ""
 "\"https://mesonbuild.com/\";>Meson build system</ulink>. <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8955
+#: C/index-in.docbook:8954
 msgid "<filename>libsomethingmm</filename>: The top-level directory."
 msgstr ""
 
-#: C/index-in.docbook:8957
+#: C/index-in.docbook:8956
 msgid ""
 "<filename>libsomething</filename>: Contains the main include file and the "
 "pkg-config .pc file."
 msgstr ""
 
-#: C/index-in.docbook:8959
+#: C/index-in.docbook:8958
 msgid "<filename>src</filename>: Contains .hg and .ccg source files."
 msgstr ""
 
-#: C/index-in.docbook:8960
+#: C/index-in.docbook:8959
 msgid ""
 "<filename>libsomethingmm</filename>: Contains hand-written .h and .cc files."
 msgstr ""
 
-#: C/index-in.docbook:8950
+#: C/index-in.docbook:8949
 msgid ""
 "This provides a directory structure for the source .hg and .ccg files and "
 "the hand-written .h and .cc files, with <filename>meson.build</filename> "
@@ -12009,7 +12353,7 @@ msgid ""
 "renamed the directories appropriately: <_:itemizedlist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:8971
+#: C/index-in.docbook:8970
 #, no-wrap
 msgid ""
 "\n"
@@ -12018,32 +12362,32 @@ msgid ""
 "  done\n"
 msgstr ""
 
-#: C/index-in.docbook:8969
+#: C/index-in.docbook:8968
 msgid ""
 "As well as renaming the directories, we should rename some of the source "
 "files. For instance: <_:programlisting-1/> A number of the skeleton files "
 "must still be filled in with project-specific content later."
 msgstr ""
 
-#: C/index-in.docbook:8978
+#: C/index-in.docbook:8977
 msgid ""
 "Note that files ending in <filename>.in</filename> will be used to generate "
 "files with the same name but without the <filename>.in</filename> suffix, by "
 "replacing some variables with actual values during the configure stage."
 msgstr ""
 
-#: C/index-in.docbook:8981
+#: C/index-in.docbook:8980
 msgid ""
 "Generated files are saved in the build tree, which is separated from the "
 "source tree when <command>meson</command> and <command>ninja</command> are "
 "used."
 msgstr ""
 
-#: C/index-in.docbook:8986
+#: C/index-in.docbook:8985
 msgid "Modifying build files"
 msgstr ""
 
-#: C/index-in.docbook:8988
+#: C/index-in.docbook:8987
 msgid ""
 "Now we edit the files to adapt them to our needs. You might prefer to use a "
 "multiple-file search-replace utility for this, such as <command>regexxer</"
@@ -12052,7 +12396,7 @@ msgid ""
 "performed globally, and not be limited to the Meson files."
 msgstr ""
 
-#: C/index-in.docbook:8992
+#: C/index-in.docbook:8991
 msgid ""
 "All mentions of <varname>skeleton</varname> should be replaced by the "
 "correct name of the C library you are wrapping, such as \"something\" or "
@@ -12061,18 +12405,18 @@ msgid ""
 "occurrences of <varname>Skeleton</varname> changed to \"Something\"."
 msgstr ""
 
-#: C/index-in.docbook:8996
+#: C/index-in.docbook:8995
 msgid ""
 "Likewise, replace all instances of <varname>Joe Hacker</varname> by the name "
 "of the intended copyright holder, which is probably you. Do the same for the "
 "<varname>joe example com</varname> email address."
 msgstr ""
 
-#: C/index-in.docbook:9001
+#: C/index-in.docbook:9000
 msgid "meson.build in the top-level directory"
 msgstr ""
 
-#: C/index-in.docbook:9004
+#: C/index-in.docbook:9003
 msgid ""
 "It is common for binding modules to track the version number of the library "
 "they are wrapping. So, for instance, if the C library is at version 1.23.4, "
@@ -12081,72 +12425,72 @@ msgid ""
 "stable release."
 msgstr ""
 
-#: C/index-in.docbook:9009
+#: C/index-in.docbook:9008
 msgid ""
 "In the <function>project()</function> function, change the license and the C+"
 "+ version, if necessary."
 msgstr ""
 
-#: C/index-in.docbook:9011
+#: C/index-in.docbook:9010
 msgid ""
 "You probably need to add more required modules than <application>glibmm</"
 "application> and <application>skeleton</application> "
 "(<application>libsomething</application>)."
 msgstr ""
 
-#: C/index-in.docbook:9019
+#: C/index-in.docbook:9018
 msgid "Other meson.build files"
 msgstr ""
 
-#: C/index-in.docbook:9022
+#: C/index-in.docbook:9021
 msgid ""
 "<filename>skeleton/meson.build</filename>: Perhaps not much to change here "
 "more than the global name substitutions."
 msgstr ""
 
-#: C/index-in.docbook:9025
+#: C/index-in.docbook:9024
 msgid "<filename>skeleton/skeletonmm/meson.build</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9028
+#: C/index-in.docbook:9027
 msgid "<varname>defs_basefiles</varname>"
 msgstr ""
 
-#: C/index-in.docbook:9029
+#: C/index-in.docbook:9028
 msgid "If we have more .defs and docs.xml files, we add them here."
 msgstr ""
 
-#: C/index-in.docbook:9033
+#: C/index-in.docbook:9032
 msgid "<varname>hg_ccg_basenames</varname>"
 msgstr ""
 
-#: C/index-in.docbook:9034
+#: C/index-in.docbook:9033
 msgid ""
 "We must mention all of our <filename>.hg</filename> and <filename>.ccg</"
 "filename> files here."
 msgstr ""
 
-#: C/index-in.docbook:9038
+#: C/index-in.docbook:9037
 msgid "<varname>extra_cc_files, extra_h_files</varname>"
 msgstr ""
 
-#: C/index-in.docbook:9039
+#: C/index-in.docbook:9038
 msgid ""
 "Any additional hand-written <filename>.h</filename> and <filename>.cc</"
 "filename> source files go here."
 msgstr ""
 
-#: C/index-in.docbook:9020
+#: C/index-in.docbook:9019
 msgid ""
 "Next we must adapt the other <filename>meson.build</filename> files: <_:"
 "itemizedlist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9049
+#: C/index-in.docbook:9048
 msgid "Creating .hg and .ccg files"
 msgstr ""
 
-#: C/index-in.docbook:9050
+#: C/index-in.docbook:9049
 msgid ""
 "We should now create our first <filename>.hg</filename> and <filename>.ccg</"
 "filename> files, to wrap one of the objects in the C library. One pair of "
@@ -12154,87 +12498,87 @@ msgid ""
 "<filename>skeleton.hg</filename>. Create copies of these files as necessary."
 msgstr ""
 
-#: C/index-in.docbook:9054
+#: C/index-in.docbook:9053
 msgid ""
 "In the <link linkend=\"sec-wrapping-hg-files\">.hg and .ccg files</link> "
 "section you can learn about the syntax used in these files."
 msgstr ""
 
-#: C/index-in.docbook:9061
+#: C/index-in.docbook:9060
 msgid "Generating the .defs files."
 msgstr ""
 
-#: C/index-in.docbook:9065
+#: C/index-in.docbook:9064
 msgid "objects (GObjects, widgets, interfaces, boxed-types and plain structs)"
 msgstr ""
 
-#: C/index-in.docbook:9066
+#: C/index-in.docbook:9065
 msgid "functions"
 msgstr ""
 
-#: C/index-in.docbook:9067
+#: C/index-in.docbook:9066
 msgid "enums"
 msgstr ""
 
-#: C/index-in.docbook:9068
+#: C/index-in.docbook:9067
 msgid "signals"
 msgstr ""
 
-#: C/index-in.docbook:9069
+#: C/index-in.docbook:9068
 msgid "properties"
 msgstr ""
 
-#: C/index-in.docbook:9070
+#: C/index-in.docbook:9069
 msgid "vfuncs"
 msgstr ""
 
-#: C/index-in.docbook:9062
+#: C/index-in.docbook:9061
 msgid ""
 "The <filename>.defs</filename> files are text files, in a lisp format, that "
 "describe the API of a C library, including its <_:itemizedlist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9079
+#: C/index-in.docbook:9078
 msgid "<filename>gtk.defs</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9080
+#: C/index-in.docbook:9079
 msgid "Includes the other files."
 msgstr ""
 
-#: C/index-in.docbook:9083
+#: C/index-in.docbook:9082
 msgid "<filename>gtk_methods.defs</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9084
+#: C/index-in.docbook:9083
 msgid "Objects and functions."
 msgstr ""
 
-#: C/index-in.docbook:9087
+#: C/index-in.docbook:9086
 msgid "<filename>gtk_enums.defs</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9088
+#: C/index-in.docbook:9087
 msgid "Enumerations."
 msgstr ""
 
-#: C/index-in.docbook:9091
+#: C/index-in.docbook:9090
 msgid "<filename>gtk_signals.defs</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9092
+#: C/index-in.docbook:9091
 msgid "Signals and properties."
 msgstr ""
 
-#: C/index-in.docbook:9095
+#: C/index-in.docbook:9094
 msgid "<filename>gtk_vfuncs.defs</filename>"
 msgstr ""
 
-#: C/index-in.docbook:9096
+#: C/index-in.docbook:9095
 msgid "vfuncs (function pointer member fields in structs), written by hand."
 msgstr ""
 
-#: C/index-in.docbook:9073
+#: C/index-in.docbook:9072
 msgid ""
 "At the moment, we have separate tools for generating different parts of "
 "these <filename>.defs</filename>, so we split them up into separate files. "
@@ -12243,7 +12587,7 @@ msgid ""
 "variablelist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9100
+#: C/index-in.docbook:9099
 msgid ""
 "The <filename>skeletonmm/tools/generate_defs_and_docs.sh</filename> script "
 "generates all <filename>.defs</filename> files and the <filename>*_docs.xml</"
@@ -12251,18 +12595,18 @@ msgid ""
 "\">Documentation</link> section."
 msgstr ""
 
-#: C/index-in.docbook:9106
+#: C/index-in.docbook:9105
 msgid "Generating the methods .defs"
 msgstr ""
 
-#: C/index-in.docbook:9110
+#: C/index-in.docbook:9109
 #, no-wrap
 msgid ""
 "\n"
 "$ ./h2def.py /usr/include/gtk-4.0/gtk/*.h &gt; gtk_methods.defs\n"
 msgstr ""
 
-#: C/index-in.docbook:9107
+#: C/index-in.docbook:9106
 msgid ""
 "This <filename>.defs</filename> file describes objects and their functions. "
 "It is generated by the <command>h2def.py</command> script which you can find "
@@ -12270,18 +12614,18 @@ msgid ""
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9117
+#: C/index-in.docbook:9116
 msgid "Generating the enums .defs"
 msgstr ""
 
-#: C/index-in.docbook:9121
+#: C/index-in.docbook:9120
 #, no-wrap
 msgid ""
 "\n"
 "$ ./enum.pl /usr/include/gtk-4.0/gtk/*.h &gt; gtk_enums.defs\n"
 msgstr ""
 
-#: C/index-in.docbook:9118
+#: C/index-in.docbook:9117
 msgid ""
 "This <filename>.defs</filename> file describes enum types and their possible "
 "values. It is generated by the <filename>enum.pl</filename> script which you "
@@ -12289,11 +12633,11 @@ msgid ""
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9128
+#: C/index-in.docbook:9127
 msgid "Generating the signals and properties .defs"
 msgstr ""
 
-#: C/index-in.docbook:9133
+#: C/index-in.docbook:9132
 #, no-wrap
 msgid ""
 "\n"
@@ -12301,7 +12645,7 @@ msgid ""
 "$ ./generate_extra_defs &gt; gtk_signals.defs\n"
 msgstr ""
 
-#: C/index-in.docbook:9129
+#: C/index-in.docbook:9128
 msgid ""
 "This <filename>.defs</filename> file describes signals and properties. It is "
 "generated by the special <filename>generate_extra_defs</filename> utility "
@@ -12309,7 +12653,7 @@ msgid ""
 "extra_defs_gen/</filename>. For instance <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9138
+#: C/index-in.docbook:9137
 msgid ""
 "You must edit the source code of your own <filename>generate_extra_defs</"
 "filename> tool in order to generate the <filename>.defs</filename> for the "
@@ -12321,7 +12665,7 @@ msgid ""
 "should also mention the new source filename."
 msgstr ""
 
-#: C/index-in.docbook:9147
+#: C/index-in.docbook:9146
 #, no-wrap
 msgid ""
 "\n"
@@ -12339,18 +12683,18 @@ msgid ""
 "}\n"
 msgstr ""
 
-#: C/index-in.docbook:9145
+#: C/index-in.docbook:9144
 msgid ""
 "Then edit the <filename>.cc</filename> file to specify the correct types. "
 "For instance, your <function>main()</function> function might look like "
 "this: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9165
+#: C/index-in.docbook:9164
 msgid "Writing the vfuncs .defs"
 msgstr ""
 
-#: C/index-in.docbook:9166
+#: C/index-in.docbook:9165
 msgid ""
 "This <filename>.defs</filename> file describes virtual functions (vfuncs). "
 "It must be written by hand. There is the skeleton file <filename>skeleton/"
@@ -12359,11 +12703,11 @@ msgid ""
 "filename> file."
 msgstr ""
 
-#: C/index-in.docbook:9177
+#: C/index-in.docbook:9176
 msgid "The .hg and .ccg files"
 msgstr ""
 
-#: C/index-in.docbook:9178
+#: C/index-in.docbook:9177
 msgid ""
 "The .hg and .ccg source files are very much like .h and .cc C++ source "
 "files, but they contain extra macros, such as <function>_CLASS_GOBJECT()</"
@@ -12373,7 +12717,7 @@ msgid ""
 "copied verbatim into the corresponding .h or .cc file."
 msgstr ""
 
-#: C/index-in.docbook:9191
+#: C/index-in.docbook:9190
 #, no-wrap
 msgid ""
 "\n"
@@ -12410,7 +12754,7 @@ msgid ""
 "} // namespace Gtk\n"
 msgstr ""
 
-#: C/index-in.docbook:9186
+#: C/index-in.docbook:9185
 msgid ""
 "A .hg file will typically include some headers and then declare a class, "
 "using some macros to add API or behaviour to this class. For instance, "
@@ -12418,69 +12762,69 @@ msgid ""
 "roughly like this: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9228
+#: C/index-in.docbook:9227
 msgid "<function>_DEFS()</function>"
 msgstr ""
 
-#: C/index-in.docbook:9229
+#: C/index-in.docbook:9228
 msgid ""
 "Specifies the destination directory for generated sources, and the name of "
 "the main .defs file that <command>gmmproc</command> should parse."
 msgstr ""
 
-#: C/index-in.docbook:9232
+#: C/index-in.docbook:9231
 msgid "<function>_PINCLUDE()</function>"
 msgstr ""
 
-#: C/index-in.docbook:9233
+#: C/index-in.docbook:9232
 msgid ""
 "Tells <command>gmmproc</command> to include a header in the generated "
 "<filename>private/button_p.h</filename> file."
 msgstr ""
 
-#: C/index-in.docbook:9236
+#: C/index-in.docbook:9235
 msgid "<function>_CLASS_GTKOBJECT()</function>"
 msgstr ""
 
-#: C/index-in.docbook:9237
+#: C/index-in.docbook:9236
 msgid ""
 "Tells <command>gmmproc</command> to add some typedefs, constructors, and "
 "standard methods to this class, as appropriate when wrapping a widget."
 msgstr ""
 
-#: C/index-in.docbook:9240
+#: C/index-in.docbook:9239
 msgid "<function>_IMPLEMENTS_INTERFACE()</function>"
 msgstr ""
 
-#: C/index-in.docbook:9241
+#: C/index-in.docbook:9240
 msgid ""
 "Tells <command>gmmproc</command> to add initialization code for the "
 "interface."
 msgstr ""
 
-#: C/index-in.docbook:9244
+#: C/index-in.docbook:9243
 msgid "<function>_CTOR_DEFAULT</function>"
 msgstr ""
 
-#: C/index-in.docbook:9245
+#: C/index-in.docbook:9244
 msgid "Adds a default constructor."
 msgstr ""
 
-#: C/index-in.docbook:9248
+#: C/index-in.docbook:9247
 msgid ""
 "<function>_WRAP_METHOD()</function>, <function>_WRAP_SIGNAL()</function>, "
 "and <function>_WRAP_PROPERTY()</function>"
 msgstr ""
 
-#: C/index-in.docbook:9251
+#: C/index-in.docbook:9250
 msgid "Add methods to wrap parts of the C API."
 msgstr ""
 
-#: C/index-in.docbook:9225
+#: C/index-in.docbook:9224
 msgid "The macros in this example do the following: <_:variablelist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9258
+#: C/index-in.docbook:9257
 #, no-wrap
 msgid ""
 "\n"
@@ -12488,21 +12832,21 @@ msgid ""
 "$ /usr/lib/glibmm-2.68/proc/gmmproc -I ../../tools/m4 --defs . button . ./../gtkmm\n"
 msgstr ""
 
-#: C/index-in.docbook:9255
+#: C/index-in.docbook:9254
 msgid ""
 "The .h and .cc files will be generated from the .hg and .ccg files by "
 "processing them with <command>gmmproc</command> like so, though this happens "
 "automatically when using the above build structure: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9263
+#: C/index-in.docbook:9262
 msgid ""
 "Notice that we provided <command>gmmproc</command> with the path to the .m4 "
 "convert files, the path to the .defs file, the name of a .hg file, the "
 "source directory, and the destination directory."
 msgstr ""
 
-#: C/index-in.docbook:9266
+#: C/index-in.docbook:9265
 msgid ""
 "You should avoid including the C header from your C++ header, to avoid "
 "polluting the global namespace, and to avoid exporting unnecessary public "
@@ -12510,22 +12854,22 @@ msgid ""
 "file."
 msgstr ""
 
-#: C/index-in.docbook:9271
+#: C/index-in.docbook:9270
 msgid "The macros are explained in more detail in the following sections."
 msgstr ""
 
-#: C/index-in.docbook:9274
+#: C/index-in.docbook:9273
 msgid "m4 Conversions"
 msgstr ""
 
-#: C/index-in.docbook:9282
+#: C/index-in.docbook:9281
 #, no-wrap
 msgid ""
 "\n"
 "_CONVERSION(`GtkTreeView*',`TreeView*',`Glib::wrap($3)')\n"
 msgstr ""
 
-#: C/index-in.docbook:9275
+#: C/index-in.docbook:9274
 msgid ""
 "The macros that you use in the .hg and .ccg files often need to know how to "
 "convert a C++ type to a C type, or vice-versa. <command>gmmproc</command> "
@@ -12537,13 +12881,13 @@ msgid ""
 "<classname>Gtk::TreeView</classname> pointer: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9287
+#: C/index-in.docbook:9286
 msgid ""
 "<literal>$3</literal> will be replaced by the parameter name when this "
 "conversion is used by <command>gmmproc</command>."
 msgstr ""
 
-#: C/index-in.docbook:9294
+#: C/index-in.docbook:9293
 #, no-wrap
 msgid ""
 "\n"
@@ -12552,18 +12896,18 @@ msgid ""
 "_CONVERSION(`const Glib::RefPtr&lt;Printer&gt;&amp;',`GtkPrinter*',__CONVERT_REFPTR_TO_P($3))\n"
 msgstr ""
 
-#: C/index-in.docbook:9291
+#: C/index-in.docbook:9290
 msgid ""
 "Some extra macros make this easier and consistent. Look in "
 "<application>gtkmm</application>'s .m4 files for examples. For instance: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9303
+#: C/index-in.docbook:9302
 msgid "m4 Initializations"
 msgstr "安装m4"
 
-#: C/index-in.docbook:9304
+#: C/index-in.docbook:9303
 msgid ""
 "Often when wrapping methods, it is desirable to store the return of the C "
 "function in what is called an output parameter. In this case, the C++ method "
@@ -12574,14 +12918,14 @@ msgid ""
 "how to initialize the C++ parameter from the return of the C function."
 msgstr ""
 
-#: C/index-in.docbook:9319
+#: C/index-in.docbook:9318
 #, no-wrap
 msgid ""
 "\n"
 "_INITIALIZATION(`Gtk::Widget&amp;',`GtkWidget*',`$3 = Glib::wrap($4)')\n"
 msgstr ""
 
-#: C/index-in.docbook:9313
+#: C/index-in.docbook:9312
 msgid ""
 "For example, if there was a C function that returned a <type>GtkWidget*</"
 "type> and for some reason, instead of having the C++ method also return the "
@@ -12590,7 +12934,7 @@ msgid ""
 "would be necessary: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9324
+#: C/index-in.docbook:9323
 msgid ""
 "<literal>$3</literal> will be replaced by the output parameter name of the C+"
 "+ method and <literal>$4</literal> will be replaced by the return of the C "
@@ -12600,11 +12944,11 @@ msgid ""
 "the C type."
 msgstr ""
 
-#: C/index-in.docbook:9335
+#: C/index-in.docbook:9334
 msgid "Class macros"
 msgstr ""
 
-#: C/index-in.docbook:9336
+#: C/index-in.docbook:9335
 msgid ""
 "The class macro declares the class itself and its relationship with the "
 "underlying C type. It generates some internal constructors, the member "
@@ -12613,71 +12957,71 @@ msgid ""
 "method, among other things."
 msgstr ""
 
-#: C/index-in.docbook:9341
+#: C/index-in.docbook:9340
 msgid ""
 "Other macros, such as <function>_WRAP_METHOD()</function> and "
 "<function>_WRAP_SIGNAL()</function> may only be used after a call to a "
 "<function>_CLASS_*</function> macro."
 msgstr ""
 
-#: C/index-in.docbook:9346
+#: C/index-in.docbook:9345
 msgid "_CLASS_GOBJECT"
 msgstr ""
 
-#: C/index-in.docbook:9347
+#: C/index-in.docbook:9346
 msgid ""
 "This macro declares a wrapper for a type that is derived from "
 "<classname>GObject</classname>, but whose wrapper is not derived from "
 "<classname>Gtk::Object</classname>."
 msgstr ""
 
-#: C/index-in.docbook:9350
+#: C/index-in.docbook:9349
 msgid ""
 "<function>_CLASS_GOBJECT( C++ class, C class, C casting macro, C++ base "
 "class, C base class )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9352
+#: C/index-in.docbook:9351
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_GOBJECT(AccelGroup, GtkAccelGroup, GTK_ACCEL_GROUP, Glib::Object, GObject)\n"
 msgstr ""
 
-#: C/index-in.docbook:9351
+#: C/index-in.docbook:9350
 msgid ""
 "For instance, from <filename>accelgroup.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9359
+#: C/index-in.docbook:9358
 msgid "_CLASS_GTKOBJECT"
 msgstr ""
 
-#: C/index-in.docbook:9360
+#: C/index-in.docbook:9359
 msgid ""
 "This macro declares a wrapper for a type whose wrapper is derived from "
 "<classname>Gtk::Object</classname>, such as a widget or dialog."
 msgstr ""
 
-#: C/index-in.docbook:9362
+#: C/index-in.docbook:9361
 msgid ""
 "<function>_CLASS_GTKOBJECT( C++ class, C class, C casting macro, C++ base "
 "class, C base class )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9364
+#: C/index-in.docbook:9363
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_GTKOBJECT(Button, GtkButton, GTK_BUTTON, Gtk::Bin, GtkBin)\n"
 msgstr ""
 
-#: C/index-in.docbook:9363 C/index-in.docbook:9848 C/index-in.docbook:9953
+#: C/index-in.docbook:9362 C/index-in.docbook:9847 C/index-in.docbook:9952
 msgid ""
 "For instance, from <filename>button.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9368
+#: C/index-in.docbook:9367
 msgid ""
 "You will typically use this macro when the class already derives from "
 "<classname>Gtk::Object</classname>. For instance, you will use it when "
@@ -12685,7 +13029,7 @@ msgid ""
 "from <classname>Gtk::Object</classname>."
 msgstr ""
 
-#: C/index-in.docbook:9372
+#: C/index-in.docbook:9371
 msgid ""
 "You might also derive non-widget classes from <classname>Gtk::Object</"
 "classname> so they can be used without <classname>Glib::RefPtr</classname>. "
@@ -12695,39 +13039,39 @@ msgid ""
 "reference-counting is not needed. We consider it useful for widgets."
 msgstr ""
 
-#: C/index-in.docbook:9382
+#: C/index-in.docbook:9381
 msgid "_CLASS_BOXEDTYPE"
 msgstr ""
 
-#: C/index-in.docbook:9383
+#: C/index-in.docbook:9382
 msgid ""
 "This macro declares a wrapper for a non-<classname>GObject</classname> "
 "struct, registered with <function>g_boxed_type_register_static()</function>."
 msgstr ""
 
-#: C/index-in.docbook:9386
+#: C/index-in.docbook:9385
 msgid ""
 "<function>_CLASS_BOXEDTYPE( C++ class, C class, new function, copy function, "
 "free function )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9388
+#: C/index-in.docbook:9387
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_BOXEDTYPE(RGBA, GdkRGBA, NONE, gdk_rgba_copy, gdk_rgba_free)\n"
 msgstr ""
 
-#: C/index-in.docbook:9387
+#: C/index-in.docbook:9386
 msgid ""
 "For instance, from <classname>Gdk::RGBA</classname>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9395
+#: C/index-in.docbook:9394
 msgid "_CLASS_BOXEDTYPE_STATIC"
 msgstr ""
 
-#: C/index-in.docbook:9396
+#: C/index-in.docbook:9395
 msgid ""
 "This macro declares a wrapper for a simple assignable struct such as "
 "<classname>GdkRectangle</classname>. It is similar to "
@@ -12735,147 +13079,147 @@ msgid ""
 "dynamically."
 msgstr ""
 
-#: C/index-in.docbook:9400
+#: C/index-in.docbook:9399
 msgid "<function>_CLASS_BOXEDTYPE_STATIC( C++ class, C class )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9402
+#: C/index-in.docbook:9401
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_BOXEDTYPE_STATIC(Rectangle, GdkRectangle)\n"
 msgstr ""
 
-#: C/index-in.docbook:9401
+#: C/index-in.docbook:9400
 msgid ""
 "For instance, for <classname>Gdk::Rectangle</classname>: <_:programlisting-1/"
 ">"
 msgstr ""
 
-#: C/index-in.docbook:9409
+#: C/index-in.docbook:9408
 msgid "_CLASS_OPAQUE_COPYABLE"
 msgstr ""
 
-#: C/index-in.docbook:9410
+#: C/index-in.docbook:9409
 msgid ""
 "This macro declares a wrapper for an opaque struct that has copy and free "
 "functions. The new, copy and free functions will be used to instantiate the "
 "default constructor, copy constructor and destructor."
 msgstr ""
 
-#: C/index-in.docbook:9413
+#: C/index-in.docbook:9412
 msgid ""
 "<function>_CLASS_OPAQUE_COPYABLE( C++ class, C class, new function, copy "
 "function, free function )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9415
+#: C/index-in.docbook:9414
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_OPAQUE_COPYABLE(Checksum, GChecksum, NONE, g_checksum_copy, g_checksum_free)\n"
 msgstr ""
 
-#: C/index-in.docbook:9414
+#: C/index-in.docbook:9413
 msgid ""
 "For instance, from <classname>Glib::Checksum</classname>: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9422
+#: C/index-in.docbook:9421
 msgid "_CLASS_OPAQUE_REFCOUNTED"
 msgstr ""
 
-#: C/index-in.docbook:9423
+#: C/index-in.docbook:9422
 msgid ""
 "This macro declares a wrapper for a reference-counted opaque struct. The C++ "
 "wrapper cannot be directly instantiated and can only be used with "
 "<classname>Glib::RefPtr</classname>."
 msgstr ""
 
-#: C/index-in.docbook:9426
+#: C/index-in.docbook:9425
 msgid ""
 "<function>_CLASS_OPAQUE_REFCOUNTED( C++ class, C class, new function, ref "
 "function, unref function )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9428
+#: C/index-in.docbook:9427
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_OPAQUE_REFCOUNTED(Coverage, PangoCoverage, pango_coverage_new, pango_coverage_ref, 
pango_coverage_unref)\n"
 msgstr ""
 
-#: C/index-in.docbook:9427
+#: C/index-in.docbook:9426
 msgid ""
 "For instance, for <classname>Pango::Coverage</classname>: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9435
+#: C/index-in.docbook:9434
 msgid "_CLASS_GENERIC"
 msgstr ""
 
-#: C/index-in.docbook:9436
+#: C/index-in.docbook:9435
 msgid ""
 "This macro can be used to wrap structs which don't fit into any specialized "
 "category."
 msgstr ""
 
-#: C/index-in.docbook:9438
+#: C/index-in.docbook:9437
 msgid "<function>_CLASS_GENERIC( C++ class, C class )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9440
+#: C/index-in.docbook:9439
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_GENERIC(AttrIter, PangoAttrIterator)\n"
 msgstr ""
 
-#: C/index-in.docbook:9439
+#: C/index-in.docbook:9438
 msgid ""
 "For instance, for <classname>Pango::AttrIter</classname>: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9447
+#: C/index-in.docbook:9446
 msgid "_CLASS_INTERFACE"
 msgstr ""
 
-#: C/index-in.docbook:9448
+#: C/index-in.docbook:9447
 msgid ""
 "This macro declares a wrapper for a type that is derived from "
 "<classname>GTypeInterface</classname>."
 msgstr ""
 
-#: C/index-in.docbook:9451
+#: C/index-in.docbook:9450
 msgid ""
 "<function>_CLASS_INTERFACE( C++ class, C class, C casting macro, C interface "
 "struct, Base C++ class (optional), Base C class (optional) )</function>"
 msgstr ""
 
-#: C/index-in.docbook:9454
+#: C/index-in.docbook:9453
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_INTERFACE(CellEditable, GtkCellEditable, GTK_CELL_EDITABLE, GtkCellEditableIface)\n"
 msgstr ""
 
-#: C/index-in.docbook:9452
+#: C/index-in.docbook:9451
 msgid ""
 "For instance, from <filename>celleditable.hg</filename>: <_:programlisting-1/"
 ">"
 msgstr ""
 
-#: C/index-in.docbook:9461
+#: C/index-in.docbook:9460
 #, no-wrap
 msgid ""
 "\n"
 "_CLASS_INTERFACE(LoadableIcon, GLoadableIcon, G_LOADABLE_ICON, GLoadableIconIface, Icon, GIcon)\n"
 msgstr ""
 
-#: C/index-in.docbook:9458
+#: C/index-in.docbook:9457
 msgid ""
 "Two extra parameters are optional, for the case that the interface derives "
 "from another interface, which should be the case when the GInterface has "
@@ -12883,11 +13227,11 @@ msgid ""
 "<filename>loadableicon.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9470
+#: C/index-in.docbook:9469
 msgid "Constructor macros"
 msgstr ""
 
-#: C/index-in.docbook:9471
+#: C/index-in.docbook:9470
 msgid ""
 "The <function>_CTOR_DEFAULT()</function> and <function>_WRAP_CTOR()</"
 "function> macros add constructors, wrapping the specified <function>*_new()</"
@@ -12901,7 +13245,7 @@ msgid ""
 "functions for C programmers."
 msgstr ""
 
-#: C/index-in.docbook:9486
+#: C/index-in.docbook:9485
 #, no-wrap
 msgid ""
 "\n"
@@ -12916,7 +13260,7 @@ msgid ""
 "  _WRAP_CREATE(const Glib::ustring&amp; name, bool left_gravity = true)\n"
 msgstr ""
 
-#: C/index-in.docbook:9481
+#: C/index-in.docbook:9480
 msgid ""
 "When using <function>_CLASS_GOBJECT()</function>, the constructors should be "
 "protected (rather than public) and each constructor should have a "
@@ -12925,19 +13269,19 @@ msgid ""
 "<classname>RefPtr</classname>. For instance: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9500
+#: C/index-in.docbook:9499
 msgid "_CTOR_DEFAULT"
 msgstr ""
 
-#: C/index-in.docbook:9501
+#: C/index-in.docbook:9500
 msgid "This macro creates a default constructor with no arguments."
 msgstr ""
 
-#: C/index-in.docbook:9506
+#: C/index-in.docbook:9505
 msgid "_WRAP_CTOR"
 msgstr ""
 
-#: C/index-in.docbook:9507
+#: C/index-in.docbook:9506
 msgid ""
 "This macro creates a constructor with arguments, equivalent to a "
 "<function>*_new()</function> C function. It won't actually call the "
@@ -12946,26 +13290,26 @@ msgid ""
 "signature, and a C function name."
 msgstr ""
 
-#: C/index-in.docbook:9517 C/index-in.docbook:10021
+#: C/index-in.docbook:9516 C/index-in.docbook:10020
 msgid "errthrow"
 msgstr ""
 
-#: C/index-in.docbook:9519
+#: C/index-in.docbook:9518
 msgid ""
 "This tells <command>gmmproc</command> that the C <function>*_new()</"
 "function> has a final <type>GError**</type> parameter which should be "
 "ignored."
 msgstr ""
 
-#: C/index-in.docbook:9514
+#: C/index-in.docbook:9513
 msgid "It also takes an optional extra argument: <_:variablelist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9528
+#: C/index-in.docbook:9527
 msgid "Hand-coding constructors"
 msgstr ""
 
-#: C/index-in.docbook:9537
+#: C/index-in.docbook:9536
 #, no-wrap
 msgid ""
 "\n"
@@ -12975,7 +13319,7 @@ msgid ""
 "{}\n"
 msgstr ""
 
-#: C/index-in.docbook:9529
+#: C/index-in.docbook:9528
 msgid ""
 "When a constructor must be partly hand written because, for instance, the "
 "<function>*_new()</function> C function's parameters do not correspond "
@@ -12987,11 +13331,11 @@ msgid ""
 "filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9549
+#: C/index-in.docbook:9548
 msgid "Macros that suppress generation of some code"
 msgstr ""
 
-#: C/index-in.docbook:9550
+#: C/index-in.docbook:9549
 msgid ""
 "Some macros suppress the generation of some code when they are used after a "
 "<function>_CLASS_*</function> macro. Some suppress the definition in the "
@@ -12999,36 +13343,36 @@ msgid ""
 "the definition in the .cc file."
 msgstr ""
 
-#: C/index-in.docbook:9557
+#: C/index-in.docbook:9556
 msgid "_CUSTOM_DEFAULT_CTOR"
 msgstr ""
 
-#: C/index-in.docbook:9558
+#: C/index-in.docbook:9557
 msgid ""
 "Suppresses declaration and definition of default constructor in "
 "<function>_CLASS_BOXEDTYPE</function>, <function>_CLASS_BOXEDTYPE_STATIC</"
 "function> and <function>_CLASS_OPAQUE_COPYABLE</function>."
 msgstr ""
 
-#: C/index-in.docbook:9565
+#: C/index-in.docbook:9564
 msgid "_CUSTOM_CTOR_CAST"
 msgstr ""
 
-#: C/index-in.docbook:9566
+#: C/index-in.docbook:9565
 msgid ""
 "Suppresses declaration and definition of the constructor that takes a "
 "pointer to the wrapped C object in <function>_CLASS_BOXEDTYPE</function> and "
 "<function>_CLASS_BOXEDTYPE_STATIC</function>."
 msgstr ""
 
-#: C/index-in.docbook:9570
+#: C/index-in.docbook:9569
 msgid ""
 "Suppresses definition of the constructor that takes a pointer to the wrapped "
 "C object in <function>_CLASS_INTERFACE</function> and "
 "<function>_CLASS_OPAQUE_COPYABLE</function>."
 msgstr ""
 
-#: C/index-in.docbook:9574
+#: C/index-in.docbook:9573
 msgid ""
 "Suppresses definition of the constructor that takes a pointer to the wrapped "
 "C object and the constructor that takes construct_params in "
@@ -13036,28 +13380,28 @@ msgid ""
 "function>."
 msgstr ""
 
-#: C/index-in.docbook:9581
+#: C/index-in.docbook:9580
 msgid "_CUSTOM_DTOR"
 msgstr ""
 
-#: C/index-in.docbook:9582
+#: C/index-in.docbook:9581
 msgid ""
 "Suppresses definition of destructor in <function>_CLASS_GOBJECT</function> "
 "and <function>_CLASS_GTKOBJECT</function>."
 msgstr ""
 
-#: C/index-in.docbook:9588
+#: C/index-in.docbook:9587
 msgid "_CUSTOM_MOVE_OPERATIONS"
 msgstr ""
 
-#: C/index-in.docbook:9589
+#: C/index-in.docbook:9588
 msgid ""
 "Suppresses declaration and definition of move constructor and move "
 "assignment operator in <function>_CLASS_GOBJECT</function> and "
 "<function>_CLASS_GTKOBJECT</function>."
 msgstr ""
 
-#: C/index-in.docbook:9594
+#: C/index-in.docbook:9593
 #, no-wrap
 msgid ""
 "\n"
@@ -13074,36 +13418,36 @@ msgid ""
 "};\n"
 msgstr ""
 
-#: C/index-in.docbook:9593
+#: C/index-in.docbook:9592
 msgid "For example: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9611
+#: C/index-in.docbook:9610
 msgid "_CUSTOM_WRAP_NEW"
 msgstr ""
 
-#: C/index-in.docbook:9612
+#: C/index-in.docbook:9611
 msgid ""
 "Suppresses definition of <function>Glib::wrap_new()</function> function in "
 "<function>_CLASS_GOBJECT</function>."
 msgstr ""
 
-#: C/index-in.docbook:9618
+#: C/index-in.docbook:9617
 msgid "_CUSTOM_WRAP_FUNCTION"
 msgstr ""
 
-#: C/index-in.docbook:9619
+#: C/index-in.docbook:9618
 msgid ""
 "Suppresses definition of <function>Glib::wrap()</function> function in "
 "<function>_CLASS_GOBJECT</function> and <function>_CLASS_GTKOBJECT</"
 "function>."
 msgstr ""
 
-#: C/index-in.docbook:9625
+#: C/index-in.docbook:9624
 msgid "_NO_WRAP_FUNCTION"
 msgstr ""
 
-#: C/index-in.docbook:9626
+#: C/index-in.docbook:9625
 msgid ""
 "Suppresses declaration and definition of <function>Glib::wrap()</function> "
 "function in <function>_CLASS_GOBJECT</function>, <function>_CLASS_BOXEDTYPE</"
@@ -13112,35 +13456,35 @@ msgid ""
 "function> and <function>_CLASS_GTKOBJECT</function>."
 msgstr ""
 
-#: C/index-in.docbook:9636
+#: C/index-in.docbook:9635
 msgid "Method macros"
 msgstr ""
 
-#: C/index-in.docbook:9639
+#: C/index-in.docbook:9638
 msgid "_WRAP_METHOD"
 msgstr ""
 
-#: C/index-in.docbook:9640
+#: C/index-in.docbook:9639
 msgid "This macro generates the C++ method to wrap a C function."
 msgstr ""
 
-#: C/index-in.docbook:9641
+#: C/index-in.docbook:9640
 msgid ""
 "<function>_WRAP_METHOD( C++ method signature, C function name)</function>"
 msgstr ""
 
-#: C/index-in.docbook:9643
+#: C/index-in.docbook:9642
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_METHOD(void set_text(const Glib::ustring&amp; text), gtk_entry_set_text)\n"
 msgstr ""
 
-#: C/index-in.docbook:9642
+#: C/index-in.docbook:9641
 msgid "For instance, from <filename>entry.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9647
+#: C/index-in.docbook:9646
 msgid ""
 "The C function (e.g. <function>gtk_entry_set_text</function>) is described "
 "more fully in the .defs file, and the <filename>convert*.m4</filename> files "
@@ -13150,21 +13494,21 @@ msgid ""
 "xml</filename> files."
 msgstr ""
 
-#: C/index-in.docbook:9656 C/index-in.docbook:9886 C/index-in.docbook:9996
+#: C/index-in.docbook:9655 C/index-in.docbook:9885 C/index-in.docbook:9995
 msgid "refreturn"
 msgstr ""
 
-#: C/index-in.docbook:9658
+#: C/index-in.docbook:9657
 msgid ""
 "Do an extra <function>reference()</function> on the return value, in case "
 "the C function does not provide a reference."
 msgstr ""
 
-#: C/index-in.docbook:9663 C/index-in.docbook:9786
+#: C/index-in.docbook:9662 C/index-in.docbook:9785
 msgid "errthrow [\"&lt;exceptions&gt;\"]"
 msgstr ""
 
-#: C/index-in.docbook:9665
+#: C/index-in.docbook:9664
 msgid ""
 "Use the last GError** parameter of the C function to throw an exception. The "
 "optional \"&lt;exceptions&gt;\" is a comma-separated list of exceptions that "
@@ -13175,55 +13519,55 @@ msgid ""
 "ConvertError\"</code>"
 msgstr ""
 
-#: C/index-in.docbook:9676 C/index-in.docbook:9894 C/index-in.docbook:9961
-#: C/index-in.docbook:10207
+#: C/index-in.docbook:9675 C/index-in.docbook:9893 C/index-in.docbook:9960
+#: C/index-in.docbook:10206
 msgid "deprecated [\"&lt;text&gt;\"]"
 msgstr ""
 
-#: C/index-in.docbook:9678 C/index-in.docbook:9896 C/index-in.docbook:9963
-#: C/index-in.docbook:10209
+#: C/index-in.docbook:9677 C/index-in.docbook:9895 C/index-in.docbook:9962
+#: C/index-in.docbook:10208
 msgid ""
 "Puts the generated code in #ifdef blocks. Text about the deprecation can be "
 "specified as an optional parameter."
 msgstr ""
 
-#: C/index-in.docbook:9684
+#: C/index-in.docbook:9683
 msgid "constversion"
 msgstr ""
 
-#: C/index-in.docbook:9686
+#: C/index-in.docbook:9685
 msgid ""
 "Just call the non-const version of the same function, instead of generating "
 "almost duplicate code."
 msgstr ""
 
-#: C/index-in.docbook:9691 C/index-in.docbook:9799 C/index-in.docbook:9901
-#: C/index-in.docbook:9968 C/index-in.docbook:10214
+#: C/index-in.docbook:9690 C/index-in.docbook:9798 C/index-in.docbook:9900
+#: C/index-in.docbook:9967 C/index-in.docbook:10213
 msgid "newin \"&lt;version&gt;\""
 msgstr ""
 
-#: C/index-in.docbook:9693 C/index-in.docbook:9801 C/index-in.docbook:9903
-#: C/index-in.docbook:9970 C/index-in.docbook:10216
+#: C/index-in.docbook:9692 C/index-in.docbook:9800 C/index-in.docbook:9902
+#: C/index-in.docbook:9969 C/index-in.docbook:10215
 msgid ""
 "Adds a @newin Doxygen command to the documentation, or replaces the @newin "
 "command generated from the C documentation."
 msgstr ""
 
-#: C/index-in.docbook:9698 C/index-in.docbook:9908 C/index-in.docbook:10043
-#: C/index-in.docbook:10130
+#: C/index-in.docbook:9697 C/index-in.docbook:9907 C/index-in.docbook:10042
+#: C/index-in.docbook:10129
 msgid "ifdef &lt;identifier&gt;"
 msgstr ""
 
-#: C/index-in.docbook:9700 C/index-in.docbook:9910 C/index-in.docbook:10045
-#: C/index-in.docbook:10132
+#: C/index-in.docbook:9699 C/index-in.docbook:9909 C/index-in.docbook:10044
+#: C/index-in.docbook:10131
 msgid "Puts the generated code in #ifdef blocks."
 msgstr ""
 
-#: C/index-in.docbook:9704 C/index-in.docbook:10049
+#: C/index-in.docbook:9703 C/index-in.docbook:10048
 msgid "slot_name &lt;parameter_name&gt;"
 msgstr ""
 
-#: C/index-in.docbook:9706 C/index-in.docbook:10051
+#: C/index-in.docbook:9705 C/index-in.docbook:10050
 msgid ""
 "Specifies the name of the slot parameter of the method, if it has one. This "
 "enables <command>gmmproc</command> to generate code to copy the slot and "
@@ -13233,11 +13577,11 @@ msgid ""
 "the C function."
 msgstr ""
 
-#: C/index-in.docbook:9716 C/index-in.docbook:10061
+#: C/index-in.docbook:9715 C/index-in.docbook:10060
 msgid "slot_callback &lt;function_name&gt;"
 msgstr ""
 
-#: C/index-in.docbook:9718 C/index-in.docbook:10063
+#: C/index-in.docbook:9717 C/index-in.docbook:10062
 msgid ""
 "Used in conjunction with the <literal>slot_name</literal> option to specify "
 "the name of the glue callback function that handles extracting the slot and "
@@ -13245,11 +13589,11 @@ msgid ""
 "function that the method wraps."
 msgstr ""
 
-#: C/index-in.docbook:9726 C/index-in.docbook:10071
+#: C/index-in.docbook:9725 C/index-in.docbook:10070
 msgid "no_slot_copy"
 msgstr ""
 
-#: C/index-in.docbook:9728 C/index-in.docbook:10073
+#: C/index-in.docbook:9727 C/index-in.docbook:10072
 msgid ""
 "Tells <command>gmmproc</command> not to pass a copy of the slot to the C "
 "function, if the method has one. Instead the slot itself is passed. The slot "
@@ -13258,19 +13602,19 @@ msgid ""
 "options respectively."
 msgstr ""
 
-#: C/index-in.docbook:9653 C/index-in.docbook:9783 C/index-in.docbook:9856
-#: C/index-in.docbook:9958 C/index-in.docbook:9993 C/index-in.docbook:10148
+#: C/index-in.docbook:9652 C/index-in.docbook:9782 C/index-in.docbook:9855
+#: C/index-in.docbook:9957 C/index-in.docbook:9992 C/index-in.docbook:10147
 msgid "There are some optional extra arguments: <_:variablelist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9741
+#: C/index-in.docbook:9740
 msgid ""
 "Objects used via <classname>RefPtr</classname>: Pass the <classname>RefPtr</"
 "classname> as a const reference. For instance, <code>const Glib::RefPtr&lt;"
 "Gtk::FileFilter&gt;&amp; filter</code>."
 msgstr ""
 
-#: C/index-in.docbook:9745
+#: C/index-in.docbook:9744
 msgid ""
 "Const Objects used via <classname>RefPtr</classname>: If the object should "
 "not be changed by the function, then make sure that the object is const, "
@@ -13278,7 +13622,7 @@ msgid ""
 "<code>const Glib::RefPtr&lt;const Gtk::FileFilter&gt;&amp; filter</code>."
 msgstr ""
 
-#: C/index-in.docbook:9750
+#: C/index-in.docbook:9749
 msgid ""
 "Wrapping <classname>GList*</classname> and <classname>GSList*</classname> "
 "parameters: First, you need to discover what objects are contained in the "
@@ -13289,12 +13633,12 @@ msgid ""
 "the C and C++ types should be converted."
 msgstr ""
 
-#: C/index-in.docbook:9766
+#: C/index-in.docbook:9765
 #, no-wrap
 msgid "#m4 
_CONVERSION(`GSList*',`std::vector&lt;Widget*&gt;',`Glib::SListHandler&lt;Widget*&gt;::slist_to_vector($3, 
Glib::OWNERSHIP_SHALLOW)')"
 msgstr ""
 
-#: C/index-in.docbook:9758
+#: C/index-in.docbook:9757
 msgid ""
 "Wrapping <classname>GList*</classname> and <classname>GSList*</classname> "
 "return types: You must discover whether the caller should free the list and "
@@ -13305,18 +13649,18 @@ msgid ""
 "on the function rather than the type. For instance: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9737
+#: C/index-in.docbook:9736
 msgid ""
 "Selecting which C++ types should be used is also important when wrapping C "
 "API. Though it's usually obvious what C++ types should be used in the C++ "
 "method, here are some hints: <_:itemizedlist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9772
+#: C/index-in.docbook:9771
 msgid "_WRAP_METHOD_DOCS_ONLY"
 msgstr ""
 
-#: C/index-in.docbook:9773
+#: C/index-in.docbook:9772
 msgid ""
 "This macro is like <function>_WRAP_METHOD()</function>, but it generates "
 "only the documentation for a C++ method that wraps a C function. Use this "
@@ -13324,23 +13668,23 @@ msgid ""
 "that would be generated if the method was generated."
 msgstr ""
 
-#: C/index-in.docbook:9777
+#: C/index-in.docbook:9776
 msgid "<function>_WRAP_METHOD_DOCS_ONLY(C function name)</function>"
 msgstr ""
 
-#: C/index-in.docbook:9779
+#: C/index-in.docbook:9778
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_METHOD_DOCS_ONLY(gtk_container_add)\n"
 msgstr ""
 
-#: C/index-in.docbook:9778
+#: C/index-in.docbook:9777
 msgid ""
 "For instance, from <filename>container.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9788
+#: C/index-in.docbook:9787
 msgid ""
 "Excludes documentation of the last GError** parameter of the C function. The "
 "optional \"&lt;exceptions&gt;\" is a comma-separated list of exceptions that "
@@ -13351,22 +13695,22 @@ msgid ""
 "ConvertError\"</code>"
 msgstr ""
 
-#: C/index-in.docbook:9806
+#: C/index-in.docbook:9805
 msgid "voidreturn"
 msgstr ""
 
-#: C/index-in.docbook:9808
+#: C/index-in.docbook:9807
 msgid ""
 "Don't include a @return Doxygen command in the documentation. Useful if the "
 "wrapped C function returns a value, but the corresponding C++ method returns "
 "<type>void</type>."
 msgstr ""
 
-#: C/index-in.docbook:9818
+#: C/index-in.docbook:9817
 msgid "_IGNORE, _IGNORE_SIGNAL, _IGNORE_PROPERTY"
 msgstr ""
 
-#: C/index-in.docbook:9819
+#: C/index-in.docbook:9818
 msgid ""
 "<command>gmmproc</command> will warn you on stdout about functions, signals, "
 "properties and child properties that you have forgotten to wrap, helping to "
@@ -13376,7 +13720,7 @@ msgid ""
 "_IGNORE_PROPERTY() macro to make <command>gmmproc</command> stop complaining."
 msgstr ""
 
-#: C/index-in.docbook:9827
+#: C/index-in.docbook:9826
 #, no-wrap
 msgid ""
 "<function>_IGNORE(C function name 1, C function name 2, etc)\n"
@@ -13384,7 +13728,7 @@ msgid ""
 "_IGNORE_PROPERTY(C property name 1, C property name 2, etc)</function>"
 msgstr ""
 
-#: C/index-in.docbook:9832
+#: C/index-in.docbook:9831
 #, no-wrap
 msgid ""
 "\n"
@@ -13392,16 +13736,16 @@ msgid ""
 "_IGNORE_SIGNAL(activate-cursor-child, toggle-cursor-child, move-cursor)\n"
 msgstr ""
 
-#: C/index-in.docbook:9831
+#: C/index-in.docbook:9830
 msgid ""
 "For instance, from <filename>flowbox.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9840
+#: C/index-in.docbook:9839
 msgid "_WRAP_SIGNAL"
 msgstr ""
 
-#: C/index-in.docbook:9841
+#: C/index-in.docbook:9840
 msgid ""
 "This macro generates the C++ libsigc++-style signal to wrap a C GObject "
 "signal. It actually generates a public accessor method, such as "
@@ -13410,31 +13754,31 @@ msgid ""
 "types and the .m4 convert files to discover appropriate type conversions."
 msgstr ""
 
-#: C/index-in.docbook:9847
+#: C/index-in.docbook:9846
 msgid ""
 "<function>_WRAP_SIGNAL( C++ signal handler signature, C signal name)</"
 "function>"
 msgstr ""
 
-#: C/index-in.docbook:9849
+#: C/index-in.docbook:9848
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_SIGNAL(void clicked(),\"clicked\")\n"
 msgstr ""
 
-#: C/index-in.docbook:9853
+#: C/index-in.docbook:9852
 msgid ""
 "Signals usually have function pointers in the GTK struct, with a "
 "corresponding enum value and a <function>g_signal_new()</function> in the .c "
 "file."
 msgstr ""
 
-#: C/index-in.docbook:9859
+#: C/index-in.docbook:9858
 msgid "no_default_handler"
 msgstr ""
 
-#: C/index-in.docbook:9861
+#: C/index-in.docbook:9860
 msgid ""
 "Do not generate an <function>on_something()</function> virtual method to "
 "allow easy overriding of the default signal handler. Use this when adding a "
@@ -13443,11 +13787,11 @@ msgid ""
 "a public C default handler."
 msgstr ""
 
-#: C/index-in.docbook:9870
+#: C/index-in.docbook:9869
 msgid "custom_default_handler"
 msgstr ""
 
-#: C/index-in.docbook:9872
+#: C/index-in.docbook:9871
 msgid ""
 "Generate a declaration of the <function>on_something()</function> virtual "
 "method in the <filename>.h</filename> file, but do not generate a definition "
@@ -13455,39 +13799,39 @@ msgid ""
 "definition by hand."
 msgstr ""
 
-#: C/index-in.docbook:9879
+#: C/index-in.docbook:9878
 msgid "custom_c_callback"
 msgstr ""
 
-#: C/index-in.docbook:9881
+#: C/index-in.docbook:9880
 msgid ""
 "Do not generate a C callback function for the signal. Use this when you must "
 "generate the callback function by hand."
 msgstr ""
 
-#: C/index-in.docbook:9888
+#: C/index-in.docbook:9887
 msgid ""
 "Do an extra <function>reference()</function> on the return value of the "
 "<function>on_something()</function> virtual method, in case the C function "
 "does not provide a reference."
 msgstr ""
 
-#: C/index-in.docbook:9914 C/index-in.docbook:10097
+#: C/index-in.docbook:9913 C/index-in.docbook:10096
 msgid "exception_handler &lt;method_name&gt;"
 msgstr ""
 
-#: C/index-in.docbook:9916 C/index-in.docbook:10099
+#: C/index-in.docbook:9915 C/index-in.docbook:10098
 msgid ""
 "Allows to use custom exception handler instead of default one. Exception "
 "might be rethrown by user-defined handler, and it will be caught by default "
 "handler."
 msgstr ""
 
-#: C/index-in.docbook:9922
+#: C/index-in.docbook:9921
 msgid "detail_name &lt;parameter_name&gt;"
 msgstr ""
 
-#: C/index-in.docbook:9924
+#: C/index-in.docbook:9923
 msgid ""
 "Adds a <type>const Glib::ustring&amp;</type> parameter to the "
 "<methodname>signal_something()</methodname> method. Use it, if the signal "
@@ -13495,11 +13839,11 @@ msgid ""
 "signal with the <literal>G_SIGNAL_DETAILED</literal> flag."
 msgstr ""
 
-#: C/index-in.docbook:9931
+#: C/index-in.docbook:9930
 msgid "two_signal_methods"
 msgstr ""
 
-#: C/index-in.docbook:9933
+#: C/index-in.docbook:9932
 msgid ""
 "Used in conjunction with the <literal>detail_name</literal> option to "
 "generate two <methodname>signal_something()</methodname> methods, one "
@@ -13509,11 +13853,11 @@ msgid ""
 "literal> option, if it's necessary in order to preserve ABI."
 msgstr ""
 
-#: C/index-in.docbook:9947
+#: C/index-in.docbook:9946
 msgid "_WRAP_PROPERTY"
 msgstr ""
 
-#: C/index-in.docbook:9948
+#: C/index-in.docbook:9947
 msgid ""
 "This macro generates the C++ method to wrap a C GObject property. You must "
 "specify the property name and the wanted C++ type for the property. "
@@ -13521,43 +13865,43 @@ msgid ""
 "the .m4 convert files to discover appropriate type conversions."
 msgstr ""
 
-#: C/index-in.docbook:9952
+#: C/index-in.docbook:9951
 msgid "<function>_WRAP_PROPERTY(C property name, C++ type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:9954
+#: C/index-in.docbook:9953
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_PROPERTY(\"label\", Glib::ustring)\n"
 msgstr ""
 
-#: C/index-in.docbook:9979
+#: C/index-in.docbook:9978
 msgid "_WRAP_VFUNC"
 msgstr ""
 
-#: C/index-in.docbook:9980
+#: C/index-in.docbook:9979
 msgid "This macro generates the C++ method to wrap a virtual C function."
 msgstr ""
 
-#: C/index-in.docbook:9981
+#: C/index-in.docbook:9980
 msgid ""
 "<function>_WRAP_VFUNC( C++ method signature, C function name)</function>"
 msgstr ""
 
-#: C/index-in.docbook:9983
+#: C/index-in.docbook:9982
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_VFUNC(SizeRequestMode get_request_mode() const, get_request_mode)\n"
 msgstr ""
 
-#: C/index-in.docbook:9982
+#: C/index-in.docbook:9981
 msgid ""
 "For instance, from <filename>widget.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:9987
+#: C/index-in.docbook:9986
 msgid ""
 "The C function (e.g. <function>get_request_mode</function>) is described "
 "more fully in the <filename>*_vfuncs.defs</filename> file, and the "
@@ -13567,73 +13911,73 @@ msgid ""
 "that are best kept local to the .hg file where they are used."
 msgstr ""
 
-#: C/index-in.docbook:9998
+#: C/index-in.docbook:9997
 msgid ""
 "Do an extra <function>reference()</function> on the return value of the "
 "<function>something_vfunc()</function> function, in case the virtual C "
 "function does not provide a reference."
 msgstr ""
 
-#: C/index-in.docbook:10004
+#: C/index-in.docbook:10003
 msgid "refreturn_ctype"
 msgstr ""
 
-#: C/index-in.docbook:10006
+#: C/index-in.docbook:10005
 msgid ""
 "Do an extra <function>reference()</function> on the return value of an "
 "overridden <function>something_vfunc()</function> function in the C callback "
 "function, in case the calling C function expects it to provide a reference."
 msgstr ""
 
-#: C/index-in.docbook:10013
+#: C/index-in.docbook:10012
 msgid "keep_return"
 msgstr ""
 
-#: C/index-in.docbook:10015
+#: C/index-in.docbook:10014
 msgid ""
 "Keep a copy of the return value in the C callback function, in case the "
 "calling C function does not expect to get its own reference."
 msgstr ""
 
-#: C/index-in.docbook:10023
+#: C/index-in.docbook:10022
 msgid ""
 "Use the last GError** parameter of the C virtual function (if there is one) "
 "to throw an exception."
 msgstr ""
 
-#: C/index-in.docbook:10028
+#: C/index-in.docbook:10027
 msgid "custom_vfunc"
 msgstr ""
 
-#: C/index-in.docbook:10030
+#: C/index-in.docbook:10029
 msgid ""
 "Do not generate a definition of the vfunc in the <filename>.cc</filename> "
 "file. Use this when you must generate the vfunc by hand."
 msgstr ""
 
-#: C/index-in.docbook:10036
+#: C/index-in.docbook:10035
 msgid "custom_vfunc_callback"
 msgstr ""
 
-#: C/index-in.docbook:10038
+#: C/index-in.docbook:10037
 msgid ""
 "Do not generate a C callback function for the vfunc. Use this when you must "
 "generate the callback function by hand."
 msgstr ""
 
-#: C/index-in.docbook:10081
+#: C/index-in.docbook:10080
 msgid "return_value &lt;value&gt;"
 msgstr ""
 
-#: C/index-in.docbook:10083
+#: C/index-in.docbook:10082
 msgid "Defines a non-default return value."
 msgstr ""
 
-#: C/index-in.docbook:10087
+#: C/index-in.docbook:10086
 msgid "err_return_value &lt;value&gt;"
 msgstr ""
 
-#: C/index-in.docbook:10089
+#: C/index-in.docbook:10088
 msgid ""
 "Defines a non-default return value, used only if the C++ "
 "<function>something_vfunc()</function> function throws an exception which is "
@@ -13642,7 +13986,7 @@ msgid ""
 "propagated."
 msgstr ""
 
-#: C/index-in.docbook:10106
+#: C/index-in.docbook:10105
 msgid ""
 "A rule to which there may be exceptions: If the virtual C function returns a "
 "pointer to an object derived from <classname>GObject</classname>, i.e. a "
@@ -13652,63 +13996,63 @@ msgid ""
 "parameter> is required."
 msgstr ""
 
-#: C/index-in.docbook:10117
+#: C/index-in.docbook:10116
 msgid "Other macros"
 msgstr ""
 
-#: C/index-in.docbook:10119
+#: C/index-in.docbook:10118
 msgid "_IMPLEMENTS_INTERFACE"
 msgstr ""
 
-#: C/index-in.docbook:10120
+#: C/index-in.docbook:10119
 msgid "This macro generates initialization code for the interface."
 msgstr ""
 
-#: C/index-in.docbook:10121
+#: C/index-in.docbook:10120
 msgid "<function>_IMPLEMENTS_INTERFACE(C++ interface name)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10123
+#: C/index-in.docbook:10122
 #, no-wrap
 msgid ""
 "\n"
 "_IMPLEMENTS_INTERFACE(Orientable)\n"
 msgstr ""
 
-#: C/index-in.docbook:10122
+#: C/index-in.docbook:10121
 msgid "For instance, from <filename>grid.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10127
+#: C/index-in.docbook:10126
 msgid "There is one optional extra argument: <_:variablelist-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10140
+#: C/index-in.docbook:10139
 msgid "_WRAP_ENUM"
 msgstr ""
 
-#: C/index-in.docbook:10141
+#: C/index-in.docbook:10140
 msgid ""
 "This macro generates a C++ enum to wrap a C enum. You must specify the "
 "desired C++ name and the name of the underlying C enum."
 msgstr ""
 
-#: C/index-in.docbook:10144
+#: C/index-in.docbook:10143
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_ENUM(WindowType, GtkWindowType)\n"
 msgstr ""
 
-#: C/index-in.docbook:10143
+#: C/index-in.docbook:10142
 msgid "For instance, from <filename>enums.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10151
+#: C/index-in.docbook:10150
 msgid "NO_GTYPE"
 msgstr ""
 
-#: C/index-in.docbook:10153
+#: C/index-in.docbook:10152
 msgid ""
 "Use this option, if the enum is not a <classname>GType</classname>. This is "
 "the case when there is no <function>*_get_type()</function> function for the "
@@ -13717,14 +14061,14 @@ msgid ""
 "enums should be registered as GTypes."
 msgstr ""
 
-#: C/index-in.docbook:10158
+#: C/index-in.docbook:10157
 msgid ""
 "If you specify <literal>NO_GTYPE</literal>, don't use that enum as the type "
 "in _WRAP_PROPERTY. It would cause a runtime error, when the generated "
 "<methodname>property_*()</methodname> method is called."
 msgstr ""
 
-#: C/index-in.docbook:10162
+#: C/index-in.docbook:10161
 #, no-wrap
 msgid ""
 "\n"
@@ -13732,23 +14076,23 @@ msgid ""
 "      "
 msgstr ""
 
-#: C/index-in.docbook:10161
+#: C/index-in.docbook:10160
 msgid ""
 "For example, from <filename>icontheme.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10169
+#: C/index-in.docbook:10168
 msgid "gtype_func &lt;function_name&gt;"
 msgstr ""
 
-#: C/index-in.docbook:10171
+#: C/index-in.docbook:10170
 msgid ""
 "Specifies the name of the <function>*_get_type()</function> function for the "
 "C enum. Use this parameter if <command>gmmproc</command> can't deduce the "
 "correct function name from the name of the C enum type."
 msgstr ""
 
-#: C/index-in.docbook:10175
+#: C/index-in.docbook:10174
 #, no-wrap
 msgid ""
 "\n"
@@ -13756,24 +14100,24 @@ msgid ""
 "      "
 msgstr ""
 
-#: C/index-in.docbook:10174
+#: C/index-in.docbook:10173
 msgid ""
 "For example, from <filename>dbusproxy.hg</filename> in glibmm: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10182
+#: C/index-in.docbook:10181
 msgid "CONV_TO_INT"
 msgstr ""
 
-#: C/index-in.docbook:10184
+#: C/index-in.docbook:10183
 msgid ""
 "\"Convertible to int.\" Generates a plain enum (not an enum class) within a "
 "class. Such an enum is scoped like an enum class, but unlike an enum class, "
 "it can be implicitly converted to <type>int</type>."
 msgstr ""
 
-#: C/index-in.docbook:10188
+#: C/index-in.docbook:10187
 #, no-wrap
 msgid ""
 "\n"
@@ -13781,21 +14125,21 @@ msgid ""
 "      "
 msgstr ""
 
-#: C/index-in.docbook:10187
+#: C/index-in.docbook:10186
 msgid "For example, from <filename>dialog.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10195
+#: C/index-in.docbook:10194
 msgid "s#&lt;from&gt;#&lt;to&gt;#"
 msgstr ""
 
-#: C/index-in.docbook:10197
+#: C/index-in.docbook:10196
 msgid ""
 "Substitutes (part of) the name of one or more enum constants. You can add "
 "any number of substitutions."
 msgstr ""
 
-#: C/index-in.docbook:10200
+#: C/index-in.docbook:10199
 #, no-wrap
 msgid ""
 "\n"
@@ -13803,17 +14147,17 @@ msgid ""
 "      "
 msgstr ""
 
-#: C/index-in.docbook:10199
+#: C/index-in.docbook:10198
 msgid ""
 "For example, from <filename>iochannel.hg</filename> in glibmm: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10225
+#: C/index-in.docbook:10224
 msgid "_WRAP_ENUM_DOCS_ONLY"
 msgstr ""
 
-#: C/index-in.docbook:10226
+#: C/index-in.docbook:10225
 msgid ""
 "This macro just generates a Doxygen documentationn block for the enum. This "
 "is useful for enums that can't be wrapped with <function>_WRAP_ENUM()</"
@@ -13825,11 +14169,11 @@ msgid ""
 "the enum's documentation)."
 msgstr ""
 
-#: C/index-in.docbook:10238
+#: C/index-in.docbook:10237
 msgid "_WRAP_GERROR"
 msgstr ""
 
-#: C/index-in.docbook:10239
+#: C/index-in.docbook:10238
 msgid ""
 "This macro generates a C++ exception class, derived from <classname>Glib::"
 "Error</classname>, with a <type>Code</type> enum and a <methodname>code()</"
@@ -13837,82 +14181,82 @@ msgid ""
 "corresponding C enum, and the prefix for the C enum values."
 msgstr ""
 
-#: C/index-in.docbook:10242
+#: C/index-in.docbook:10241
 msgid ""
 "This exception can then be thrown by methods which are generated from "
 "_WRAP_METHOD() with the errthrow option."
 msgstr ""
 
-#: C/index-in.docbook:10245
+#: C/index-in.docbook:10244
 #, no-wrap
 msgid ""
 "\n"
 "_WRAP_GERROR(PixbufError, GdkPixbufError, GDK_PIXBUF_ERROR)\n"
 msgstr ""
 
-#: C/index-in.docbook:10244
+#: C/index-in.docbook:10243
 msgid ""
 "For instance, from <filename>pixbuf.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10249
+#: C/index-in.docbook:10248
 msgid ""
 "_WRAP_GERROR() accepts the same optional arguments as _WRAP_ENUM() (though "
 "CONV_TO_INT is ignored because all exception class enums are plain enums "
 "within a class)."
 msgstr ""
 
-#: C/index-in.docbook:10255
+#: C/index-in.docbook:10254
 msgid "_MEMBER_GET / _MEMBER_SET"
 msgstr ""
 
-#: C/index-in.docbook:10256
+#: C/index-in.docbook:10255
 msgid ""
 "Use these macros if you're wrapping a simple struct or boxed type that "
 "provides direct access to its data members, to create getters and setters "
 "for the data members."
 msgstr ""
 
-#: C/index-in.docbook:10260
+#: C/index-in.docbook:10259
 msgid "<function>_MEMBER_GET(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10261
+#: C/index-in.docbook:10260
 msgid "<function>_MEMBER_SET(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10264
+#: C/index-in.docbook:10263
 #, no-wrap
 msgid "_MEMBER_GET(x, x, int, int)"
 msgstr ""
 
-#: C/index-in.docbook:10262
+#: C/index-in.docbook:10261
 msgid ""
 "For example, in <filename>rectangle.hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10268
+#: C/index-in.docbook:10267
 msgid "_MEMBER_GET_PTR / _MEMBER_SET_PTR"
 msgstr ""
 
-#: C/index-in.docbook:10269
+#: C/index-in.docbook:10268
 msgid ""
 "Use these macros to automatically provide getters and setters for a data "
 "member that is a pointer type. For the getter function, it will create two "
 "methods, one const and one non-const."
 msgstr ""
 
-#: C/index-in.docbook:10274
+#: C/index-in.docbook:10273
 msgid ""
 "<function>_MEMBER_GET_PTR(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10275
+#: C/index-in.docbook:10274
 msgid ""
 "<function>_MEMBER_SET_PTR(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10277
+#: C/index-in.docbook:10276
 #, no-wrap
 msgid ""
 "\n"
@@ -13920,51 +14264,51 @@ msgid ""
 "// It's just a comment. It's difficult to find a real-world example.\n"
 msgstr ""
 
-#: C/index-in.docbook:10276
+#: C/index-in.docbook:10275
 msgid ""
 "For example, for <classname>Pango::Analysis</classname> in <filename>item."
 "hg</filename>: <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10284
+#: C/index-in.docbook:10283
 msgid "_MEMBER_GET_GOBJECT / _MEMBER_SET_GOBJECT"
 msgstr ""
 
-#: C/index-in.docbook:10285
+#: C/index-in.docbook:10284
 msgid ""
 "Use these macros to provide getters and setters for a data member that is a "
 "<classname>GObject</classname> type that must be referenced before being "
 "returned."
 msgstr ""
 
-#: C/index-in.docbook:10290
+#: C/index-in.docbook:10289
 msgid ""
 "<function>_MEMBER_GET_GOBJECT(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10291
+#: C/index-in.docbook:10290
 msgid ""
 "<function>_MEMBER_SET_GOBJECT(C++ name, C name, C++ type, C type)</function>"
 msgstr ""
 
-#: C/index-in.docbook:10293
+#: C/index-in.docbook:10292
 #, no-wrap
 msgid ""
 "\n"
 "_MEMBER_GET_GOBJECT(layout, layout, Pango::Layout, PangoLayout*)\n"
 msgstr ""
 
-#: C/index-in.docbook:10292
+#: C/index-in.docbook:10291
 msgid ""
 "For example, in Pangomm, <filename>layoutline.hg</filename>: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10302
+#: C/index-in.docbook:10301
 msgid "gmmproc Parameter Processing"
 msgstr ""
 
-#: C/index-in.docbook:10303
+#: C/index-in.docbook:10302
 msgid ""
 "<command>gmmproc</command> allows processing the parameters in a method "
 "signature for the macros that process method signatures (like "
@@ -13972,11 +14316,11 @@ msgid ""
 "<function>_WRAP_CREATE()</function>) in a variety of ways:"
 msgstr ""
 
-#: C/index-in.docbook:10310
+#: C/index-in.docbook:10309
 msgid "Parameter Reordering"
 msgstr ""
 
-#: C/index-in.docbook:10317
+#: C/index-in.docbook:10316
 #, no-wrap
 msgid ""
 "\n"
@@ -13984,7 +14328,7 @@ msgid ""
 "  GdkEventMask events);\n"
 msgstr ""
 
-#: C/index-in.docbook:10324
+#: C/index-in.docbook:10323
 #, no-wrap
 msgid ""
 "\n"
@@ -13993,7 +14337,7 @@ msgid ""
 "  gtk_widget_set_device_events)\n"
 msgstr ""
 
-#: C/index-in.docbook:10334
+#: C/index-in.docbook:10333
 #, no-wrap
 msgid ""
 "\n"
@@ -14002,7 +14346,7 @@ msgid ""
 "  gtk_widget_set_device_events)\n"
 msgstr ""
 
-#: C/index-in.docbook:10311
+#: C/index-in.docbook:10310
 msgid ""
 "For all the macros that process method signatures, it is possible to specify "
 "a different order for the C++ parameters than the existing order in the C "
@@ -14018,7 +14362,7 @@ msgid ""
 "could be re-written as: <_:programlisting-3/>"
 msgstr ""
 
-#: C/index-in.docbook:10341
+#: C/index-in.docbook:10340
 msgid ""
 "Please note that when reordering parameters for a <function>_WRAP_SIGNAL()</"
 "function> method signature, the C parameter names would always be "
@@ -14028,18 +14372,18 @@ msgid ""
 "written presently."
 msgstr ""
 
-#: C/index-in.docbook:10353
+#: C/index-in.docbook:10352
 msgid "Optional Parameter Processing"
 msgstr ""
 
-#: C/index-in.docbook:10362
+#: C/index-in.docbook:10361
 #, no-wrap
 msgid ""
 "\n"
 "GtkToolItem* gtk_tool_button_new(GtkWidget* icon_widget, const gchar* label);\n"
 msgstr ""
 
-#: C/index-in.docbook:10371
+#: C/index-in.docbook:10370
 #, no-wrap
 msgid ""
 "\n"
@@ -14047,7 +14391,7 @@ msgid ""
 "  gtk_tool_button_new)\n"
 msgstr ""
 
-#: C/index-in.docbook:10354
+#: C/index-in.docbook:10353
 msgid ""
 "For all macros processing method signatures except <function>_WRAP_SIGNAL()</"
 "function> and <function>_WRAP_VFUNC()</function> it is also possible to make "
@@ -14064,18 +14408,18 @@ msgid ""
 "would be generated: One with the optional parameter and one without it."
 msgstr ""
 
-#: C/index-in.docbook:10381
+#: C/index-in.docbook:10380
 msgid "Output Parameter Processing"
 msgstr ""
 
-#: C/index-in.docbook:10391
+#: C/index-in.docbook:10390
 #, no-wrap
 msgid ""
 "\n"
 "GtkSizeRequestMode gtk_widget_get_request_mode(GtkWidget* widget);\n"
 msgstr ""
 
-#: C/index-in.docbook:10397
+#: C/index-in.docbook:10396
 #, no-wrap
 msgid ""
 "\n"
@@ -14083,21 +14427,21 @@ msgid ""
 "  gtk_widget_get_request_mode)\n"
 msgstr ""
 
-#: C/index-in.docbook:10406
+#: C/index-in.docbook:10405
 #, no-wrap
 msgid ""
 "\n"
 "_INITIALIZATION(`SizeRequestMode&amp;',`GtkSizeRequestMode',`$3 = (SizeRequestMode)($4)')\n"
 msgstr ""
 
-#: C/index-in.docbook:10410
+#: C/index-in.docbook:10409
 #, no-wrap
 msgid ""
 "\n"
 "_INITIALIZATION(`SizeRequestMode&amp;',`GtkSizeRequestMode',`$3 = ($1)($4)')\n"
 msgstr ""
 
-#: C/index-in.docbook:10382
+#: C/index-in.docbook:10381
 msgid ""
 "With <function>_WRAP_METHOD()</function> it is also possible for the return "
 "of the wrapped C function (if it has one) to be placed in an output "
@@ -14117,7 +14461,7 @@ msgid ""
 "programlisting-4/>"
 msgstr ""
 
-#: C/index-in.docbook:10420
+#: C/index-in.docbook:10419
 #, no-wrap
 msgid ""
 "\n"
@@ -14125,7 +14469,7 @@ msgid ""
 "  GtkTreePath* path, GtkCellRenderer* cell, GdkRectangle* rect);\n"
 msgstr ""
 
-#: C/index-in.docbook:10427
+#: C/index-in.docbook:10426
 #, no-wrap
 msgid ""
 "\n"
@@ -14134,14 +14478,14 @@ msgid ""
 "  gtk_icon_view_get_cell_rect)\n"
 msgstr ""
 
-#: C/index-in.docbook:10442
+#: C/index-in.docbook:10441
 #, no-wrap
 msgid ""
 "\n"
 "_INITIALIZATION(`Gdk::Rectangle&amp;',`GdkRectangle',`$3 = Glib::wrap(&amp;($4))')\n"
 msgstr ""
 
-#: C/index-in.docbook:10414
+#: C/index-in.docbook:10413
 msgid ""
 "<function>_WRAP_METHOD()</function> also supports setting C++ output "
 "parameters from C output parameters if the C function being wrapped has any. "
@@ -14162,11 +14506,11 @@ msgid ""
 "programlisting-3/>"
 msgstr ""
 
-#: C/index-in.docbook:10449
+#: C/index-in.docbook:10448
 msgid "String Parameter Processing"
 msgstr ""
 
-#: C/index-in.docbook:10450
+#: C/index-in.docbook:10449
 msgid ""
 "A string-valued input parameter in a C++ method is usually a <type>const "
 "Glib::ustring&amp;</type> or a <type>const std::string&amp;</type>. In C "
@@ -14178,19 +14522,19 @@ msgid ""
 "<literal>nullptr</literal>."
 msgstr ""
 
-#: C/index-in.docbook:10463
+#: C/index-in.docbook:10462
 msgid ""
 "for mandatory parameters (with or without default values): empty string to "
 "empty string,"
 msgstr ""
 
-#: C/index-in.docbook:10465
+#: C/index-in.docbook:10464
 msgid ""
 "for optional parameters (with appended <literal>{?}</literal>): empty string "
 "to <literal>nullptr</literal>."
 msgstr ""
 
-#: C/index-in.docbook:10459
+#: C/index-in.docbook:10458
 msgid ""
 "The default conversion in <function>_WRAP_METHOD()</function> and similar "
 "macros is <_:itemizedlist-1/> If the default conversion is not the best "
@@ -14201,11 +14545,11 @@ msgid ""
 "<literal>{c_param_name NULL}</literal>."
 msgstr ""
 
-#: C/index-in.docbook:10479
+#: C/index-in.docbook:10478
 msgid "Basic Types"
 msgstr ""
 
-#: C/index-in.docbook:10480
+#: C/index-in.docbook:10479
 msgid ""
 "Some of the basic types that are used in C APIs have better alternatives in C"
 "++. For example, there's no need for a <type>gboolean</type> type since C++ "
@@ -14213,65 +14557,65 @@ msgid ""
 "C APIs and what you might convert them to in a C++ wrapper library."
 msgstr ""
 
-#: C/index-in.docbook:10485
+#: C/index-in.docbook:10484
 msgid "Basic Type equivalents"
 msgstr ""
 
-#: C/index-in.docbook:10487
+#: C/index-in.docbook:10486
 msgid "C type"
 msgstr ""
 
-#: C/index-in.docbook:10488
+#: C/index-in.docbook:10487
 msgid "C++ type"
 msgstr ""
 
-#: C/index-in.docbook:10489
+#: C/index-in.docbook:10488
 msgid "<type>gboolean</type>"
 msgstr ""
 
-#: C/index-in.docbook:10489
+#: C/index-in.docbook:10488
 msgid "<type>bool</type>"
 msgstr ""
 
-#: C/index-in.docbook:10490
+#: C/index-in.docbook:10489
 msgid "<type>gint</type>"
 msgstr ""
 
-#: C/index-in.docbook:10490
+#: C/index-in.docbook:10489
 msgid "<type>int</type>"
 msgstr ""
 
-#: C/index-in.docbook:10491
+#: C/index-in.docbook:10490
 msgid "<type>guint</type>"
 msgstr ""
 
-#: C/index-in.docbook:10492
+#: C/index-in.docbook:10491
 msgid "<type>gdouble</type>"
 msgstr ""
 
-#: C/index-in.docbook:10492
+#: C/index-in.docbook:10491
 msgid "<type>double</type>"
 msgstr ""
 
-#: C/index-in.docbook:10493
+#: C/index-in.docbook:10492
 msgid "<type>gunichar</type>"
 msgstr ""
 
-#: C/index-in.docbook:10494
+#: C/index-in.docbook:10493
 msgid "<type>gchar*</type>"
 msgstr ""
 
-#: C/index-in.docbook:10494
+#: C/index-in.docbook:10493
 msgid ""
 "<classname>Glib::ustring</classname> (or <classname>std::string</classname> "
 "for filenames)"
 msgstr ""
 
-#: C/index-in.docbook:10501
+#: C/index-in.docbook:10500
 msgid "Hand-coded source files"
 msgstr ""
 
-#: C/index-in.docbook:10502
+#: C/index-in.docbook:10501
 msgid ""
 "You might want to include additional source files that will not be generated "
 "by <command>gmmproc</command> from <filename>.hg</filename> and <filename>."
@@ -14281,11 +14625,11 @@ msgid ""
 "varname> and <varname>extra_cc_files</varname> variables."
 msgstr ""
 
-#: C/index-in.docbook:10512
+#: C/index-in.docbook:10511
 msgid "Initialization"
 msgstr ""
 
-#: C/index-in.docbook:10521
+#: C/index-in.docbook:10520
 #, no-wrap
 msgid ""
 "\n"
@@ -14296,7 +14640,7 @@ msgid ""
 "}\n"
 msgstr ""
 
-#: C/index-in.docbook:10513
+#: C/index-in.docbook:10512
 msgid ""
 "Your library must be initialized before it can be used, to register the new "
 "types that it makes available. Also, the C library that you are wrapping "
@@ -14309,7 +14653,7 @@ msgid ""
 ">"
 msgstr ""
 
-#: C/index-in.docbook:10529
+#: C/index-in.docbook:10528
 msgid ""
 "The implementation of the <function>wrap_init()</function> method in "
 "<filename>wrap_init.cc</filename> is generated by "
@@ -14319,22 +14663,22 @@ msgid ""
 "function> function appears in the correct C++ namespace."
 msgstr ""
 
-#: C/index-in.docbook:10538
+#: C/index-in.docbook:10537
 msgid "Problems in the C API."
 msgstr ""
 
-#: C/index-in.docbook:10539
+#: C/index-in.docbook:10538
 msgid ""
 "You are likely to encounter some problems in the library that you are "
 "wrapping, particularly if it is a new project. Here are some common "
 "problems, with solutions."
 msgstr ""
 
-#: C/index-in.docbook:10541
+#: C/index-in.docbook:10540
 msgid "Unable to predeclare structs"
 msgstr ""
 
-#: C/index-in.docbook:10543
+#: C/index-in.docbook:10542
 #, no-wrap
 msgid ""
 "\n"
@@ -14346,13 +14690,13 @@ msgid ""
 "};\n"
 msgstr ""
 
-#: C/index-in.docbook:10542
+#: C/index-in.docbook:10541
 msgid ""
 "By convention, structs are declared in glib/GTK-style headers like so: <_:"
 "programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10552
+#: C/index-in.docbook:10551
 msgid ""
 "The extra typedef allows the struct to be used in a header without including "
 "its full definition, simply by predeclaring it, by repeating that typedef. "
@@ -14362,7 +14706,7 @@ msgid ""
 "that is not the case."
 msgstr ""
 
-#: C/index-in.docbook:10559
+#: C/index-in.docbook:10558
 #, no-wrap
 msgid ""
 "\n"
@@ -14371,7 +14715,7 @@ msgid ""
 "make[4]: *** [example-widget.lo] Error 1\n"
 msgstr ""
 
-#: C/index-in.docbook:10565
+#: C/index-in.docbook:10564
 #, no-wrap
 msgid ""
 "\n"
@@ -14379,23 +14723,23 @@ msgid ""
 "../../libexample/libexamplemm/example-widget.h:34: error: previous declaration of 'typedef struct 
_ExampleWidget ExampleWidget'\n"
 msgstr ""
 
-#: C/index-in.docbook:10557
+#: C/index-in.docbook:10556
 msgid ""
 "This compiler error might look like this: <_:programlisting-1/> or this: <_:"
 "programlisting-2/>"
 msgstr ""
 
-#: C/index-in.docbook:10570
+#: C/index-in.docbook:10569
 msgid ""
 "This is easy to correct in the C library, so do send a patch to the relevant "
 "maintainer."
 msgstr ""
 
-#: C/index-in.docbook:10574
+#: C/index-in.docbook:10573
 msgid "Lack of properties"
 msgstr ""
 
-#: C/index-in.docbook:10581
+#: C/index-in.docbook:10580
 #, no-wrap
 msgid ""
 "\n"
@@ -14405,7 +14749,7 @@ msgid ""
 "}\n"
 msgstr ""
 
-#: C/index-in.docbook:10575
+#: C/index-in.docbook:10574
 msgid ""
 "By convention, glib/GTK-style objects have <function>*_new()</function> "
 "functions, such as <function>example_widget_new()</function> that do nothing "
@@ -14415,7 +14759,7 @@ msgid ""
 "instance, <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10588
+#: C/index-in.docbook:10587
 msgid ""
 "This allows language bindings to implement their own equivalents (such as C+"
 "+ constructors), without using the <function>*_new()</function> function. "
@@ -14423,7 +14767,7 @@ msgid ""
 "GType, to add their own hooks for signal handlers and vfuncs."
 msgstr ""
 
-#: C/index-in.docbook:10592
+#: C/index-in.docbook:10591
 msgid ""
 "At the least, the <function>_new()</function> function should not use any "
 "private API (functions that are only in a .c file). Even when there are no "
@@ -14432,7 +14776,7 @@ msgid ""
 "that is available to us."
 msgstr ""
 
-#: C/index-in.docbook:10600
+#: C/index-in.docbook:10599
 #, no-wrap
 msgid ""
 "\n"
@@ -14451,36 +14795,36 @@ msgid ""
 "}\n"
 msgstr ""
 
-#: C/index-in.docbook:10597
+#: C/index-in.docbook:10596
 msgid ""
 "Another workaround is to add a <function>*_construct()</function> function "
 "that the C++ constructor can call after instantiating its own type. For "
 "instance, <_:programlisting-1/>"
 msgstr ""
 
-#: C/index-in.docbook:10616
+#: C/index-in.docbook:10615
 msgid ""
 "Adding properties, and ensuring that they interact properly with each other, "
 "is relatively difficult to correct in the C library, but it is possible, so "
 "do file a bug and try to send a patch to the relevant maintainer."
 msgstr ""
 
-#: C/index-in.docbook:10624
+#: C/index-in.docbook:10623
 msgid "Documentation"
 msgstr ""
 
-#: C/index-in.docbook:10625
+#: C/index-in.docbook:10624
 msgid ""
 "In general, gtkmm-style projects use Doxygen, which reads specially "
 "formatted C++ comments and generates HTML documentation. You may write these "
 "doxygen comments directly in the header files."
 msgstr ""
 
-#: C/index-in.docbook:10628
+#: C/index-in.docbook:10627
 msgid "Reusing C documentation"
 msgstr ""
 
-#: C/index-in.docbook:10629
+#: C/index-in.docbook:10628
 msgid ""
 "You might wish to reuse documentation that exists for the C library that you "
 "are wrapping. GTK-style C libraries typically use gtk-doc and therefore have "
@@ -14492,12 +14836,12 @@ msgid ""
 "documentation to make it more appropriate for a C++ API."
 msgstr ""
 
-#: C/index-in.docbook:10639
+#: C/index-in.docbook:10638
 #, no-wrap
 msgid "./docextract_to_xml.py -s ~/checkout/gnome/gtk/gtk/ &gt; gtk_docs.xml\n"
 msgstr ""
 
-#: C/index-in.docbook:10642
+#: C/index-in.docbook:10641
 msgid ""
 "Because this automatic transformation is not always appropriate, you might "
 "want to provide hand-written text for a particular method. You can do this "
@@ -14507,11 +14851,11 @@ msgid ""
 "documentation in the <filename>.hg</filename> file."
 msgstr ""
 
-#: C/index-in.docbook:10652
+#: C/index-in.docbook:10651
 msgid "Documentation build structure"
 msgstr ""
 
-#: C/index-in.docbook:10653
+#: C/index-in.docbook:10652
 msgid ""
 "If you copied the skeleton source tree in <application>mm-common</"
 "application> and substituted the placeholder text, then you will already "


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