-rw-r--r-- | noncore/apps/zsafe/zsafe.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/noncore/apps/zsafe/zsafe.cpp b/noncore/apps/zsafe/zsafe.cpp index ef16b46..e86b3d2 100644 --- a/noncore/apps/zsafe/zsafe.cpp +++ b/noncore/apps/zsafe/zsafe.cpp @@ -2597,6 +2597,7 @@ void ZSafe::addCategory() #endif QStringList::Iterator it = list.begin(); QString categ; + QString firstCategory; dialog->CategoryField->clear(); // remove all items while( it != list.end() ) { @@ -2618,13 +2619,18 @@ void ZSafe::addCategory() if (!categ.isEmpty()) { dialog->CategoryField->insertItem (categ, -1); + if (firstCategory.isEmpty()) + firstCategory = categ; } } ++it; } + if (firstCategory.isEmpty()) setCategoryDialogFields(dialog); + else + setCategoryDialogFields(dialog, firstCategory); // CategoryDialog *dialog = new CategoryDialog(this, "Category", TRUE); @@ -2786,6 +2792,12 @@ void ZSafe::delCategory() void ZSafe::setCategoryDialogFields(CategoryDialog *dialog) { + if (!dialog) + return; + + QString icon; + if (selectedItem) + { dialog->Field1->setText(getFieldLabel (selectedItem, "1", tr("Name"))); dialog->Field2->setText(getFieldLabel (selectedItem, "2", tr("Username"))); dialog->Field3->setText(getFieldLabel (selectedItem, "3", tr("Password"))); @@ -2793,12 +2805,21 @@ void ZSafe::setCategoryDialogFields(CategoryDialog *dialog) dialog->Field5->setText(getFieldLabel (selectedItem, "5", tr("Field 4"))); dialog->Field6->setText(getFieldLabel (selectedItem, "6", tr("Field 5"))); - QString icon; Category *cat= categories.find (selectedItem->text(0)); if (cat) { icon = cat->getIconName(); } + } + else + { + dialog->Field1->setText(tr("Name")); + dialog->Field2->setText(tr("Username")); + dialog->Field3->setText(tr("Password")); + dialog->Field4->setText(tr("Comment")); + dialog->Field5->setText(tr("Field 4")); + dialog->Field6->setText(tr("Field 5")); + } #ifdef DESKTOP QDir d(iconPath); @@ -2838,6 +2859,9 @@ void ZSafe::setCategoryDialogFields(CategoryDialog *dialog) void ZSafe::setCategoryDialogFields(CategoryDialog *dialog, QString category) { + if (!dialog) + return; + dialog->Field1->setText(getFieldLabel (category, "1", tr("Name"))); dialog->Field2->setText(getFieldLabel (category, "2", tr("Username"))); dialog->Field3->setText(getFieldLabel (category, "3", tr("Password"))); |