- implement an AutoPartition setting in usetup (needs to be tested though yet)

svn path=/trunk/; revision=28605
This commit is contained in:
Johannes Anderwald 2007-08-27 18:40:02 +00:00
parent abcc833c45
commit 98a0698dc8

View file

@ -80,6 +80,7 @@ LONG UnattendDestinationDiskNumber;
LONG UnattendDestinationPartitionNumber; LONG UnattendDestinationPartitionNumber;
LONG UnattendMBRInstallType = -1; LONG UnattendMBRInstallType = -1;
LONG UnattendFormatPartition = 0; LONG UnattendFormatPartition = 0;
LONG AutoPartition = 0;
WCHAR UnattendInstallationDirectory[MAX_PATH]; WCHAR UnattendInstallationDirectory[MAX_PATH];
BOOLEAN RepairUpdateFlag = FALSE; BOOLEAN RepairUpdateFlag = FALSE;
@ -578,7 +579,13 @@ CheckUnattendedSetup(VOID)
UnattendFormatPartition = IntValue; UnattendFormatPartition = IntValue;
} }
} }
if (SetupFindFirstLineW(UnattendInf, L"Unattend", L"AutoPartition", &Context))
{
if (SetupGetIntField(&Context, 1, &IntValue))
{
AutoPartition = IntValue;
}
}
SetupCloseInfFile(UnattendInf); SetupCloseInfFile(UnattendInf);
DPRINT("Running unattended setup\n"); DPRINT("Running unattended setup\n");
@ -1391,6 +1398,10 @@ SelectPartitionPage(PINPUT_RECORD Ir)
{ {
return(SELECT_FILE_SYSTEM_PAGE); return(SELECT_FILE_SYSTEM_PAGE);
} }
else
{
return (CREATE_PARTITION_PAGE);
}
} }
while(TRUE) while(TRUE)
@ -1695,21 +1706,29 @@ CreatePartitionPage (PINPUT_RECORD Ir)
while (TRUE) while (TRUE)
{ {
MaxSize = (PartEntry->UnpartitionedLength + (1 << 19)) >> 20; /* in MBytes (rounded) */ MaxSize = (PartEntry->UnpartitionedLength + (1 << 19)) >> 20; /* in MBytes (rounded) */
ShowPartitionSizeInputBox (12, 14, xScreen - 12, 17, /* left, top, right, bottom */ if (!IsUnattendedSetup || !AutoPartition)
{
ShowPartitionSizeInputBox (12, 14, xScreen - 12, 17, /* left, top, right, bottom */
MaxSize, InputBuffer, &Quit, &Cancel); MaxSize, InputBuffer, &Quit, &Cancel);
if (Quit == TRUE) }
{
if (ConfirmQuit (Ir) == TRUE)
{
return QUIT_PAGE;
}
}
else if (Cancel == TRUE)
{
return SELECT_PARTITION_PAGE;
}
else else
{ {
Quit = FALSE;
Cancel = FALSE;
}
if (Quit == TRUE)
{
if (ConfirmQuit (Ir) == TRUE)
{
return QUIT_PAGE;
}
}
else if (Cancel == TRUE)
{
return SELECT_PARTITION_PAGE;
}
else
{
PartSize = atoi (InputBuffer); PartSize = atoi (InputBuffer);
if (PartSize < 1) if (PartSize < 1)
{ {