diff --git a/TODO b/TODO index 68b6398..21d2e5c 100644 --- a/TODO +++ b/TODO @@ -9,10 +9,24 @@ Bugs to fix for 1.1: if the new one is not legal. i.e., we must constantly update the valid ranges of the spin boxes if any value changes. +* how does one remove an existing mount point? + =============================================================================== For releases after 1.1: +* can we use capacity (i.e. bytes/mib) instead of sector for alignment + configuration? would we need to know the physical sector size for that? are + we able to acquire that information? + +* make Job::copyBlocks() work for cases where the logical sector sizes of + source and target are not the same + +* find an elegant solution for the brokenness in design that is + Partition::sectorSize()... Either a Partition has a reference/pointer to the + Device it's on or the method is removed completely. -- Maybe the + PartitionTable should refernce the Device? + * the file system support dialog is a usability nightmare * introduce new commands for online-actions, like change label online or, for diff --git a/src/gui/devicepropsdialog.cpp b/src/gui/devicepropsdialog.cpp index 46af0ee..cf16fe0 100644 --- a/src/gui/devicepropsdialog.cpp +++ b/src/gui/devicepropsdialog.cpp @@ -106,6 +106,7 @@ void DevicePropsDialog::setupDialog() dialogWidget().cylinderSize().setText(i18ncp("@label", "1 Sector", "%1 Sectors", device().cylinderSize())); dialogWidget().primariesMax().setText(maxPrimaries); dialogWidget().logicalSectorSize().setText(Capacity(device().logicalSectorSize()).toString(Capacity::Byte, Capacity::AppendUnit)); + dialogWidget().physicalSectorSize().setText(Capacity(device().physicalSectorSize()).toString(Capacity::Byte, Capacity::AppendUnit)); dialogWidget().totalSectors().setText(KGlobal::locale()->formatNumber(device().totalSectors(), 0)); dialogWidget().type().setText(type); diff --git a/src/gui/devicepropswidget.h b/src/gui/devicepropswidget.h index e56c333..1e0c99a 100644 --- a/src/gui/devicepropswidget.h +++ b/src/gui/devicepropswidget.h @@ -41,6 +41,7 @@ class DevicePropsWidget : public QWidget, public Ui::DevicePropsWidgetBase QLabel& cylinderSize() { Q_ASSERT(m_LabelCylinderSize); return *m_LabelCylinderSize; } QLabel& primariesMax() { Q_ASSERT(m_LabelPrimariesMax); return *m_LabelPrimariesMax; } QLabel& logicalSectorSize() { Q_ASSERT(m_LabelLogicalSectorSize); return *m_LabelLogicalSectorSize; } + QLabel& physicalSectorSize() { Q_ASSERT(m_LabelPhysicalSectorSize); return *m_LabelPhysicalSectorSize; } QLabel& totalSectors() { Q_ASSERT(m_LabelTotalSectors); return *m_LabelTotalSectors; } QLabel& type() { Q_ASSERT(m_LabelType); return *m_LabelType; } diff --git a/src/gui/devicepropswidgetbase.ui b/src/gui/devicepropswidgetbase.ui index db7415b..bc8e998 100644 --- a/src/gui/devicepropswidgetbase.ui +++ b/src/gui/devicepropswidgetbase.ui @@ -7,9 +7,12 @@ 0 0 450 - 343 + 361 + + Form + @@ -46,8 +49,8 @@ - 20 - 20 + 439 + 17 @@ -195,6 +198,23 @@ + + + Physical sector size: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + + Cylinder size: @@ -204,21 +224,21 @@ - + - + Qt::Horizontal - + Primaries/Max: @@ -228,21 +248,21 @@ - + - + Qt::Horizontal - + SMART status: @@ -252,7 +272,7 @@ - + @@ -289,7 +309,7 @@ - + Qt::Vertical @@ -299,8 +319,8 @@ - 17 - 17 + 439 + 14 diff --git a/src/gui/infopane.cpp b/src/gui/infopane.cpp index c013302..58ad304 100644 --- a/src/gui/infopane.cpp +++ b/src/gui/infopane.cpp @@ -152,6 +152,7 @@ void InfoPane::showDevice(Qt::DockWidgetArea area, const Device& d) createLabels(i18nc("@label device", "Cylinders:"), KGlobal::locale()->formatNumber(d.cylinders(), 0), cols(area), x, y); createLabels(i18nc("@label device", "Sectors:"), KGlobal::locale()->formatNumber(d.sectorsPerTrack(), 0), cols(area), x, y); createLabels(i18nc("@label device", "Logical sector size:"), Capacity(d.logicalSectorSize()).toString(Capacity::Byte, Capacity::AppendUnit), cols(area), x, y); + createLabels(i18nc("@label device", "Physical sector size:"), Capacity(d.physicalSectorSize()).toString(Capacity::Byte, Capacity::AppendUnit), cols(area), x, y); createLabels(i18nc("@label device", "Cylinder size:"), i18ncp("@label", "1 Sector", "%1 Sectors", d.cylinderSize()), cols(area), x, y); createLabels(i18nc("@label device", "Primaries/Max:"), maxPrimaries, cols(area), x, y); }