/**************************************************************************** * * * Copyright (C) 2005 Michael Buesch * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License version 2 * * as published by the Free Software Foundation. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program. Additionally a copy of the * * GNU General Public License is available here: * * http://passwordmanager.sourceforge.net/gplv2.txt * * http://www.gnu.org/licenses/gpl.txt * * * ****************************************************************************/ #ifndef REGTRACK_ADVANCED_H_ #define REGTRACK_ADVANCED_H_ #include #include #include class AdvancedWidget; class ContextList; class RegTrack; class QPushButton; class ContextItem : public QListViewItem { public: ContextItem(ContextList *_parent, const QString &name, int _pos); virtual ~ContextItem(); int getPos() const { return pos; } protected: ContextList *parent; int pos; }; class ContextList : public QListView { Q_OBJECT public: ContextList(AdvancedWidget *_adv, const char *name = 0, WFlags f = 0); virtual ~ContextList(); protected slots: void itemDoubleClicked(QListViewItem *_item, const QPoint &/*point*/, int /*column*/); void itemClicked(int button, QListViewItem *_item, const QPoint &/*pos*/, int /*column*/); void itemRenamed(QListViewItem *_item, int /*column*/, const QString &text); protected: AdvancedWidget *adv; }; class AdvancedWidget : public QWidget { Q_OBJECT friend class ContextList; public: AdvancedWidget(RegTrack *_rt, const char *name = 0, WFlags f = 0); virtual ~AdvancedWidget(); virtual void show(); protected slots: void saveClicked(); void loadClicked(); void contextCloneClicked(); void contextDelClicked(); void contextSelected(QListViewItem *_item); protected: void updateContextList(); protected: RegTrack *rt; QVBoxLayout *layout; QPushButton *saveButton; QPushButton *loadButton; ContextList *context; QPushButton *contextClone; QPushButton *contextDel; }; #endif // REGTRACK_ADVANCED_H_