Add deactivatable check to deactivate VG operation.

This commit is contained in:
Chantara Tith 2016-08-15 00:25:06 +07:00 committed by Andrius Štikonas
parent 3eda1d79c6
commit a8139278db
2 changed files with 17 additions and 0 deletions

View File

@ -21,6 +21,7 @@
#include "core/volumemanagerdevice.h"
#include "core/partitiontable.h"
#include "core/partition.h"
#include <QString>
@ -57,3 +58,17 @@ void DeactivateVolumeGroupOperation::undo()
delete tmp;
}
}
bool DeactivateVolumeGroupOperation::isDeactivatable(const VolumeManagerDevice* dev)
{
if (dev->type() == Device::LVM_Device) {
for (const auto &p : dev->partitionTable()->children()) {
if (p->isMounted()) {
return false;
}
}
return true;
}
return false;
}

View File

@ -58,6 +58,8 @@ public:
virtual void preview() override;
virtual void undo() override;
static bool isDeactivatable(const VolumeManagerDevice* dev);
protected:
DeactivateVolumeGroupJob* deactivateVolumeGroupJob() {
return m_DeactivateVolumeGroupJob;