You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.5 KiB
72 lines
2.5 KiB
/* |
|
Implementation of GPTData class derivative with basic text-mode interaction |
|
Copyright (C) 2010-2013 Roderick W. Smith |
|
|
|
This program is free software; you can redistribute it and/or modify |
|
it under the terms of the GNU General Public License as published by |
|
the Free Software Foundation; either version 2 of the License, or |
|
(at your option) any later version. |
|
|
|
This program is distributed in the hope that it will be useful, |
|
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
GNU General Public License for more details. |
|
|
|
You should have received a copy of the GNU General Public License along |
|
with this program; if not, write to the Free Software Foundation, Inc., |
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
|
|
|
*/ |
|
|
|
#ifndef __GPTDATATEXT_H |
|
#define __GPTDATATEXT_H |
|
|
|
#include "gpt.h" |
|
|
|
using namespace std; |
|
|
|
class GPTDataTextUI : public GPTData { |
|
protected: |
|
public: |
|
GPTDataTextUI(void); |
|
GPTDataTextUI(string filename); |
|
~GPTDataTextUI(void); |
|
|
|
// This one needs to be explicitly defined, even though it does nothing new.... |
|
// const GPTPart & operator[](uint32_t partNum) {return GPTData::operator[](partNum);} |
|
|
|
// Extended (interactive) versions of some base-class functions |
|
WhichToUse UseWhichPartitions(void); |
|
int XFormDisklabel(void); |
|
|
|
// Request information from the user (& possibly do something with it) |
|
uint32_t GetPartNum(void); |
|
void ResizePartitionTable(void); |
|
void CreatePartition(void); |
|
void DeletePartition(void); |
|
void ChangePartType(void); |
|
void ChangeUniqueGuid(void); |
|
void SetAttributes(uint32_t partNum); |
|
int SetName(uint32_t partNum); |
|
int SwapPartitions(void); |
|
int DestroyGPTwPrompt(void); // Returns 1 if user proceeds |
|
void ShowDetails(void); |
|
void MakeHybrid(void); |
|
int XFormToMBR(void); // convert GPT to MBR, wiping GPT afterwards. Returns 1 if successful |
|
|
|
// An informational function.... |
|
void WarnAboutIffyMBRPart(int partNum); |
|
|
|
// Main menu functions |
|
void MainMenu(string filename); |
|
void ShowCommands(void); |
|
void ExpertsMenu(string filename); |
|
void ShowExpertCommands(void); |
|
void RecoveryMenu(string filename); |
|
void ShowRecoveryCommands(void); |
|
}; // class GPTDataTextUI |
|
|
|
int GetMBRTypeCode(int defType); |
|
UnicodeString ReadUString(void); |
|
|
|
#endif // __GPTDATATEXT_H
|
|
|