⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changes-2.0.sgml

📁 GLib是GTK+和GNOME工程的基础底层核心程序库
💻 SGML
字号:
<refentry id="glib-changes-2-0" revision="17 Jan 2002"><refmeta><refentrytitle>Changes from 1.0 to 2.0</refentrytitle><manvolnum>3</manvolnum><refmiscinfo>Changes from 1.0 to 2.0</refmiscinfo></refmeta><refnamediv><refname>Changes from 1.0 to 2.0</refname><refpurpose>Incompatible changes made between version 1.0 and version 2.0</refpurpose></refnamediv><refsect1><title>Incompatible changes from 1.0 to 2.0</title><para>The <ulink url="http://developer.gnome.org/dotplan/porting/">GNOME 2.0porting guide</ulink> on <ulinkurl="http://developer.gnome.org">http://developer.gnome.org</ulink>has some more detailed discussion of porting from 1.0 to 2.0.See the section on GLib.</para><itemizedlist><listitem><para>The event loop functionality <structname>GMain</structname> has extensively been revised to support multiple separate main loops in separate threads. All sources (timeouts, idle functions, etc.) are associated with a <structname>GMainContext</structname>.</para><para>Compatibility functions exist so that most application code dealing withthe main loop will continue to work. However, code that creates new custom types of sources will require modification.</para><para>The main changes here are:  <itemizedlist>  <listitem>  <para>   Sources are now exposed as <type>GSource *</type>, rather than simply as    numeric ids.  </para>  </listitem>    <listitem>  <para>   New types of sources are created by structure "derivation" from    <structname>GSource</structname>, so the <literal>source_data</literal>    parameter to the <structname>GSource</structname> virtual functions has been   replaced with a <type>GSource *</type>.  </para>  </listitem>    <listitem>  <para>   Sources are first created, then later added to a specific    <structname>GMainContext</structname>.   </para>  </listitem>    <listitem>  <para>   Dispatching has been modified so both the callback and data are passed   in to the <function>dispatch()</function> virtual function.  </para>  </listitem>  </itemizedlist>  To go along with this change, the vtable for   <structname>GIOChannel</structname> has changed and  <function>add_watch()</function> has been replaced by   <function>create_watch()</function>.</para></listitem><listitem><para><function>g_list_foreach()</function> and <function>g_slist_foreach()</function> have been changed so theyare now safe against removal of the current item, not the next item.</para><para>It's not recommended to mutate the list in the callback to thesefunctions in any case.</para></listitem><listitem><para><structname>GDate</structname> now works in UTF-8, not in the current locale. If you want to use it with the encoding of the locale, you need to convert strings using <function>g_locale_to_utf8()</function> first.</para></listitem><listitem><para><function>g_strsplit()</function> has been fixed to:  <itemizedlist>  <listitem>  <para>   include trailing empty tokens, rather than stripping them  </para>  </listitem>  <listitem>  <para>   split into a maximum of <literal>max_tokens</literal> tokens, rather    than <literal>max_tokens + 1</literal>  </para>  </listitem>  </itemizedlist>  Code depending on either of these bugs will need to be fixed.</para></listitem><listitem><para>Deprecated functions that got removed:<function>g_set_error_handler()</function>, <function>g_set_warning_handler()</function>,<function>g_set_message_handler()</function>, use <function>g_log_set_handler()</function> instead.</para></listitem></itemizedlist></refsect1></refentry>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -