First commit for 0.2.3, some old functions still need to be ported to the new back-end api, i.e. import and export.

git-svn-id: https://svn.code.sf.net/p/keepassx/code/trunk@104 b624d157-de02-0410-bad0-e51aec6abb33
This commit is contained in:
tarek_saidi
2006-10-14 22:33:41 +00:00
parent 0286b87a41
commit 21f0fea56a
67 changed files with 8909 additions and 6954 deletions

View File

@@ -23,60 +23,65 @@
#include <QTreeWidget>
#include <QLine>
#include <QContextMenuEvent>
#include "../PwManager.h"
#include "../StandardDatabase.h"
class GroupViewItem;
typedef vector<GroupViewItem*>::iterator GroupItemItr;
class KeepassGroupView:public QTreeWidget{
Q_OBJECT
public:
KeepassGroupView(QWidget* parent=0);
bool isSearchResultGroup(GroupViewItem* item);
void selectSearchGroup();
Database *db;
bool ShowSearchGroup; //needs a "updateItems()" after a change!
vector<GroupViewItem*>Items;
QMenu *ContextMenu;
QMenu *ContextMenuSearchGroup;
public slots:
void updateItems();
signals:
void fileModified();
void entryDropped();
protected:
virtual void dragEnterEvent ( QDragEnterEvent * event );
virtual void dragMoveEvent ( QDragMoveEvent * event );
virtual void dragLeaveEvent ( QDragLeaveEvent * event );
virtual void dropEvent ( QDropEvent * event );
virtual void mousePressEvent(QMouseEvent *event);
virtual void mouseMoveEvent(QMouseEvent *event);
virtual void paintEvent ( QPaintEvent * event );
virtual void contextMenuEvent(QContextMenuEvent *event);
private:
QLine InsertionMarker;
QPoint DragStartPos;
QPixmap DragPixmap;
GroupViewItem* DragItem;
GroupViewItem* LastHoverItem;
GroupViewItem* getLastSameLevelItem(int level);
enum tDragType{GROUP,ENTRY};
tDragType DragType;
Q_OBJECT
public:
KeepassGroupView(QWidget* parent=0);
IDatabase *db;
QList<GroupViewItem*>Items;
QMenu *ContextMenu;
QMenu *ContextMenuSearchGroup;
GroupViewItem* SearchResultItem;
void createItems();
void showSearchResults();
private:
virtual void dragEnterEvent ( QDragEnterEvent * event );
virtual void dragMoveEvent ( QDragMoveEvent * event );
virtual void dragLeaveEvent ( QDragLeaveEvent * event );
virtual void dropEvent ( QDropEvent * event );
virtual void mousePressEvent(QMouseEvent *event);
virtual void mouseMoveEvent(QMouseEvent *event);
virtual void paintEvent ( QPaintEvent * event );
virtual void contextMenuEvent(QContextMenuEvent *event);
void addChilds(GroupViewItem* item);
QPoint DragStartPos;
GroupViewItem* DragItem;
GroupViewItem* LastHoverItem;
int InsLinePos;
int InsLineStart;
public slots:
void OnCurrentGroupChanged(QTreeWidgetItem*,QTreeWidgetItem*);
void OnDeleteGroup();
void OnNewGroup();
void OnEditGroup();
void updateIcons();
void OnHideSearchResults();
// void OnItemExpanded(QTreeWidgetItem*);
// void OnItemCollapsed(QTreeWidgetItem*);
signals:
void groupChanged(IGroupHandle* NewGroup);
void searchResultsSelected();
void fileModified();
};
class GroupViewItem:public QTreeWidgetItem{
public:
GroupViewItem(QTreeWidget *parent);
GroupViewItem(QTreeWidget *parent, QTreeWidgetItem * preceding);
GroupViewItem(QTreeWidgetItem *parent);
GroupViewItem(QTreeWidgetItem *parent, QTreeWidgetItem * preceding);
CGroup* pGroup;
public:
GroupViewItem();
GroupViewItem(QTreeWidget *parent);
GroupViewItem(QTreeWidget *parent, QTreeWidgetItem * preceding);
GroupViewItem(QTreeWidgetItem *parent);
GroupViewItem(QTreeWidgetItem *parent, QTreeWidgetItem * preceding);
IGroupHandle* GroupHandle;
};
#endif