[Kmymoney-devel] Review Request: Adding Tags to Kmymoney - first draft
Fernando Vilas
fvilas at iname.com
Tue Oct 23 01:11:29 UTC 2012
> On Oct. 22, 2012, 6:13 a.m., Thomas Baumgart wrote:
> > kmymoney/mymoney/mymoneytag.h, line 85
> > <http://git.reviewboard.kde.org/r/106846/diff/5/?file=91718#file91718line85>
> >
> > Use 'const <type>&' when returning direct members of complex types such as QString, QDate, QColor. It improves performance.
>
> Alessandro Russo wrote:
> I did the changes but If I put const QColor& tagColor(void) I get this error:
> mymoney/storage/mymoneystoragesql.cpp:2952:56: error: passing ‘const QColor’ as ‘this’ argument of ‘void QColor::setNamedColor(const QString&)’ discards qualifiers [-fpermissive]
>
> The row is:
> tag.tagColor().setNamedColor(GETSTRING(tagColorCol));
What about tag.setTagColor(QColor(GETSTRING(tagColorCol)); ?
The code you have does not do what you think it does anyway... What you have returns a copy of the QColor member, then trashes it when scope is exited. The member variable in MMTag is never touched.
For const-correctness, all non-basic return values in accessor functions should be const. On this project we make it a const-reference for efficiency, but we have to be careful about initializing a const-reference with a return value that gets destroyed while there is still a reference to it. QObjects help with that quite a bit.
You are already using the mutator functions you coded for the rest of the MMTag object you have, so this will just make it look like the rest.
- Fernando
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106846/#review20647
-----------------------------------------------------------
On Oct. 21, 2012, 10:52 p.m., Alessandro Russo wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/106846/
> -----------------------------------------------------------
>
> (Updated Oct. 21, 2012, 10:52 p.m.)
>
>
> Review request for KMymoney.
>
>
> Description
> -------
>
> 1) I created and almost completed the Tag tab in KMyMoneyView (KTagsView),
> it's similar to the payees tab.
> 2) I modified many classes in the storage folder and created a new class
> MyMoneyTag similar to MyMoneyPayee, now Tags save and load correctly but not
> all tag attribute (visibibleFrom,etc..) are saved/loaded yet.
> 3) I changed transactioneditor, transaction and KGlobalLedgerView, now there
> is a new widget called Tags in the translationeditor that someway works but
> no tags are shown in the ledger yet and no widget is showed when you insert
> or edit a transaction directly from the ledger (is this a feature that
> somebody uses?).
> 4) Missing features:
> - multi tags per transaction (only 1 tag can be added at this time)
> - no tag selection in reports
> - hierarchical tags (I'm rethinking about the real usefulness of this
> one... as implementing it will require some work )
> - in the tag tab you can select a color for the tag, this will be used to
> show the tag in the ledger with this color, also no visibility check is
> made.
> - no tags in a split
> Bugs:
> - in the tag tab if you select a tag and click on the 'New tag' button the
> selected tag wil be deleted and replaced with an empy "NewTag"
> - in the transaction editor when you edit a transaction with a tag the tag
> field is empty, when not in edit mode it show the tag name correctly.
> - many more...
>
>
> This addresses bug 207761.
> http://bugs.kde.org/show_bug.cgi?id=207761
>
>
> Diffs
> -----
>
> kmymoney/dialogs/CMakeLists.txt 9a8d782
> kmymoney/dialogs/kfindtransactiondlg.h 397d623
> kmymoney/dialogs/kfindtransactiondlg.cpp 506d752
> kmymoney/dialogs/kfindtransactiondlgdecl.ui d9e95ce
> kmymoney/dialogs/kreportconfigurationfilterdlg.cpp a50de29
> kmymoney/dialogs/ktagreassigndlg.h PRE-CREATION
> kmymoney/dialogs/ktagreassigndlg.cpp PRE-CREATION
> kmymoney/dialogs/ktagreassigndlgdecl.ui PRE-CREATION
> kmymoney/dialogs/transactioneditor.h 2535d96
> kmymoney/dialogs/transactioneditor.cpp 06c7fd1
> kmymoney/kmymoney.h 9482812
> kmymoney/kmymoney.cpp 1ef7400
> kmymoney/kmymoney.kcfg 95e33df
> kmymoney/kmymoneyui.rc 4294c46
> kmymoney/mymoney/CMakeLists.txt d2917b5
> kmymoney/mymoney/mymoneyfile.h 6c1aa25
> kmymoney/mymoney/mymoneyfile.cpp eef7126
> kmymoney/mymoney/mymoneyobjectcontainer.h 21cd74c
> kmymoney/mymoney/mymoneyobjectcontainer.cpp 2e9c496
> kmymoney/mymoney/mymoneyreport.h 7747353
> kmymoney/mymoney/mymoneyreport.cpp 24d75d8
> kmymoney/mymoney/mymoneysplit.h ded6b4c
> kmymoney/mymoney/mymoneysplit.cpp 168d1e6
> kmymoney/mymoney/mymoneytag.h PRE-CREATION
> kmymoney/mymoney/mymoneytag.cpp PRE-CREATION
> kmymoney/mymoney/mymoneytransactionfilter.h 2a7b85d
> kmymoney/mymoney/mymoneytransactionfilter.cpp 6650fef
> kmymoney/mymoney/storage/CMakeLists.txt 0495726
> kmymoney/mymoney/storage/imymoneyserialize.h ff49986
> kmymoney/mymoney/storage/imymoneystorage.h 8b980b7
> kmymoney/mymoney/storage/mymoneydatabasemgr.h ab587ed
> kmymoney/mymoney/storage/mymoneydatabasemgr.cpp f98a965
> kmymoney/mymoney/storage/mymoneydbdef.h a2eecaf
> kmymoney/mymoney/storage/mymoneydbdef.cpp 9fa9781
> kmymoney/mymoney/storage/mymoneyseqaccessmgr.h da67e58
> kmymoney/mymoney/storage/mymoneyseqaccessmgr.cpp 232d6b2
> kmymoney/mymoney/storage/mymoneystorageanon.h 482fc9d
> kmymoney/mymoney/storage/mymoneystorageanon.cpp 0e7ebdd
> kmymoney/mymoney/storage/mymoneystoragebin.h af2b254
> kmymoney/mymoney/storage/mymoneystoragedump.cpp d36b4bb
> kmymoney/mymoney/storage/mymoneystoragesql.h 73875b3
> kmymoney/mymoney/storage/mymoneystoragesql.cpp 90ee818
> kmymoney/mymoney/storage/mymoneystoragexml.h 126cf8c
> kmymoney/mymoney/storage/mymoneystoragexml.cpp 88a02df
> kmymoney/reports/listtable.cpp d163f58
> kmymoney/reports/querytable.cpp 697f425
> kmymoney/views/CMakeLists.txt de0272f
> kmymoney/views/kgloballedgerview.cpp dfaecbd
> kmymoney/views/kmymoneyview.h 99ab398
> kmymoney/views/kmymoneyview.cpp 49dcc85
> kmymoney/views/ktagsview.h PRE-CREATION
> kmymoney/views/ktagsview.cpp PRE-CREATION
> kmymoney/views/ktagsviewdecl.ui PRE-CREATION
> kmymoney/widgets/kmymoney.widgets 857e42c
> kmymoney/widgets/kmymoneymvccombo.h 305e8a1
> kmymoney/widgets/kmymoneymvccombo.cpp 42a3687
> kmymoney/widgets/kmymoneyreportconfigtab3decl.ui ab150ee
> kmymoney/widgets/transaction.h a28053e
> kmymoney/widgets/transaction.cpp bfaafbf
>
> Diff: http://git.reviewboard.kde.org/r/106846/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Alessandro Russo
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kmymoney-devel/attachments/20121023/8ee24610/attachment.html>
More information about the KMyMoney-devel
mailing list