<p>In <a href="https://github.com/geany/geany/pull/629#discussion_r40405401">doc/plugins.dox</a>:</p>
<pre style='color:#555'>> +    g_free((gchar *)plugin->info->author);
> +
> +  g_key_file_free(data->file);
> +  g_free(data);
> +}
> +@endcode
> +
> +Finally the demo_proxy's wrapper GeanyPluginFuncs. They are called for each possible sub-plugin and
> +therefore have to multiplex between each using the plugin-defined data pointer. Each is called by
> +Geany as if it were an ordinary, native plugin.
> +
> +proxy_init() actually reads the inferior's file using GKeyFile APIs. It prepares for the help
> +dialog and installs the menu items. proxy_help() is called when the user clicks the help button in
> +the Plugin Manager. Consequently, this fires up a suitable dialog, although with a dummy message.
> +proxy_cleanup() frees all memory allocated in proxy_init().
> +
</pre>
<div class="email-fragment">The entire section is all about the demo proxy. The introductory paragraph tells that the demo proxy loads plugins from ini files for demoing purposes. I don't know how to make it clearer

Am 25. September 2015 03:43:48 MESZ, schrieb elextr <notifications@github.com>:</div>
<span class="email-hidden-toggle"><a href="#">…</a></span><div class="email-hidden-reply" style="display:none">
<div class="email-quoted-reply">> +  g_free((gchar *)plugin->info->author);
> +
> +  g_key_file_free(data->file);
> +  g_free(data);
> +}
> +<a href="https://github.com/endcode" class="user-mention">@endcode</a>
> +
> +Finally the demo_proxy's wrapper GeanyPluginFuncs. They are called
for each possible sub-plugin and
> +therefore have to multiplex between each using the plugin-defined
data pointer. Each is called by
> +Geany as if it were an ordinary, native plugin.
> +
> +proxy_init() actually reads the inferior's file using GKeyFile APIs.
It prepares for the help
> +dialog and installs the menu items. proxy_help() is called when the
user clicks the help button in
> +the Plugin Manager. Consequently, this fires up a suitable dialog,
although with a dummy message.
> +proxy_cleanup() frees all memory allocated in proxy_init().
> +

It isn't clear if the ini file is just something this demo uses to
define its sub-plugins, or if its required that all proxies use it, and
if so why?

---
Reply to this email directly or view it on GitHub:
<a href="https://github.com/geany/geany/pull/629/files#r40393473">https://github.com/geany/geany/pull/629/files#r40393473</a>
</div>
<div class="email-fragment"></div>
</div>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>Reply to this email directly or <a href="https://github.com/geany/geany/pull/629/files#r40405401">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ9UopIVBExIbftj5cb0bVaiZayXgks5o1O9UgaJpZM4Fy7fG.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany/pull/629/files#r40405401"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>