diff --git a/headers/os/storage/DiskDeviceDefs.h b/headers/os/storage/DiskDeviceDefs.h index f9a0e39588..7b721fc364 100644 --- a/headers/os/storage/DiskDeviceDefs.h +++ b/headers/os/storage/DiskDeviceDefs.h @@ -148,6 +148,13 @@ enum { B_DISK_DEVICE_JOB_CAN_PAUSE = 0x08, }; +enum B_PARAMETER_EDITOR_TYPE { + B_CREATE_PARAMETER_EDITOR = 0x01, + B_INITIALIZE_PARAMETER_EDITOR = 0x04, + B_DELETE_PARAMETER_EDITOR = 0x08, + B_PROPERTIES_PARAMETER_EDITOR = 0x10 +}; + // string length constants, all of which include the NULL terminator #define B_DISK_DEVICE_TYPE_LENGTH B_FILE_NAME_LENGTH #define B_DISK_DEVICE_NAME_LENGTH B_FILE_NAME_LENGTH diff --git a/headers/private/storage/DiskSystemAddOn.h b/headers/private/storage/DiskSystemAddOn.h index 5e8607d825..7d773fba78 100644 --- a/headers/private/storage/DiskSystemAddOn.h +++ b/headers/private/storage/DiskSystemAddOn.h @@ -5,6 +5,7 @@ #ifndef _DISK_SYSTEM_ADD_ON_H #define _DISK_SYSTEM_ADD_ON_H +#include #include #include @@ -31,9 +32,6 @@ public: virtual bool CanInitialize( const BMutablePartition* partition); - virtual status_t GetInitializationParameterEditor( - const BMutablePartition* partition, - BPartitionParameterEditor** editor); virtual status_t ValidateInitialize( const BMutablePartition* partition, BString* name, const char* parameters); @@ -41,6 +39,9 @@ public: const char* name, const char* parameters, BPartitionHandle** handle); + virtual status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor); virtual status_t GetTypeForContentType(const char* contentType, BString* type); virtual bool IsSubSystemFor(const BMutablePartition* child); @@ -108,9 +109,7 @@ public: virtual status_t GetContentParameterEditor( BPartitionParameterEditor** editor); - virtual status_t GetParameterEditor( - const BMutablePartition* child, - BPartitionParameterEditor** editor); + virtual status_t ValidateSetContentParameters( const char* parameters); virtual status_t ValidateSetParameters( @@ -120,8 +119,8 @@ public: virtual status_t SetParameters(BMutablePartition* child, const char* parameters); - virtual status_t GetChildCreationParameterEditor( - const char* type, + virtual status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor); virtual status_t ValidateCreateChild(off_t* offset, off_t* size, const char* type, diff --git a/src/kits/storage/disk_device/DiskSystemAddOnManager.h b/headers/private/storage/DiskSystemAddOnManager.h similarity index 100% rename from src/kits/storage/disk_device/DiskSystemAddOnManager.h rename to headers/private/storage/DiskSystemAddOnManager.h diff --git a/headers/private/storage/Partition.h b/headers/private/storage/Partition.h index 204e36707e..b0dfa6bc33 100644 --- a/headers/private/storage/Partition.h +++ b/headers/private/storage/Partition.h @@ -3,6 +3,7 @@ * Copyright 2003, Tyler Akidau, haiku@akidau.net. * Distributed under the terms of the MIT License. */ + #ifndef _PARTITION_H #define _PARTITION_H @@ -129,13 +130,12 @@ public: bool CanEditParameters() const; status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor); status_t SetParameters(const char* parameters); bool CanEditContentParameters( bool* whileMounted = NULL) const; - status_t GetContentParameterEditor( - BPartitionParameterEditor** editor); status_t SetContentParameters(const char* parameters); status_t GetNextSupportedType(int32 *cookie, @@ -151,9 +151,6 @@ public: bool IsSubSystem(const char* diskSystem) const; bool CanInitialize(const char* diskSystem) const; - status_t GetInitializationParameterEditor( - const char* system, - BPartitionParameterEditor** editor) const; status_t ValidateInitialize(const char* diskSystem, BString* name, const char* parameters); status_t Initialize(const char* diskSystem, @@ -163,9 +160,6 @@ public: // Modification of child partitions bool CanCreateChild() const; - status_t GetChildCreationParameterEditor( - const char* type, - BPartitionParameterEditor** editor) const; status_t ValidateCreateChild(off_t* start, off_t* size, const char* type, BString* name, const char* parameters) const; diff --git a/src/add-ons/disk_systems/bfs/BFSAddOn.cpp b/src/add-ons/disk_systems/bfs/BFSAddOn.cpp index db072b9eb5..9804dde5e8 100644 --- a/src/add-ons/disk_systems/bfs/BFSAddOn.cpp +++ b/src/add-ons/disk_systems/bfs/BFSAddOn.cpp @@ -95,21 +95,6 @@ BFSAddOn::CanInitialize(const BMutablePartition* partition) } -status_t -BFSAddOn::GetInitializationParameterEditor(const BMutablePartition* partition, - BPartitionParameterEditor** editor) -{ - *editor = NULL; - - try { - *editor = new InitializeBFSEditor(); - } catch (std::bad_alloc) { - return B_NO_MEMORY; - } - return B_OK; -} - - status_t BFSAddOn::ValidateInitialize(const BMutablePartition* partition, BString* name, const char* parameterString) @@ -173,6 +158,23 @@ BFSAddOn::Initialize(BMutablePartition* partition, const char* name, } +status_t +BFSAddOn::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor) +{ + *editor = NULL; + if (type == B_INITIALIZE_PARAMETER_EDITOR) { + try { + *editor = new InitializeBFSEditor(); + } catch (std::bad_alloc) { + return B_NO_MEMORY; + } + return B_OK; + } + return B_NOT_SUPPORTED; +} + + // #pragma mark - BFSPartitionHandle diff --git a/src/add-ons/disk_systems/bfs/BFSAddOn.h b/src/add-ons/disk_systems/bfs/BFSAddOn.h index f7a8a09e0e..252c0dafbe 100644 --- a/src/add-ons/disk_systems/bfs/BFSAddOn.h +++ b/src/add-ons/disk_systems/bfs/BFSAddOn.h @@ -16,12 +16,12 @@ public: virtual status_t CreatePartitionHandle( BMutablePartition* partition, BPartitionHandle** handle); + virtual status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor); virtual bool CanInitialize( const BMutablePartition* partition); - virtual status_t GetInitializationParameterEditor( - const BMutablePartition* partition, - BPartitionParameterEditor** editor); virtual status_t ValidateInitialize( const BMutablePartition* partition, BString* name, const char* parameters); diff --git a/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.cpp b/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.cpp index e7ddb23d43..3145d8cc99 100644 --- a/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.cpp +++ b/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.cpp @@ -97,16 +97,6 @@ ExtendedPartitionAddOn::CanInitialize(const BMutablePartition* partition) } -status_t -ExtendedPartitionAddOn::GetInitializationParameterEditor( - const BMutablePartition* partition, BPartitionParameterEditor** editor) -{ - // Nothing to edit, really. - *editor = NULL; - return B_OK; -} - - status_t ExtendedPartitionAddOn::ValidateInitialize(const BMutablePartition* partition, BString* name, const char* parameters) @@ -317,11 +307,11 @@ ExtendedPartitionHandle::GetPartitioningInfo(BPartitioningInfo* info) status_t -ExtendedPartitionHandle::GetChildCreationParameterEditor(const char* type, +ExtendedPartitionHandle::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor) { *editor = NULL; - return B_OK; + return B_NOT_SUPPORTED; } diff --git a/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.h b/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.h index 99551a084b..6691e323c0 100644 --- a/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.h +++ b/src/add-ons/disk_systems/intel/ExtendedPartitionAddOn.h @@ -21,9 +21,6 @@ public: virtual bool CanInitialize( const BMutablePartition* partition); - virtual status_t GetInitializationParameterEditor( - const BMutablePartition* partition, - BPartitionParameterEditor** editor); virtual status_t ValidateInitialize( const BMutablePartition* partition, BString* name, const char* parameters); @@ -52,8 +49,8 @@ public: virtual status_t GetPartitioningInfo(BPartitioningInfo* info); - virtual status_t GetChildCreationParameterEditor( - const char* type, + virtual status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor); virtual status_t ValidateCreateChild(off_t* offset, off_t* size, const char* type, diff --git a/src/add-ons/disk_systems/intel/PartitionMapAddOn.cpp b/src/add-ons/disk_systems/intel/PartitionMapAddOn.cpp index 694a003fdf..4840af16e2 100644 --- a/src/add-ons/disk_systems/intel/PartitionMapAddOn.cpp +++ b/src/add-ons/disk_systems/intel/PartitionMapAddOn.cpp @@ -302,17 +302,19 @@ PartitionMapHandle::GetPartitioningInfo(BPartitioningInfo* info) status_t -PartitionMapHandle::GetChildCreationParameterEditor(const char* type, +PartitionMapHandle::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor) { *editor = NULL; - - try { - *editor = new PrimaryPartitionEditor(); - } catch (std::bad_alloc) { - return B_NO_MEMORY; + if (type == B_CREATE_PARAMETER_EDITOR) { + try { + *editor = new PrimaryPartitionEditor(); + } catch (std::bad_alloc) { + return B_NO_MEMORY; + } + return B_OK; } - return B_OK; + return B_NOT_SUPPORTED; } diff --git a/src/add-ons/disk_systems/intel/PartitionMapAddOn.h b/src/add-ons/disk_systems/intel/PartitionMapAddOn.h index 098849e87f..ecd3ea283f 100644 --- a/src/add-ons/disk_systems/intel/PartitionMapAddOn.h +++ b/src/add-ons/disk_systems/intel/PartitionMapAddOn.h @@ -52,8 +52,8 @@ public: virtual status_t GetPartitioningInfo(BPartitioningInfo* info); - virtual status_t GetChildCreationParameterEditor( - const char* type, + virtual status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor); virtual status_t ValidateCreateChild(off_t* offset, off_t* size, const char* type, diff --git a/src/apps/drivesetup/CreateParamsPanel.cpp b/src/apps/drivesetup/CreateParamsPanel.cpp index cab043b89c..d4bc6baaf2 100644 --- a/src/apps/drivesetup/CreateParamsPanel.cpp +++ b/src/apps/drivesetup/CreateParamsPanel.cpp @@ -265,9 +265,11 @@ CreateParamsPanel::_CreateViewControls(BPartition* parent, off_t offset, ) ); - parent->GetChildCreationParameterEditor(NULL, &fEditor); - if (fEditor) + status_t err = parent->GetParameterEditor(B_CREATE_PARAMETER_EDITOR, &fEditor); + if (err == B_OK && fEditor != NULL) AddChild(fEditor->View()); + else + fEditor = NULL; BButton* okButton = new BButton(B_TRANSLATE("Create"), new BMessage(MSG_OK)); @@ -281,3 +283,4 @@ CreateParamsPanel::_CreateViewControls(BPartition* parent, off_t offset, AddToSubset(fWindow); layout->View()->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); } + diff --git a/src/apps/drivesetup/InitParamsPanel.cpp b/src/apps/drivesetup/InitParamsPanel.cpp index 566716e72e..0a5dddbf63 100644 --- a/src/apps/drivesetup/InitParamsPanel.cpp +++ b/src/apps/drivesetup/InitParamsPanel.cpp @@ -16,6 +16,8 @@ #include #include #include +#include +#include #include #include #include @@ -96,9 +98,21 @@ InitParamsPanel::InitParamsPanel(BWindow* window, const BString& diskSystem, fOkButton = new BButton(B_TRANSLATE("Initialize"), new BMessage(MSG_OK)); - partition->GetInitializationParameterEditor(diskSystem.String(), - &fEditor); + DiskSystemAddOnManager* manager = DiskSystemAddOnManager::Default(); + BDiskSystemAddOn* addOn = manager->GetAddOn(diskSystem); + if (addOn) { + // put the add-on + manager->PutAddOn(addOn); + status_t err = addOn->GetParameterEditor(B_INITIALIZE_PARAMETER_EDITOR, &fEditor); + if (err != B_OK) { + fEditor = NULL; + } + } else { + fEditor = NULL; + } + + // TODO: fEditor should be checked for NULL before adding. SetLayout(new BGroupLayout(B_HORIZONTAL)); const float spacing = be_control_look->DefaultItemSpacing(); AddChild(BGroupLayoutBuilder(B_VERTICAL, spacing) @@ -198,6 +212,9 @@ InitParamsPanel::Go(BString& name, BString& parameters) if (!Lock()) return GO_CANCELED; + if (fEditor == NULL) + fReturnValue = B_BAD_VALUE; + if (fReturnValue == GO_SUCCESS) { if (fEditor->FinishedEditing()) { status_t err = fEditor->GetParameters(¶meters); diff --git a/src/apps/drivesetup/MainWindow.cpp b/src/apps/drivesetup/MainWindow.cpp index c08e94d47a..20ee632a92 100644 --- a/src/apps/drivesetup/MainWindow.cpp +++ b/src/apps/drivesetup/MainWindow.cpp @@ -575,9 +575,13 @@ MainWindow::_UpdateMenus(BDiskDevice* disk, // Mount items if (partition) { + BDiskSystem partitionDiskSystem; + partition->GetDiskSystem(&partitionDiskSystem); fInitMenu->SetEnabled(!partition->IsMounted() && !partition->IsReadOnly() - && partition->Device()->HasMedia()); + && partition->Device()->HasMedia() + // Check if the current disk system allows initialzation. + && partition->CanInitialize(partitionDiskSystem.PrettyName())); fDeleteMI->SetEnabled(!partition->IsMounted() && !partition->IsDevice()); diff --git a/src/apps/drivesetup/PartitionList.cpp b/src/apps/drivesetup/PartitionList.cpp index 4bd6b6f12c..1fbd746a06 100644 --- a/src/apps/drivesetup/PartitionList.cpp +++ b/src/apps/drivesetup/PartitionList.cpp @@ -221,7 +221,10 @@ PartitionListRow::PartitionListRow(BPartition* partition) SetField(new BStringField(kUnavailableString), kFilesystemColumn); SetField(new BStringField(kUnavailableString), kVolumeNameColumn); } else { - SetField(new BStringField(partition->Type()), kFilesystemColumn); + if (partition->ContainsFileSystem()) + SetField(new BStringField(partition->Type()), kFilesystemColumn); + else + SetField(new BStringField(kUnavailableString), kFilesystemColumn); SetField(new BStringField(kUnavailableString), kVolumeNameColumn); } diff --git a/src/kits/storage/disk_device/DiskDevice.cpp b/src/kits/storage/disk_device/DiskDevice.cpp index 10fda6c266..e3bd92aa3b 100644 --- a/src/kits/storage/disk_device/DiskDevice.cpp +++ b/src/kits/storage/disk_device/DiskDevice.cpp @@ -26,7 +26,7 @@ #include "DiskDeviceJob.h" #include "DiskDeviceJobGenerator.h" #include "DiskDeviceJobQueue.h" -#include "DiskSystemAddOnManager.h" +#include //#define TRACE_DISK_DEVICE diff --git a/src/kits/storage/disk_device/DiskSystemAddOn.cpp b/src/kits/storage/disk_device/DiskSystemAddOn.cpp index 89cc7ec8d0..3b8e868c77 100644 --- a/src/kits/storage/disk_device/DiskSystemAddOn.cpp +++ b/src/kits/storage/disk_device/DiskSystemAddOn.cpp @@ -5,6 +5,7 @@ #include +#include #include @@ -51,8 +52,8 @@ BDiskSystemAddOn::CanInitialize(const BMutablePartition* partition) // GetInitializationParameterEditor status_t -BDiskSystemAddOn::GetInitializationParameterEditor( - const BMutablePartition* partition, BPartitionParameterEditor** editor) +BDiskSystemAddOn::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor) { return B_NOT_SUPPORTED; } @@ -305,7 +306,7 @@ BPartitionHandle::GetContentParameterEditor(BPartitionParameterEditor** editor) // GetParameterEditor status_t -BPartitionHandle::GetParameterEditor(const BMutablePartition* child, +BPartitionHandle::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor) { return B_NOT_SUPPORTED; @@ -346,15 +347,6 @@ BPartitionHandle::SetParameters(BMutablePartition* child, } -// GetChildCreationParameterEditor -status_t -BPartitionHandle::GetChildCreationParameterEditor(const char* type, - BPartitionParameterEditor** editor) -{ - return B_NOT_SUPPORTED; -} - - // ValidateCreateChild status_t BPartitionHandle::ValidateCreateChild(off_t* offset, off_t* size, diff --git a/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp b/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp index e6ec607506..82247914ba 100644 --- a/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp +++ b/src/kits/storage/disk_device/DiskSystemAddOnManager.cpp @@ -3,7 +3,7 @@ * Distributed under the terms of the MIT License. */ -#include "DiskSystemAddOnManager.h" +#include #include #include diff --git a/src/kits/storage/disk_device/Partition.cpp b/src/kits/storage/disk_device/Partition.cpp index 37029acd03..a711c38af9 100644 --- a/src/kits/storage/disk_device/Partition.cpp +++ b/src/kits/storage/disk_device/Partition.cpp @@ -1083,13 +1083,13 @@ BPartition::CanEditParameters() const // GetParameterEditor status_t -BPartition::GetParameterEditor(BPartitionParameterEditor** editor) +BPartition::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor) { - BPartition* parent = Parent(); - if (!parent || !fDelegate) + if (!fDelegate) return B_NO_INIT; - return parent->fDelegate->GetParameterEditor(fDelegate, editor); + return fDelegate->GetParameterEditor(type, editor); } @@ -1115,17 +1115,6 @@ BPartition::CanEditContentParameters(bool* whileMounted) const } -// GetContentParameterEditor -status_t -BPartition::GetContentParameterEditor(BPartitionParameterEditor** editor) -{ - if (!fDelegate) - return B_NO_INIT; - - return fDelegate->GetContentParameterEditor(editor); -} - - // SetContentParameters status_t BPartition::SetContentParameters(const char* parameters) @@ -1190,18 +1179,6 @@ BPartition::CanInitialize(const char* diskSystem) const } -// GetInitializationParameterEditor -status_t -BPartition::GetInitializationParameterEditor(const char* diskSystem, - BPartitionParameterEditor** editor) const -{ - if (!fDelegate) - return B_NO_INIT; - - return fDelegate->GetInitializationParameterEditor(diskSystem, editor); -} - - // ValidateInitialize status_t BPartition::ValidateInitialize(const char* diskSystem, BString* name, @@ -1243,18 +1220,6 @@ BPartition::CanCreateChild() const } -// GetChildCreationParameterEditor -status_t -BPartition::GetChildCreationParameterEditor(const char* type, - BPartitionParameterEditor** editor) const -{ - if (!fDelegate) - return B_NO_INIT; - - return fDelegate->GetChildCreationParameterEditor(type, editor); -} - - // ValidateCreateChild status_t BPartition::ValidateCreateChild(off_t* offset, off_t* size, const char* type, diff --git a/src/kits/storage/disk_device/PartitionDelegate.cpp b/src/kits/storage/disk_device/PartitionDelegate.cpp index 1ab862f775..2dbc4be8bd 100644 --- a/src/kits/storage/disk_device/PartitionDelegate.cpp +++ b/src/kits/storage/disk_device/PartitionDelegate.cpp @@ -8,9 +8,7 @@ #include #include - -#include "DiskSystemAddOnManager.h" - +#include //#define TRACE_PARTITION_DELEGATE #undef TRACE @@ -336,31 +334,6 @@ BPartition::Delegate::SetType(Delegate* child, const char* type) } -// GetContentParameterEditor -status_t -BPartition::Delegate::GetContentParameterEditor( - BPartitionParameterEditor** editor) const -{ - if (!fPartitionHandle) - return B_NO_INIT; - - return fPartitionHandle->GetContentParameterEditor(editor); -} - - -// GetParameterEditor -status_t -BPartition::Delegate::GetParameterEditor(Delegate* child, - BPartitionParameterEditor** editor) const -{ - if (!fPartitionHandle || !child) - return B_NO_INIT; - - return fPartitionHandle->GetParameterEditor(&child->fMutablePartition, - editor); -} - - // SetContentParameters status_t BPartition::Delegate::SetContentParameters(const char* parameters) @@ -425,6 +398,12 @@ BPartition::Delegate::IsSubSystem(Delegate* child, const char* diskSystem) const bool BPartition::Delegate::CanInitialize(const char* diskSystem) const { + // HACK TO HELP BLANK PARTITION'S BECOME INITIALIZED. + if (diskSystem == NULL) + return true; + if (strlen(diskSystem) < 1) + return true; + // get the disk system add-on DiskSystemAddOnManager* manager = DiskSystemAddOnManager::Default(); BDiskSystemAddOn* addOn = manager->GetAddOn(diskSystem); @@ -440,27 +419,6 @@ BPartition::Delegate::CanInitialize(const char* diskSystem) const } -// GetInitializationParameterEditor -status_t -BPartition::Delegate::GetInitializationParameterEditor( - const char* diskSystem, BPartitionParameterEditor** editor) const -{ - // get the disk system add-on - DiskSystemAddOnManager* manager = DiskSystemAddOnManager::Default(); - BDiskSystemAddOn* addOn = manager->GetAddOn(diskSystem); - if (!addOn) - return B_ENTRY_NOT_FOUND; - - status_t result = addOn->GetInitializationParameterEditor( - &fMutablePartition, editor); - - // put the add-on - manager->PutAddOn(addOn); - - return result; -} - - // ValidateInitialize status_t BPartition::Delegate::ValidateInitialize(const char* diskSystem, @@ -537,15 +495,15 @@ BPartition::Delegate::GetPartitioningInfo(BPartitioningInfo* info) } -// GetChildCreationParameterEditor +// GetParameterEditor status_t -BPartition::Delegate::GetChildCreationParameterEditor(const char* type, +BPartition::Delegate::GetParameterEditor(B_PARAMETER_EDITOR_TYPE type, BPartitionParameterEditor** editor) const { if (!fPartitionHandle) return B_NO_INIT; - return fPartitionHandle->GetChildCreationParameterEditor(type, editor); + return fPartitionHandle->GetParameterEditor(type, editor); } diff --git a/src/kits/storage/disk_device/PartitionDelegate.h b/src/kits/storage/disk_device/PartitionDelegate.h index 92fba1166b..0fb13bbae8 100644 --- a/src/kits/storage/disk_device/PartitionDelegate.h +++ b/src/kits/storage/disk_device/PartitionDelegate.h @@ -5,6 +5,7 @@ #ifndef _PARTITION_DELEGATE_H #define _PARTITION_DELEGATE_H +#include #include #include @@ -66,23 +67,19 @@ public: const char* type) const; status_t SetType(Delegate* child, const char* type); - status_t GetContentParameterEditor( - BPartitionParameterEditor** editor) const; - status_t GetParameterEditor(Delegate* child, - BPartitionParameterEditor** editor) const; status_t SetContentParameters(const char* parameters); status_t SetParameters(Delegate* child, const char* parameters); + status_t GetParameterEditor( + B_PARAMETER_EDITOR_TYPE type, + BPartitionParameterEditor** editor) const; status_t GetNextSupportedChildType(Delegate* child, int32 *cookie, BString* type) const; bool IsSubSystem(Delegate* child, const char* diskSystem) const; bool CanInitialize(const char* diskSystem) const; - status_t GetInitializationParameterEditor( - const char* system, - BPartitionParameterEditor** editor) const; status_t ValidateInitialize(const char* diskSystem, BString* name, const char* parameters); status_t Initialize(const char* diskSystem, @@ -94,9 +91,6 @@ public: status_t GetPartitioningInfo(BPartitioningInfo* info); - status_t GetChildCreationParameterEditor( - const char* system, - BPartitionParameterEditor** editor) const; status_t ValidateCreateChild(off_t* start, off_t* size, const char* type, BString* name, const char* parameters) const; @@ -118,3 +112,4 @@ private: #endif // _PARTITION_DELEGATE_H + diff --git a/src/kits/storage/disk_device/PartitionParameterEditor.cpp b/src/kits/storage/disk_device/PartitionParameterEditor.cpp index abd7591c34..6c6a80627d 100644 --- a/src/kits/storage/disk_device/PartitionParameterEditor.cpp +++ b/src/kits/storage/disk_device/PartitionParameterEditor.cpp @@ -54,7 +54,7 @@ BPartitionParameterEditor::View() bool BPartitionParameterEditor::FinishedEditing() { - return true; + return false; } @@ -89,7 +89,7 @@ BPartitionParameterEditor::GetParameters(BString* parameters) status_t BPartitionParameterEditor::PartitionTypeChanged(const char* type) { - return B_OK; + return B_NOT_SUPPORTED; } @@ -105,5 +105,6 @@ BPartitionParameterEditor::PartitionTypeChanged(const char* type) status_t BPartitionParameterEditor::PartitionNameChanged(const char* name) { - return B_OK; + return B_NOT_SUPPORTED; } +