- implement AutoPartioning

- set AutoPartition = 1 if you want unattended setup to create one partition with maximum size of disk

svn path=/trunk/; revision=28613
This commit is contained in:
Johannes Anderwald 2007-08-27 20:03:06 +00:00
parent 415b655dfe
commit 3a6d290604

View file

@ -1394,13 +1394,21 @@ SelectPartitionPage(PINPUT_RECORD Ir)
if (IsUnattendedSetup)
{
if (SelectPartition(PartitionList, UnattendDestinationDiskNumber, UnattendDestinationPartitionNumber))
if (!SelectPartition(PartitionList, UnattendDestinationDiskNumber, UnattendDestinationPartitionNumber))
{
return(SELECT_FILE_SYSTEM_PAGE);
if (AutoPartition)
{
PPARTENTRY PartEntry = PartEntry = PartitionList->CurrentPartition;
ULONG MaxSize = (PartEntry->UnpartitionedLength + (1 << 19)) >> 20; /* in MBytes (rounded) */
CreateNewPartition (PartitionList,
MaxSize,
TRUE);
return (SELECT_FILE_SYSTEM_PAGE);
}
}
else
{
return (CREATE_PARTITION_PAGE);
return(SELECT_FILE_SYSTEM_PAGE);
}
}
@ -1706,17 +1714,9 @@ CreatePartitionPage (PINPUT_RECORD Ir)
while (TRUE)
{
MaxSize = (PartEntry->UnpartitionedLength + (1 << 19)) >> 20; /* in MBytes (rounded) */
if (!IsUnattendedSetup || !AutoPartition)
{
ShowPartitionSizeInputBox (12, 14, xScreen - 12, 17, /* left, top, right, bottom */
ShowPartitionSizeInputBox (12, 14, xScreen - 12, 17, /* left, top, right, bottom */
MaxSize, InputBuffer, &Quit, &Cancel);
}
else
{
Quit = FALSE;
Cancel = FALSE;
}
if (Quit == TRUE)
if (Quit == TRUE)
{
if (ConfirmQuit (Ir) == TRUE)
{
@ -1729,7 +1729,7 @@ CreatePartitionPage (PINPUT_RECORD Ir)
}
else
{
PartSize = atoi (InputBuffer);
PartSize = atoi (InputBuffer);
if (PartSize < 1)
{
/* Too small */