📄 pgpdiskuiexports.cpp
字号:
/*____________________________________________________________________________
Copyright (C) 2002 PGP Corporation
All rights reserved.
$Id: PGPdiskUIExports.cpp,v 1.8 2002/08/06 20:09:22 dallen Exp $
____________________________________________________________________________*/
#include "pgpClassesConfig.h"
#include "pgpPflPriv.h"
#include "CString.h"
#include "pgpDiskUI.h"
#include "CPGPdiskEngine.h"
#include "CPGPdiskChooser.h"
#include "CPGPdiskCreator.h"
#include "CPGPdiskEditor.h"
#include "CPGPdiskMounter.h"
#include "CPGPdiskUnmounter.h"
#include "..\win32\Source\CPGPdiskFormatter.h"
#include "CUISubsystems.h"
_USING_PGP
// Exported function definitions
PGPError
PGPdiskUIExport
PGPdiskAskChooseDisk(
PGPdiskContextRef context,
const char *defaultPath,
const char *title,
void *parentWnd,
char *chosenPath,
PGPSize availSize)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPValidatePtr(chosenPath);
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskChooser diskChooser;
CString path;
diskChooser.AskChoose(CPGPdiskContext(context), path, defaultPath,
title, parentWnd);
if (path.Length() + 1 > availSize)
THROW_PGPERROR(kPGPError_BufferTooSmall);
strcpy(chosenPath, path);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskAskMountDisk(
PGPdiskContextRef context,
const char *path,
void *parentWnd)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPValidatePtr(path);
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskMounter diskMounter;
diskMounter.AskMount(CPGPdiskContext(context), path, parentWnd);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskAskEditDisk(
PGPdiskContextRef context,
const char *path,
void *parentWnd)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPValidatePtr(path);
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskEditor diskEditor;
diskEditor.AskEdit(CPGPdiskContext(context), path, parentWnd);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskAskCreateNewDisk(
PGPdiskContextRef context,
const char *defaultPath,
void *parentWnd)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskCreator diskCreator;
diskCreator.AskCreate(CPGPdiskContext(context), defaultPath,
parentWnd);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskFormatNewDisk(
PGPdiskContextRef context,
const char *root,
const char *volName,
int fsType,
NewDiskStatusFuncType userCallback,
void *userValue)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskFormatter formatter;
formatter.Format(context, root, volName,
(FileSys::Type)fsType, userCallback, userValue);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskAskUnmountDisk(
PGPdiskContextRef context,
const char *pathOrRoot,
void *parentWnd,
PGPUInt32 flags)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPValidatePtr(pathOrRoot);
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskUnmounter diskUnmounter;
PGPUInt32 flags2 = CPGPdiskUnmounter::kNoFlags;
if (flags & kPGPdiskForceUnmountFlag)
flags2 |= CPGPdiskUnmounter::kForceUnmountFlag;
if (flags & kPGPdiskSilentUnmountFlag)
flags2 |= CPGPdiskUnmounter::kSilentUnmountFlag;
if (flags & kPGPdiskShutdown)
flags2 |= CPGPdiskUnmounter::kShutdown;
diskUnmounter.AskUnmount(CPGPdiskContext(context), pathOrRoot,
parentWnd, flags2);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskAskUnmountAllDisks(
PGPdiskContextRef context,
void *parentWnd,
PGPUInt32 flags)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskUnmounter diskUnmounter;
PGPUInt32 flags2 = CPGPdiskUnmounter::kNoFlags;
if (flags & kPGPdiskForceUnmountFlag)
flags2 |= CPGPdiskUnmounter::kForceUnmountFlag;
if (flags & kPGPdiskSilentUnmountFlag)
flags2 |= CPGPdiskUnmounter::kSilentUnmountFlag;
if (flags & kPGPdiskTimedOutUnmountAllFlag)
flags2 |= CPGPdiskUnmounter::kTimedOutUnmountAllFlag;
if (flags & kPGPdiskShutdown)
flags2 |= CPGPdiskUnmounter::kShutdown;
diskUnmounter.AskUnmountAll(CPGPdiskContext(context), parentWnd,
flags2);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
PGPError
PGPdiskUIExport
PGPdiskMountStartupDisks(PGPdiskContextRef context, void *parentWnd)
{
PGPValidateParam(PGPdiskContextRefIsValid(context));
PGPError error = kPGPError_NoErr;
try
{
CPGPdiskMounter diskMounter;
diskMounter.MountStartupDisks(context, parentWnd);
}
catch (CComboError& caughtErr)
{
error = caughtErr.pgpErr;
}
return error;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -