1
0
mirror of https://github.com/fwbuilder/fwbuilder synced 2026-03-25 04:37:22 +01:00
This commit is contained in:
Illya Yalovoy 2009-10-28 22:37:58 +00:00
parent cf54b9b705
commit ca07ba48bc
4 changed files with 24 additions and 4 deletions

View File

@ -34,12 +34,23 @@ FWObjectSelectionModel::FWObjectSelectionModel()
void FWObjectSelectionModel::setSelected(FWObject * so, const QModelIndex &index)
{
this->selectedObjectOld = this->selectedObject;
save();
this->selectedObject = so;
this->index = index;
}
void FWObjectSelectionModel::save()
{
indexOld = index;
selectedObjectOld = selectedObject;
}
void FWObjectSelectionModel::restore()
{
index = indexOld;
selectedObject = selectedObjectOld;
}
void FWObjectSelectionModel::reset()
{
QModelIndex index;

View File

@ -39,9 +39,12 @@ public:
libfwbuilder::FWObject *selectedObject;
libfwbuilder::FWObject *selectedObjectOld;
QModelIndex index;
QModelIndex indexOld;
FWObjectSelectionModel();
void setSelected(libfwbuilder::FWObject *, const QModelIndex &index);
void reset();
void save();
void restore();
};

View File

@ -458,7 +458,7 @@ bool ObjectEditor::validateAndSave()
dialogs[current_dialog_idx],
"Firewall Builder",
tr("Object %1 has been modified but not saved.\n"
"Do you want to save it ?").arg(opened->getName().c_str()),
"Do you want to save it ?").arg(QString::fromUtf8(opened->getName().c_str())),
tr("&Save"), tr("&Discard"), tr("&Continue editing"),
0, 2 ) )
{

View File

@ -1551,7 +1551,13 @@ void RuleSetView::selectObject(FWObject *object, const QModelIndex &index)
void RuleSetView::restoreSelection(bool sameWidget)
{
if (fwbdebug) qDebug() << "restoreSelection"<< sameWidget;
if (sameWidget)
{
fwosm->restore();
setCurrentIndex(fwosm->index);
}
// openObjectInTree(fwosm->selectedObject);
}
void RuleSetView::openObjectInTree(FWObject *obj)