Skip to content

Commit

Permalink
Add LVs to VG view
Browse files Browse the repository at this point in the history
  • Loading branch information
vicr123 committed Aug 15, 2023
1 parent ff97682 commit 694ee82
Show file tree
Hide file tree
Showing 27 changed files with 431 additions and 2 deletions.
18 changes: 18 additions & 0 deletions application/lvm/volumegrouppage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,28 @@
#include "ui_volumegrouppage.h"

#include <DriveObjects/volumegroup.h>
#include <volumegrouplvmodel.h>

struct VolumeGroupPagePrivate {
VolumeGroup* vg;
VolumeGroupLvModel* lvModel;
};

VolumeGroupPage::VolumeGroupPage(VolumeGroup* vg, QWidget* parent) :
QWidget(parent),
ui(new Ui::VolumeGroupPage) {
ui->setupUi(this);
d = new VolumeGroupPagePrivate();
d->vg = vg;
ui->titleLabel->setText(vg->name());
ui->disbandButton->setProperty("type", "destructive");

d->lvModel = new VolumeGroupLvModel(d->vg);
connect(d->lvModel, &VolumeGroupLvModel::modelReset, this, [this] {
ui->lvsView->setFixedHeight(ui->lvsView->sizeHintForRow(0) * d->lvModel->rowCount());
});
ui->lvsView->setModel(d->lvModel);
ui->lvsView->setFixedHeight(ui->lvsView->sizeHintForRow(0) * d->lvModel->rowCount());
}

VolumeGroupPage::~VolumeGroupPage() {
Expand All @@ -27,3 +39,9 @@ void VolumeGroupPage::setTopPadding(int padding) {
void VolumeGroupPage::on_titleLabel_backButtonClicked() {
emit done();
}

void VolumeGroupPage::on_disbandButton_clicked()
{

}

2 changes: 2 additions & 0 deletions application/lvm/volumegrouppage.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ class VolumeGroupPage : public QWidget {
private slots:
void on_titleLabel_backButtonClicked();

void on_disbandButton_clicked();

private:
Ui::VolumeGroupPage* ui;
VolumeGroupPagePrivate* d;
Expand Down
75 changes: 75 additions & 0 deletions application/lvm/volumegrouppage.ui
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,76 @@
<height>535</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="spacing">
<number>0</number>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="tSubtitleLabel" name="subtitleLabel">
<property name="text">
<string>Logical Volumes</string>
</property>
<property name="margin">
<number>9</number>
</property>
</widget>
</item>
<item>
<widget class="QListView" name="lvsView">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
</widget>
</item>
<item>
<widget class="tSubtitleLabel" name="subtitleLabel_2">
<property name="text">
<string>Physical Volumes</string>
</property>
<property name="margin">
<number>9</number>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="disbandButton">
<property name="text">
<string>Disband Volume Group</string>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
Expand Down Expand Up @@ -111,6 +181,11 @@
<signal>backButtonClicked()</signal>
</slots>
</customwidget>
<customwidget>
<class>tSubtitleLabel</class>
<extends>QLabel</extends>
<header location="global">tsubtitlelabel.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/ar_SA.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/da.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/en_US.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/he_IL.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/pt_BR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/tr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
15 changes: 15 additions & 0 deletions application/translations/vi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -557,6 +557,21 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="93"/>
<source>Logical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="116"/>
<source>Physical Volumes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../lvm/volumegrouppage.ui" line="139"/>
<source>Disband Volume Group</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
Expand Down
1 change: 1 addition & 0 deletions libthefrisbee/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ set(SOURCES
structures/private/smartattribute.h structures/private/smartattribute.cpp
structures/formattedsmartattribute.cpp
volumegroupmodel.h volumegroupmodel.cpp
volumegrouplvmodel.h volumegrouplvmodel.cpp
)

set(STRUCTURES_HEADERS
Expand Down
30 changes: 30 additions & 0 deletions libthefrisbee/DriveObjects/logicalvolume.cpp
Original file line number Diff line number Diff line change
@@ -1,11 +1,26 @@
#include "logicalvolume.h"

#include "driveobjectmanager.h"

struct LogicalVolumePrivate {
QDBusObjectPath vg;
QDBusObjectPath block;
QString name;
};

LogicalVolume::LogicalVolume(QDBusObjectPath path, QObject* parent) :
UdisksInterface{path, interfaceName(), parent} {
d = new LogicalVolumePrivate();

bindPropertyUpdater("Name", [this](QVariant value) {
d->name = value.toString();
});
bindPropertyUpdater("VolumeGroup", [this](QVariant value) {
d->vg = value.value<QDBusObjectPath>();
});
bindPropertyUpdater("BlockDevice", [this](QVariant value) {
d->block = value.value<QDBusObjectPath>();
});
}

LogicalVolume::~LogicalVolume() {
Expand All @@ -15,3 +30,18 @@ LogicalVolume::~LogicalVolume() {
QString LogicalVolume::interfaceName() {
return QStringLiteral("org.freedesktop.UDisks2.LogicalVolume");
}

QString LogicalVolume::name()
{
return d->name;
}

VolumeGroup *LogicalVolume::vg()
{
return DriveObjectManager::volumeGroupForPath(d->vg);
}

DiskObject *LogicalVolume::block()
{
return DriveObjectManager::diskForPath(d->block);
}
5 changes: 5 additions & 0 deletions libthefrisbee/DriveObjects/logicalvolume.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include "udisksinterface.h"

struct LogicalVolumePrivate;
class VolumeGroup;
class LogicalVolume : public UdisksInterface {
Q_OBJECT
public:
Expand All @@ -12,6 +13,10 @@ class LogicalVolume : public UdisksInterface {

static QString interfaceName();

QString name();
VolumeGroup* vg();
DiskObject* block();

private:
LogicalVolumePrivate* d;
};
Expand Down
Loading

0 comments on commit 694ee82

Please sign in to comment.