mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-16 18:25:11 -06:00
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12082 57a11ea4-9604-0410-9ed3-97b8803252fd
383 lines
12 KiB
ReStructuredText
383 lines
12 KiB
ReStructuredText
# -*- reStructuredText -*-
|
|
|
|
Intro
|
|
-----
|
|
|
|
This is a ad-hoc list of what works and doesn't work in the g2
|
|
port of gnucash. The plan is to finish porting those parts of gnucash
|
|
that have already been started (i.e. new windowing system, account
|
|
tree, commodities tree, etc.), but not to port any additional features
|
|
unless absolutely required. The clist/ctree widgets *do* still exist
|
|
in gtk2 and can be used, even though they've been marked as deprecated
|
|
and will disappear in a future release. Its important to get this
|
|
release out the door and not stall it until all the deprecated
|
|
functionality has been removed.
|
|
|
|
+--------------------------------------+
|
|
| Last sync with HEAD on 2005-10-31 |
|
|
+--------------------------------------+
|
|
|
|
========================================
|
|
DONE
|
|
========================================
|
|
|
|
Help
|
|
Financial Calculator
|
|
Commodity Editor
|
|
Price Editor
|
|
Reconcile
|
|
Transfer
|
|
View Toolbar
|
|
View Statusbar
|
|
Properties Dialog
|
|
QIF Import
|
|
OFX Import
|
|
HBCI Actions
|
|
Export Accounts
|
|
Stock Split Dialog
|
|
|
|
+-----
|
|
| Can someone who comes across this note and wants to help please go
|
|
| through 1.8.9 and create a list of stuff missing from 2.0?
|
|
+------------
|
|
|
|
========================================
|
|
General Notes
|
|
========================================
|
|
|
|
Resources
|
|
---------
|
|
- Porting applications to the GNOME 2.0 Platform -- http://developer.gnome.org/dotplan/porting/
|
|
- Should switch from `gnome_config` to gconf...
|
|
- Introduction to GConf -- http://developer.gnome.org/feature/archive/gconf/gconf.html
|
|
|
|
- General
|
|
|
|
- Printing
|
|
|
|
- Printing cheks works.
|
|
- Printing text reports works.
|
|
- Printing pie/bar charts fails.
|
|
|
|
- Startup CRITICAL errors...
|
|
|
|
[jsled@phoenix:~/stuff/proj/gnucash/src-g2/gnucash]$ /opt/gnc-g2-unstable/bin/gnucash
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvaluetypes.c: line 741 (g_value_set_string): assertion `G_VALUE_HOLDS_STRING (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gobject.c: line 1239 (g_object_set_property): assertion `G_IS_VALUE (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvalue.c: line 149 (g_value_unset): assertion `G_IS_VALUE (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvaluetypes.c: line 741 (g_value_set_string): assertion `G_VALUE_HOLDS_STRING (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gobject.c: line 1239 (g_object_set_property): assertion `G_IS_VALUE (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvalue.c: line 149 (g_value_unset): assertion `G_IS_VALUE (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvaluetypes.c: line 741 (g_value_set_string): assertion `G_VALUE_HOLDS_STRING (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gobject.c: line 1239 (g_object_set_property): assertion `G_IS_VALUE (value)' failed
|
|
(gnucash:7823): GLib-GObject-CRITICAL **: file gvalue.c: line 149 (g_value_unset): assertion `G_IS_VALUE (value)' failed
|
|
Use of deprecated SAXv1 function getLineNumber
|
|
|
|
- Open pages are no longer open after reopening file.
|
|
- Account tree, register and report pages are restored.
|
|
- Budget and busines pages are not restored.
|
|
- Trying to reopen a multi-column report spits lots of
|
|
warning. Trying to edit that pages options crashes gnucash.
|
|
|
|
- Weird pango_layout_set_text "string not UTF-8" issues reported by Neil Williams:
|
|
|
|
- http://lists.gnucash.org/pipermail/gnucash-devel/2005-March/012797.html
|
|
|
|
- http://lists.gnucash.org/pipermail/gnucash-devel/2005-March/012824.html
|
|
|
|
- Register Core - mostly functional
|
|
|
|
- doesn't remember custom check formats.
|
|
|
|
- Reporting / Graphing [mostly functional]
|
|
|
|
- Graphing working, with some known issue; see top
|
|
of src/gnome-utils/gnc-html-graph-gog.c for more detail.
|
|
|
|
- colors
|
|
|
|
- axis-label string rotation
|
|
|
|
- Known issue with height/width bug in libgtkhtml 3.3.2 (on FC3).
|
|
|
|
- When rendering, progress bar always says "Rendering 'Untitled' report...".
|
|
|
|
- warlord reports this was true in 1.8 as well.
|
|
|
|
- Importing
|
|
|
|
- HBCI - Transaction templates eventually need to be converted from a GTK_CLIST
|
|
to a GTK_TREE_VIEW. Currently working as a GtkClist.
|
|
|
|
|
|
- Budgeting
|
|
|
|
- Budget Report
|
|
|
|
- the default account selection isn't very reasonable, Inc & Exp
|
|
would be better
|
|
|
|
- sometimes negative numbers render on two lines in their table-cell
|
|
|
|
- Budget GUI
|
|
|
|
- default account filter doesn't take effect until options are
|
|
opened, should take effect as soon as view is opened
|
|
|
|
- it might be nice to disallow some of the more unusual recurrences
|
|
|
|
- better if budget list dialog allowed double click to open
|
|
|
|
- need help text
|
|
|
|
- should displaying zero values be optional?
|
|
|
|
- it'd be nice if there was a summary column at the far right
|
|
|
|
- Budget Engine
|
|
|
|
- Do budgets play nice with QSF?
|
|
|
|
- Still a lot of dead legacy code hanging around
|
|
|
|
- New Account Hierarchy - somewhat works
|
|
|
|
- Simply invoking, even if cancelled, trashes current book state?
|
|
|
|
- Sometimes crashes when loading account data.
|
|
|
|
- Main account selection layout is too (visually) compressed
|
|
|
|
- Should have two columns: left={category(80%) + detailed-description(20%)}, right={category-accounts(100%)}
|
|
|
|
- See 'relayout Hierarchy' in src/gnome/glade/account.glade.
|
|
|
|
- Account tree's only column (account name) is relatively thin, truncating
|
|
some titles.
|
|
|
|
- It seems that gnc_tree_view_add_text_column sets column-width based on
|
|
an example string, whereas in this use-case the best would be to set to
|
|
'0'(=autosize).
|
|
|
|
- Account Hierarchy Merge - BROKEN
|
|
|
|
- Bad integration with Account Hierarchy druid
|
|
|
|
- Static variables used for process/window state.
|
|
|
|
- Misc errors with no apparent cause
|
|
|
|
- (gnucash:27485): Gtk-CRITICAL **: gtk_widget_event: assertion `WIDGET_REALIZED_FOR_EVENT (widget, event)' failed
|
|
|
|
- (gnucash:27485): Gtk-CRITICAL **: gtk_widget_event: assertion `WIDGET_REALIZED_FOR_EVENT (widget, event)' failed
|
|
|
|
- Doesn't let you complete the conflict resolution process, thus you can never complete the druid.
|
|
|
|
- (jsled) actually, it just doesn't display the 1-conflict -> 0-conflict
|
|
transition in the UI correctly, but it does allow you to finish.
|
|
|
|
- conflict-resolution process/display issues.
|
|
|
|
- Backend
|
|
|
|
- price_lookup awaits a solution - as a query instead of a backend operation.
|
|
|
|
- Scheduled Transactions
|
|
|
|
- Since Last Run dialog spews console-crap on init, generally broken?
|
|
|
|
- SX Editor
|
|
|
|
- "Register Lines" preference not respected.
|
|
|
|
- When tabbing from memo to account on the second split with the same
|
|
name as the first, the account will be auto-populated with a GUID
|
|
(instead of an account name), but not a valid one.
|
|
|
|
- Template-register Cut/Copy/Paste not connected.
|
|
|
|
- Template-register View > {Basic, Auto-Split} options have no effect.
|
|
|
|
- Open SX Editor, close it; open Register Preferences, change "Draw
|
|
{horiz,vert} lines" => crash.
|
|
|
|
- Entering a value (e.g. '20.00') without entering an account or a memo for
|
|
the first split causes everything else entered so far to be reset when
|
|
tabbing to the second split.
|
|
|
|
========================================
|
|
ENHANCEMENTS
|
|
========================================
|
|
|
|
- New icons
|
|
|
|
- Add account.
|
|
|
|
- Register
|
|
|
|
- Report
|
|
|
|
- "Report options", especially, since it often confuses users.
|
|
|
|
- In-place editing
|
|
|
|
- Provide in-place editing where feasable. Eg. Editing the account code
|
|
or the account name, but not being able to re-parent the account. (Maybe
|
|
add DND support for this in long-term?)
|
|
|
|
- Find
|
|
|
|
- There's no way to edit/refine a search.
|
|
[There's no way to do so in 1.8, either...]
|
|
|
|
- Main Window
|
|
|
|
- Change Notebook tabs to include an 'x' to act as the "close tab" method,
|
|
and then remove the "Close" button from the toolbar. Then we can also
|
|
decide if we want to allow a user to 'close' the account tree.
|
|
|
|
-----------------------------------------
|
|
<#GOG> ----------------------------------
|
|
|
|
These are notes jsled was using during the GOG hack-porting effort.
|
|
|
|
[dc:created 2004-12-17]
|
|
|
|
gog-guru.c
|
|
\- gog-guru.h
|
|
\- goffice-graph.h
|
|
\- <glib.h>
|
|
\- data-structures
|
|
\- command-context.h
|
|
\- <goffice/goffice-config.h>
|
|
\- <gnumeric-config.h> + "When the module splits we'll make this a real file"
|
|
\- <goffice/graph/gog-object.h>
|
|
\- <goffice/graph/goffice-graph.h>
|
|
\- <glib-object.h>
|
|
\- <command-context.h> /* for GnmCmdContext */
|
|
\- <libart_lgpl/art_rect.h>
|
|
\- <goffice/graph/gog-graph.h>
|
|
\- [nothing new]
|
|
\- <goffice/graph/gog-object.h>
|
|
\- [nothing new]
|
|
\- <goffice/graph/gog-chart.h>
|
|
\- <goffice/graph/gog-plot.h>
|
|
\- <goffice/utils/goffice-utils.h>
|
|
\- <glib.h>
|
|
\- decls
|
|
\- <goffice/graph/gog-view.h>
|
|
\- <goffice/graph/gog-plot-engine.h>
|
|
\- <goffice/graph/gog-data-allocator.h>
|
|
\- <goffice/graph/gog-control-foocanvas.h>
|
|
\- <goffice/graph/gog-renderer-pixbuf.h>
|
|
\- <gui-util.h>
|
|
\- "workbook-control-gui.h"
|
|
\- "error-info.h"
|
|
\- "command-context.h"
|
|
\- "gutils.h"
|
|
|
|
|
|
<#goffice/graph> :depOn [ :module <#libart> ].
|
|
|
|
<file:gog-plot-engine.c>
|
|
:depOn [ :module <#gsf>; :how "entirely [?] for GSF_CLASS macros" ]
|
|
,[ :module <#gnumeric-plugin>; :how "plot-engine loading" ].
|
|
|
|
<file:gog-graph.c>
|
|
:depOn [ :module <#gsf>; :how "entirely [?] for GSF_CLASS macros." ].
|
|
|
|
<file:gog-view.c>
|
|
:depOn [ :module <#gsf> ].
|
|
|
|
<file:gog-object.c> :depOn [ :module <#gsf> ].
|
|
|
|
<file:gog-renderer.c>
|
|
:depOn [ :module <utils/go-math.h>; :how "basic math aliasing." ]
|
|
,[ :module <utils/go-units.h>; :how "basic unit-typing/aliasing." ]
|
|
,[ :module <utils/go-font.h>; :how "font aliasing; pango, mostly." ]
|
|
|
|
<file:gog-renderer-impl.h>
|
|
:depOn [ :module <#go-line> ].
|
|
|
|
<#go-line> :depOn [ :module <#gui-utils> ].
|
|
|
|
<file:gog-renderer-pixbuf.c>
|
|
:depOn [ :module <#gsf>; :how "weakly" ]
|
|
,[ :module <#pango> ]
|
|
,[ :module <#libart> ]
|
|
,[ :module <#gnumeric-app>; :how "for the `gnm_app_display_dpi_get(...)` call, apparently." ]
|
|
.
|
|
|
|
<file:gog-control-foocanvas.c>
|
|
:depOn [ :module <#gnm-libfoocanvas-copy>; :note "we can do without this." ].
|
|
|
|
<file:gog-axis.c>
|
|
:depOn [ :module <#gnm-widget-format-selector>; :how "??" ]
|
|
,[ :module <#gnm-gui-util>; :how "`number_format_selector_set_style_format`" ]
|
|
,[ :module <#gnm-format.h>; :how "`style_format_is_general`" ]
|
|
.
|
|
|
|
|
|
------------------------------
|
|
|
|
[jsled@phoenix:~/stuff/programming/projects/gnucash-budget/src-gnome2/gnucash/lib/goffice]$ nm -a .libs/libgoffice.a | ./symbols.py | egrep -v "(xml|gtk_|g_|gdk_|pango_|gsf_|art_|gnome_|glade_)" | sort
|
|
# some manual cleanup of the results results in the list here:
|
|
error_info_free
|
|
error_info_print
|
|
- provided by error-info.[hc]
|
|
font_selector_get_pango
|
|
font_selector_get_type
|
|
font_selector_new
|
|
font_selector_set_from_pango
|
|
- used by gog-style.c:gog_style_editor.
|
|
- gog_styled_object_editor, however, is called from gog-{axis,label,legend,series}.
|
|
format_value
|
|
- seems straightforward, but depends on format logic.
|
|
gnm_app_display_dpi_get
|
|
- thin wrapper over configuration; should be easy to stub out.
|
|
gnm_app_get_pixbuf
|
|
- called by go_action_combo_color_new, which isn't called in lib...
|
|
gnm_font_find_closest_from_weight_slant
|
|
- depends on gnome print, but nicely seperable.
|
|
gnm_measure_string
|
|
- nicely seperable; depends on pango.
|
|
gnm_pixbuf_intelligent_scale
|
|
- nicely seperable; depends on GdkPixbuf.
|
|
gnm_plugin_get_dir_name
|
|
gnm_plugin_use_ref
|
|
gnm_plugin_use_unref
|
|
- split/plugin.[hc]; seems to wrap plugin_* stuff...
|
|
gnm_setup_label_atk
|
|
- seperable
|
|
gnm_widget_disable_focus
|
|
- seperable
|
|
gnumeric_button_new_with_stock_image
|
|
- looks seperable [being stolen from gtkedit]
|
|
gnumeric_load_pixbuf
|
|
- depends weakly on gnumeric configuration path.
|
|
go_nan
|
|
- text symbol
|
|
gui_image_file_select
|
|
- used to select [fill] image file by gog-style ... do we need the UI
|
|
elements of gog-style here?
|
|
number_format_selector_get_type
|
|
number_format_selector_new
|
|
number_format_selector_set_style_format
|
|
plugin_service_define
|
|
plugin_service_get_description
|
|
plugin_service_get_plugin
|
|
plugin_service_get_type
|
|
plugin_service_gobject_loader_get_type
|
|
plugin_service_load
|
|
plugin_service_simple_get_type
|
|
style_format_as_XL
|
|
style_format_default_date
|
|
style_format_default_money
|
|
style_format_default_percentage
|
|
style_format_default_time
|
|
style_format_equal
|
|
style_format_general
|
|
style_format_new_XL
|
|
style_format_ref
|
|
style_format_unref
|