Re: GtkApplication and argc/arv
- From: Murray Cumming <murrayc murrayc com>
- To: Emmanuele Bassi <ebassi gmail com>
- Cc: gtk-devel-list gnome org
- Subject: Re: GtkApplication and argc/arv
- Date: Wed, 02 Mar 2011 09:30:56 +0100
On Thu, 2011-02-24 at 23:41 +0000, Emmanuele Bassi wrote:
> On 2011-02-21 at 21:57, Murray Cumming wrote:
>
> I'll leave the other points, as they've received a reply already.
>
> > 2.
> > How should we use GOptionContext to parse command line arguments from
> > argc/argv when using GtkApplication. Is this the ideal way, using the
> > command-line signal?
> > http://git.gnome.org/browse/totem/tree/src/totem.c#n187
> > It seems a little long-winded.
>
> Totem's usage is not entirely trivial: it requires argument parsing in
> the local (i.e. the just executed) and remote (i.e. the currently
> running) instances.
>
> simpler cases are:
>
> • you can just parse all arguments in the local instance, which means
> using g_option_context_parse() prior to creating the G(tk)Application
> instance; in this case, the command line arguments can be used to
> parametrize the Application instance, e.g via GObject properties,
> direct access to instance members, or even GApplication actions (as
> soon as they get more functionality).
>
> • you can defer all command line parsing to the remote instance, by
> passing the G_APPLICATION_HANDLES_COMMAND_LINE flag to the
> constructor and by connecting to the ::command-line signal; and
> example is in the Dictionary:
>
> http://git.gnome.org/browse/gnome-utils/tree/gnome-dictionary/src/gdict-app.c#n222
>
> probably the latter case is a more direct map of what you'd have done
> with libunique or the Bacon copy-and-paste API.
>
> in general, and if at all possible, I'd strongly advise to use the first
> approach (local parsing), and keep an eye out as soon as the GAction API
> gets more love and functionality.
Thanks for the suggestion, but why wouldn't you use the
GApplication::local_command_line vfunc for local command-line parsing?
http://library.gnome.org/devel/gio/unstable/GApplication.html#GApplicationClass.local-command-line
--
murrayc murrayc com
www.murrayc.com
www.openismus.com
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]