You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kmymoney/kmymoney2/widgets/kmymoneycompletion.h

124 lines
3.7 KiB

/***************************************************************************
kmymoneycompletion.h - description
-------------------
begin : Mon Apr 26 2004
copyright : (C) 2000-2004 by Michael Edwardes
email : mte@users.sourceforge.net
Javier Campos Morales <javi_c@users.sourceforge.net>
Felix Rodriguez <frodriguez@users.sourceforge.net>
John C <thetacoturtle@users.sourceforge.net>
Thomas Baumgart <ipwizard@users.sourceforge.net>
Kevin Tambascio <ktambascio@users.sourceforge.net>
***************************************************************************/
/***************************************************************************
* *
* 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 <tqwidget.h>
#include <tqvbox.h>
#include <tqregexp.h>
class TQListViewItem;
// ----------------------------------------------------------------------------
// KDE Includes
class KListView;
// ----------------------------------------------------------------------------
// Project Includes
class KMyMoneySelector;
/**
* @author Thomas Baumgart
*/
class kMyMoneyCompletion : public TQVBox
{
Q_OBJECT
public:
kMyMoneyCompletion(TQWidget *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 TQString& id);
virtual KMyMoneySelector* selector(void) const { return m_selector; }
public slots:
void slotMakeCompletion(const TQString& txt);
void slotItemSelected(TQListViewItem *item, const TQPoint& 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( TQObject *, TQEvent * );
/**
* 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(TQWidget *widget, KListView* lv);
void show(bool presetSelected);
signals:
void itemSelected(const TQString& id);
protected:
TQWidget* m_parent;
TQWidget* m_widget;
TQString m_id;
KListView* m_lv;
KMyMoneySelector* m_selector;
TQRegExp m_lastCompletion;
static const int MAX_ITEMS;
};
#endif