diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-07-04 22:38:03 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-07-04 22:38:03 +0000 |
commit | dadc34655c3ab961b0b0b94a10eaaba710f0b5e8 (patch) | |
tree | 99e72842fe687baea16376a147619b6048d7e441 /kmymoney2/widgets/stdtransactionmatched.h | |
download | kmymoney-dadc34655c3ab961b0b0b94a10eaaba710f0b5e8.tar.gz kmymoney-dadc34655c3ab961b0b0b94a10eaaba710f0b5e8.zip |
Added kmymoney
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kmymoney@1239792 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kmymoney2/widgets/stdtransactionmatched.h')
-rw-r--r-- | kmymoney2/widgets/stdtransactionmatched.h | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/kmymoney2/widgets/stdtransactionmatched.h b/kmymoney2/widgets/stdtransactionmatched.h new file mode 100644 index 0000000..599e6e0 --- /dev/null +++ b/kmymoney2/widgets/stdtransactionmatched.h @@ -0,0 +1,103 @@ +/*************************************************************************** + stdtransactionmatched.h + ------------------- + begin : Sat May 31 2008 + copyright : (C) 2008 by Thomas Baumgart + email : Thomas Baumgart <[email protected]> + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#ifndef STDTRANSACTIONMATCHED_H +#define STDTRANSACTIONMATCHED_H + +// ---------------------------------------------------------------------------- +// QT Includes +#include <qbrush.h> + +// ---------------------------------------------------------------------------- +// KDE Includes + +// ---------------------------------------------------------------------------- +// Project Includes + +#include <kmymoney/transaction.h> + +namespace KMyMoneyTransactionForm { + class TransactionForm; +}; // namespace + +namespace KMyMoneyRegister { + +class StdTransactionMatched : public StdTransaction +{ + static const int m_additionalRows = 3; + +public: + StdTransactionMatched(Register* parent, const MyMoneyTransaction& transaction, const MyMoneySplit& split, int uniqueId); + virtual ~StdTransactionMatched() {} + + virtual const char* className(void) { return "StdTransactionMatched"; } + + /** + * This method sets the general paramaters required for the painting of a cell + * in the register. These are: + * + * - background color (alternating) + * - background color (imported transaction) + * - background color (matched transaction) + * - background color (selected transaction) + * - cellRect (area covering the cell) + * - textRect (area covering the text) + * - color of the pen to do the painting of text and lines + * + * @param painter pointer to the QPainter object + * @param row vertical index of cell in register + * @param col horizontal index of cell in register + * @param cellRect ref to QRect object receiving the area information for the cell + * @param textRect ref to QRect object receiving the area information for the text + * @param cg ref to QColorGroup object receiving the color information to be used + * @param brush ref to QBrush object receiveing the brush information to be used + */ + virtual bool paintRegisterCellSetup(QPainter* painter, int& row, int& col, QRect& cellRect, QRect& textRect, QColorGroup& cg, QBrush& brush); + + virtual void paintRegisterGrid(QPainter* painter, int row, int col, const QRect& r, const QColorGroup& cg) const; + +#if 0 + virtual void paintRegisterCell(QPainter* painter, int row, int col, const QRect& r, bool selected, const QColorGroup& cg); + + bool formCellText(QString& txt, int& align, int row, int col, QPainter* painter = 0); + + int numColsForm(void) const { return 4; } + + void arrangeWidgetsInForm(QMap<QString, QWidget*>& editWidgets); + void arrangeWidgetsInRegister(QMap<QString, QWidget*>& editWidgets); + void tabOrderInForm(QWidgetList& tabOrderWidgets) const; + void tabOrderInRegister(QWidgetList& tabOrderWidgets) const; + + int numRowsRegister(bool expanded) const; +#endif + + void registerCellText(QString& txt, int& align, int row, int col, QPainter* painter = 0); + + /** + * Provided for internal reasons. No API change. See RegisterItem::numRowsRegister(bool) + */ + int numRowsRegister(bool expanded) const { return StdTransaction::numRowsRegister(expanded) + m_additionalRows; } + +private: + unsigned int m_drawCounter; +}; + +}; // namespace + +#endif +// vim:cin:si:ai:et:ts=2:sw=2: + |