From cb1390cf4ca5327c961a1ea81afff3e7bb2d5e7a Mon Sep 17 00:00:00 2001 From: Joshua Sled Date: Wed, 20 Jun 2007 22:33:09 +0000 Subject: [PATCH] let's actually obey the restructured text format if we're going to do so. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@16192 57a11ea4-9604-0410-9ed3-97b8803252fd --- src/doc/sx.rst | 117 ++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 97 insertions(+), 20 deletions(-) diff --git a/src/doc/sx.rst b/src/doc/sx.rst index 74538ce983..75bb02c91c 100644 --- a/src/doc/sx.rst +++ b/src/doc/sx.rst @@ -14,46 +14,60 @@ TODO - [x] printf -> logging - core -! - [ ] @fixme-s -! - [ ] after updating/merging new instances, ensure sx-instance-state consistency + - ! [ ] @fixme-s + - ! [ ] after updating/merging new instances, ensure sx-instance-state consistency - [x] sx list -> qof collection - [x] sx engine events + - [x] sx list collection add/remove -- sx-list GNC_EVENT_ITEM_ADDED, _REMOVED - [x] sx modified -- QOF_EVENT_MODIFY + - [x] sx upcoming instance model -! - [x] implement sort model + + - ! [x] implement sort model + - [x] rename, re-home gnc-sx-instance-model:sxsl_get_sx_vars - [x] rename, re-home gnc-sx-instance-model:parse_vars_from_formula - unit testing + - [ ] model updating in the face of change + - [ ] insert sx - [ ] remove sx - [ ] update sx + - [ ] add instances - [ ] remove instances - [ ] make "weird" + - [ ] ± disabled flag + - [x] ensure state consistency model is upheld - [ ] check variables-unbound logic - [ ] verify summary counts - [ ] check "since last run" states + - [ ] specious datafile dirty-ing - [ ] -autocreate[, ±notify] - [ ] +autocreate, -notify - [ ] +autocreate, +notify - [ ] +autocreate, -notify, w/postponed - [ ] +autocreate, +notify, w/postponed + - [ ] bugs + - [?] Expired scheduled transactions never run - + - remove + - [x] display-using src/gnome-utils/test/test-sx.c - bugs -! - [x] with SLR open (with instances), add variables to SX; only newly-created instances will have appropriate variable tables. + - ! [x] with SLR open (with instances), add variables to SX; only newly-created instances will have appropriate variable tables. -! - [x] parse from 1.8 file doesn't setup start date correctly; + - ! [x] parse from 1.8 file doesn't setup start date correctly; daily-auto-yes-notify.xac has start date of 2006-09-26, but new TXN is for $today. @@ -61,11 +75,12 @@ TODO - [x] created/review txns disappear, eventual crash [ve20070303]_ -! - [x] auto-create (+notify) txns not in review list. [ve20070209]_ + - ! [x] auto-create (+notify) txns not in review list. [ve20070209]_ - [x] sx-from-trans: "unknown get.type [3]" [dh20070120]_ -! - [x] crash with two sx lists open and SX mutation + - ! [x] crash with two sx lists open and SX mutation + - I'm pretty sure this is due to SX lists not getting cleaned up on page close, somehow. - [x] no way to clear a variable entry [ve20070209]_ @@ -75,18 +90,25 @@ TODO .. _[ve20070303]: http://lists.gnucash.org/pipermail/gnucash-devel/2007-March/020069.html - sx list page + - [/] make into split panel + - [ ] fix default slider position - [ ] conf-save slider position -! - [x] use gnc-tree-view -! - [x] save/restore state + + - ! [x] use gnc-tree-view + - ! [x] save/restore state - sx editor + - [/] clean up source formatting - [ ] move "non-editor" general app/ui code out of bottom of dialog-sx-editor.c - [x] re-layout dialog + - tabs: "overview", "frequency", "template transaction" [, "estimation"] + - [ ] model-ize + - (check_consistent, especially...) GncSxEditModel* gnc_sx_edit_model_new(SchedXaction *sx); @@ -100,72 +122,104 @@ gchar* gnc_sx_edit_model_get_name(GncSxEditModel *mdl); void gnc_sx_edit_model_set_name(GncSxEditModel *mdl, gchar *new_name); - gnc_dense_cal + - [x] {0, 1, 2, 3, 4, 6, 12} month selection for dense calendar + - [x] conf-save value + - [ ] code cleanup + - [x] min-size + - [x] start-of-week := {sun,mon} (via locale) - [ ] change number-of-month properties to display-named properties (width, length) - [ ] gconf setting for dense-cal font-size reduction - [?] better transient/floating window - [/] (re-format file) -! - [x] font handling: gdk -> pango + - ! [x] font handling: gdk -> pango - [x] set_model(GncTemporalInstancesModel *mdl) + - [x] new interface creation. - [x] register callbacks for signals + - [x] remove clist usage - sx-from-trans + - [?] convert to GObject - [x] hookup destroy/finalize - FreqSpec + - [#] type+ui-type -> type - use Recurrence instead of FreqSpec -! - [x] load druid -! - [x] sx-from-trans, -! - [x] XML migration, handling + + - ! [x] load druid + - ! [x] sx-from-trans, + - ! [x] XML migration, handling + - xml:freqSpec -> obj:Recurrence + - [x] none (Recurrence doesn't support) - [x] once + - [x] if once, fix Recurrence date to be SX start date. :p + - [x] daily - [x] daily [m-f] (composite) - [x] weekly, single - [x] weekly, multiple (composite) - [x] monthly (+quarterly, tri-anually, semi-annually, yearly) - [x] semi-monthly (composite) + - [x] write Recurrences into new-version SX + - gnc-frequency -! - [x] Support Recurrence + + - ! [x] Support Recurrence + - [x] in - [x] out -! - [x] Support 'last-day-of-month' + + - ! [x] Support 'last-day-of-month' - [x] simplify + - [x] remove daily [m-f] (-> weekly) - [x] remove biweekly page (-> weekly) - [x] remove > monthly pages (-> monthly) + - [x] clean up, reformat source + - gnc-plugin-page-sx-list + - [x] gnc_plugin_page_sx_list_cmd_new + - dialog-sx-editor + - [x] gnc_sxed_check_changed - [x] gnc_sxed_check_consistent - [x] gnc_sxed_update_cal - [x] gnc_sxed_save_sx + - sx list + - [x] recurrence_cmp(...) - [x] More compact recurrenceListToString(...). + - [ ] remove FreqSpec code + - [ ] SX code + - [ ] engine - [ ] backend - [ ] gnc-frequency - [ ] gnc-dense-cal-store + - [x] src/gnome/druid-acct-period.c - gnc_frequency + - [ ] 'every x months' spin button makes large jumps:: jsled: another topic: you have probably seen the "every x months" @@ -180,33 +234,44 @@ void gnc_sx_edit_model_set_name(GncSxEditModel *mdl, gchar *new_name); * 17:00:36 CRIT gnc_sx_set_schedule: assertion `sx && schedule' failed - since-last-run + - [ ] "reminder" instances should show number of days until due - [ ] "Find unfinished" button; count; sensitize Ok as function of unfinished. - [ ] text changes [tw20070614]_ + - [ ] "Sx, Instance, Variable" -> "Transaction" - [ ] "Instance State" -> "Status" - [ ] "Variable Value" -> "Value" + - [ ] bold SX names [tw20070614]_ - [ ] checkbox/option to show/hide Reminders [tw20070614]_ - [ ] filter/remove SXes that don't have any instances in the list [tw20070614-2]_ - [ ] remove tree expand controls, except for non-to-create instances with variables [tw200070614-2]_ -! - [x] save/restore dialog window size + - ! [x] save/restore dialog window size - [x] remove split pane - [x] "auto" scrollbars -! - [x] rewrite adapter (re-)population logic + - ! [x] rewrite adapter (re-)population logic - [x] move "effect_change" up to app-utils/, test. - [x] move state-change up to app-utils - [x] move variable-setting up to app-utils - [x] move summarization up to app-utils - [x] add reminders, postponed to SxInstanceModel - [x] add mutation support to sx instance model + - [x] state machine + - [x] add variable state to sx instance model + - [x] handle (hidden/system not for editing) variables. + - [x] add sx_upcoming_instance_model() - - [x] add effect_auto_create() + + - [x] add effect_auto_create() + - [x] add some sort of "ready to go" flag and api + - [x] variable setting, primarily + - [x] some sort of commit_changes() - [x] add variable table to instances - [x] ui: add 'review created transactions' checkbox to SLR dialog @@ -216,6 +281,7 @@ void gnc_sx_edit_model_set_name(GncSxEditModel *mdl, gchar *new_name); .. _[tw20070614-2]: http://lists.gnucash.org/pipermail/gnucash-devel/2007-June/020729.html - destroy/cleanup, notes: + - dispose: break references; callable multiple times - finalize: complete destruction; just before free; only called once @@ -259,18 +325,22 @@ instances through this interface. The old SLR dialog has the following stages: - Reminders + - can be promoted to "to-create" + - Auto-created, with notification - To-Create + - postponed, to-create - ignore state. + - Created review - Obsolete SX cleanup The new SLR dialog will have the following: -- Creation - (treemodel consisting of) +- Creation (treemodel consisting of) + - auto-created - reminder - postponed @@ -304,7 +374,9 @@ Formula Parsing ------------------------ A SXes formula is parsed in the context of: + - the template transaction + - the accounts of the splits - the sequence number - the date of the transaction @@ -314,6 +386,7 @@ Testing Notes --------------------- - auto-create + - auto-create with postponed instances shouldn't destroy postponed instances @@ -325,7 +398,9 @@ ignoring the first instance. We only want to increment the counters for newly-discovered-as-to-be-created SXes." - auto-create + - auto-create transactions can be created w/o user interaction + - their state is transitioned to 'created', which is not modifiable - auto-create (+notify) transactions should be displayed, even if they are @@ -335,6 +410,7 @@ counters for newly-discovered-as-to-be-created SXes." are other transactions. - Scenarios + - only auto-create (-notify): no SLR, info dialog w/count (***) - only auto-create (+notify): SLR dialog, already created - others, auto-create (-notify): SLR dialog, incl. created @@ -373,6 +449,7 @@ Known Issues ------------ (as of 2007-01-14) + - The SX List plugin page doesn't save/restore its state. - Updating the variables in a formula with the SLR dialog open isn't consistent. - Closing an sx list plugin page leads to corrupted state.