From dadc34655c3ab961b0b0b94a10eaaba710f0b5e8 Mon Sep 17 00:00:00 2001 From: tpearson Date: Mon, 4 Jul 2011 22:38:03 +0000 Subject: Added kmymoney git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kmymoney@1239792 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kmymoney2/widgets/kmymoneycompletion.h | 122 +++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 kmymoney2/widgets/kmymoneycompletion.h (limited to 'kmymoney2/widgets/kmymoneycompletion.h') diff --git a/kmymoney2/widgets/kmymoneycompletion.h b/kmymoney2/widgets/kmymoneycompletion.h new file mode 100644 index 0000000..1efea63 --- /dev/null +++ b/kmymoney2/widgets/kmymoneycompletion.h @@ -0,0 +1,122 @@ +/*************************************************************************** + kmymoneycompletion.h - description + ------------------- + begin : Mon Apr 26 2004 + copyright : (C) 2000-2004 by Michael Edwardes + email : mte@users.sourceforge.net + Javier Campos Morales + Felix Rodriguez + John C + Thomas Baumgart + Kevin Tambascio + ***************************************************************************/ + +/*************************************************************************** + * * + * 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 KMYMONEYCOMPLETION_H +#define KMYMONEYCOMPLETION_H + +// ---------------------------------------------------------------------------- +// QT Includes + +#include +#include +#include +class QListViewItem; + +// ---------------------------------------------------------------------------- +// KDE Includes + +class KListView; + +// ---------------------------------------------------------------------------- +// Project Includes + +class KMyMoneySelector; + +/** + * @author Thomas Baumgart + */ + +class kMyMoneyCompletion : public QVBox +{ + Q_OBJECT +public: + + kMyMoneyCompletion(QWidget *parent=0, const char *name=0); + virtual ~kMyMoneyCompletion(); + + /** + * Re-implemented for internal reasons. API is unaffected. + */ + virtual void show(void) { show(true); } + + + /** + * Re-implemented for internal reasons. API is unaffected. + */ + virtual void hide(void); + + /** + * This method sets the current account with id @p id as + * the current selection. + * + * @param id id of account to be selected + */ + void setSelected(const QString& id); + + virtual KMyMoneySelector* selector(void) const { return m_selector; } + +public slots: + void slotMakeCompletion(const QString& txt); + + void slotItemSelected(QListViewItem *item, const QPoint& pos, int col); + +protected: + /** + * Reimplemented from kMyMoneyAccountSelector to get events from the viewport (to hide + * this widget on mouse-click, Escape-presses, etc. + */ + virtual bool eventFilter( QObject *, QEvent * ); + + /** + * This method resizes the widget to show a maximum of @p count + * or @a MAX_ITEMS items. + * + * @param count maximum number to be shown if < MAX_ITEMS + */ + void adjustSize(const int count); + + /** + * This method counts the number of items currently visible and + * calls adjustSize(count). + */ + void adjustSize(void); + + void connectSignals(QWidget *widget, KListView* lv); + + void show(bool presetSelected); + +signals: + void itemSelected(const QString& id); + +protected: + QWidget* m_parent; + QWidget* m_widget; + QString m_id; + KListView* m_lv; + KMyMoneySelector* m_selector; + QRegExp m_lastCompletion; + + static const int MAX_ITEMS; + +}; + +#endif -- cgit v1.2.1