implemented Database as interface (pure virtual)
git-svn-id: https://svn.code.sf.net/p/keepassx/code/trunk@64 b624d157-de02-0410-bad0-e51aec6abb33
This commit is contained in:
@@ -104,9 +104,9 @@ Items.clear();
|
||||
if(!db)return;
|
||||
if(!GroupID)return;
|
||||
CurrentGroup=GroupID;
|
||||
for(int i=0;i<db->Entries.size();i++){
|
||||
if(db->Entries[i].GroupID==GroupID)
|
||||
setEntry(&db->Entries[i]);
|
||||
for(int i=0;i<db->numEntries();i++){
|
||||
if(db->entry(i).GroupID==GroupID)
|
||||
setEntry(&db->entry(i));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,9 +115,9 @@ IsSearchGroup=true;
|
||||
clear();
|
||||
Items.clear();
|
||||
for(int j=0; j<results.size(); j++){
|
||||
for(int i=0; i<db->Entries.size();i++){
|
||||
if(db->Entries[i].sID == results[j])
|
||||
setEntry(&db->Entries[i]);
|
||||
for(int i=0; i<db->numEntries();i++){
|
||||
if(db->entry(i).sID == results[j])
|
||||
setEntry(&db->entry(i));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
void updateColumns();
|
||||
void refreshItems();
|
||||
void showSearchResults(QList<Q_UINT32>& results);
|
||||
PwDatabase* db;
|
||||
Database* db;
|
||||
vector<EntryViewItem*>Items;
|
||||
QMenu *ContextMenu;
|
||||
private:
|
||||
@@ -76,4 +76,4 @@ CEntry* pEntry;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -209,29 +209,29 @@ void KeepassGroupView::updateItems(){
|
||||
|
||||
clear();
|
||||
Items.clear();
|
||||
for(int i=0; i<db->Groups.size();i++){
|
||||
if(db->Groups[i].Level==0){
|
||||
for(int i=0; i<db->numGroups();i++){
|
||||
if(db->group(i).Level==0){
|
||||
if(Items.size()) Items.push_back(new GroupViewItem(this,getLastSameLevelItem(0)));
|
||||
else Items.push_back(new GroupViewItem(this));
|
||||
Items.back()->setText(0,db->Groups[i].Name);
|
||||
Items.back()->pGroup=&db->Groups[i];
|
||||
Items.back()->setText(0,db->group(i).Name);
|
||||
Items.back()->pGroup=&db->group(i);
|
||||
}
|
||||
else{
|
||||
if(db->Groups[i].Level>db->Groups[i-1].Level){
|
||||
Items.push_back(new GroupViewItem(Items.back(),getLastSameLevelItem(db->Groups[i].Level)));
|
||||
Items.back()->setText(0,db->Groups[i].Name);
|
||||
Items.back()->pGroup=&db->Groups[i];
|
||||
if(db->group(i).Level>db->group(i-1).Level){
|
||||
Items.push_back(new GroupViewItem(Items.back(),getLastSameLevelItem(db->group(i).Level)));
|
||||
Items.back()->setText(0,db->group(i).Name);
|
||||
Items.back()->pGroup=&db->group(i);
|
||||
}
|
||||
if(db->Groups[i].Level<=db->Groups[i-1].Level){
|
||||
if(db->group(i).Level<=db->group(i-1).Level){
|
||||
GroupItemItr j;
|
||||
for(j=Items.end()-1;j!=Items.begin();j--){
|
||||
if((*j)->pGroup->Level<db->Groups[i].Level)break;}
|
||||
Items.push_back(new GroupViewItem((*j),getLastSameLevelItem(db->Groups[i].Level)));
|
||||
Items.back()->setText(0,db->Groups[i].Name);
|
||||
Items.back()->pGroup=&db->Groups[i];
|
||||
if((*j)->pGroup->Level<db->group(i).Level)break;}
|
||||
Items.push_back(new GroupViewItem((*j),getLastSameLevelItem(db->group(i).Level)));
|
||||
Items.back()->setText(0,db->group(i).Name);
|
||||
Items.back()->pGroup=&db->group(i);
|
||||
}
|
||||
}
|
||||
Items.back()->setIcon(0,EntryIcons[db->Groups[i].ImageID]);
|
||||
Items.back()->setIcon(0,EntryIcons[db->group(i).ImageID]);
|
||||
}
|
||||
|
||||
for(int i=0;i<Items.size();i++){
|
||||
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
void updateItems();
|
||||
bool isSearchResultGroup(GroupViewItem* item);
|
||||
void selectSearchGroup();
|
||||
PwDatabase *db;
|
||||
Database *db;
|
||||
bool ShowSearchGroup; //needs a "updateItems()" after a change!
|
||||
vector<GroupViewItem*>Items;
|
||||
QMenu *ContextMenu;
|
||||
@@ -77,4 +77,4 @@ CGroup* pGroup;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user