QIF doc pages

Charles Day cedayiv at gmail.com
Sat Mar 8 18:54:12 EST 2008


On Thu, Feb 28, 2008 at 1:14 PM, Andreas Köhler <andi5.py at gmx.net> wrote:

> Hi Charles,
>
> Am Donnerstag, den 28.02.2008, 12:50 -0800 schrieb Charles Day:
> > On Thu, Feb 28, 2008 at 11:50 AM, Derek Atkins <warlord at mit.edu> wrote:
> >
> > > "Charles Day" <cedayiv at gmail.com> writes:
> > >
> > > > OK, that's sounds like what Ian is also saying, and that sounds good
> to
> > > me
> > > > too. So under which of the following conditions would a new account
> tab
> > > be
> > > > automatically created and displayed after the QIF import finishes?
> > > >   (a) the QIF import is launched though the "new user" dialog
> > > >   (b) no accounts exist prior to import (and no Accounts tab exists
> > > either)
> > > >   (c) any others?
> > >
> > > I think anytime that the importer completes, regardless of how it's
> > > called, iff there is no Account Tree Page.
> > >
> >
> > What's the easiest way to test for an existing Account tab?
> >
> > After that, creating the new accounts tab seems pretty easy:
> >   GncPluginPage *page;
> >
> >   page = gnc_plugin_page_account_tree_new();
> >   gnc_main_window_open_page(NULL, page);
> >
> > -Charles
>
> maybe something like
>
> gnc_find_first_gui_component(PLUGIN_PAGE_ACCT_TREE_CM_CLASS, [...])
> as can be seen in
> src/business/business-gnome/dialog-invoice.c:gnc_invoice_new_page()
>

Andreas, I have tried the following code but I cannot get it to compile
because PLUGIN_PAGE_ACCT_TREE_CM_CLASS is only defined inside gnome/gnc-
plugin-page-account-tree.c. If it were defined in a .h instead, then
obviously I could just #include it. Should I move the definition to
gnome/gnc-plugin-page-account-tree.h or does this break some design goal?
Or is there another way to determine whether an account tab is already open?

  GncPluginPage *page;

  /* Open an account tab in the main window if one doesn't exist already. */
  if (!gnc_find_first_gui_component(PLUGIN_PAGE_ACCT_TREE_CM_CLASS, NULL,
NULL))
  {
    page = gnc_plugin_page_account_tree_new();
    gnc_main_window_open_page(NULL, page);
  }

Thanks,
Charles



> Please note that there are other situations we lack an account tree as
> well, e.g.
>
> (1) open new window with account tree page (window > new window with
> page), then close that window... i am not sure whether that situation
> survives a restart though
> (2) cancel hierarchy druid or do not spawn it on "file > new" at all
>
> Maybe those could be handled equally well?
>
> Thanks,
> -- andi5
>
>


More information about the gnucash-devel mailing list