mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 14:05:42 +00:00
[USETUP]
- Add status text for logical partition entries in the partition list. - Add logical partition creation page dummy. svn path=/trunk/; revision=63570
This commit is contained in:
parent
870ba03619
commit
5d627ea750
27 changed files with 137 additions and 17 deletions
|
@ -1550,18 +1550,38 @@ SelectPartitionPage(PINPUT_RECORD Ir)
|
|||
while (TRUE)
|
||||
{
|
||||
/* Update status text */
|
||||
if (PartitionList->CurrentPartition == NULL ||
|
||||
PartitionList->CurrentPartition->IsPartitioned == FALSE)
|
||||
if (PartitionList->CurrentPartition == NULL)
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_INSTALLCREATEPARTITION));
|
||||
}
|
||||
else if (IsContainerPartition(PartitionList->CurrentPartition->PartitionType))
|
||||
else if (PartitionList->CurrentPartition->LogicalPartition)
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_DELETEPARTITION));
|
||||
if (PartitionList->CurrentPartition->IsPartitioned)
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_DELETEPARTITION));
|
||||
}
|
||||
else
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_INSTALLCREATELOGICAL));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_INSTALLDELETEPARTITION));
|
||||
if (PartitionList->CurrentPartition->IsPartitioned)
|
||||
{
|
||||
if (IsContainerPartition(PartitionList->CurrentPartition->PartitionType))
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_DELETEPARTITION));
|
||||
}
|
||||
else
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_INSTALLDELETEPARTITION));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
CONSOLE_SetStatusText(MUIGetString(STRING_INSTALLCREATEPARTITION));
|
||||
}
|
||||
}
|
||||
|
||||
CONSOLE_ConInKey(Ir);
|
||||
|
@ -1616,25 +1636,45 @@ SelectPartitionPage(PINPUT_RECORD Ir)
|
|||
}
|
||||
else if (Ir->Event.KeyEvent.wVirtualKeyCode == 'P') /* P */
|
||||
{
|
||||
Error = PrimaryPartitionCreationChecks(PartitionList);
|
||||
if (Error != NOT_AN_ERROR)
|
||||
if (PartitionList->CurrentPartition->LogicalPartition == FALSE)
|
||||
{
|
||||
MUIDisplayError(Error, Ir, POPUP_WAIT_ANY_KEY);
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
Error = PrimaryPartitionCreationChecks(PartitionList);
|
||||
if (Error != NOT_AN_ERROR)
|
||||
{
|
||||
MUIDisplayError(Error, Ir, POPUP_WAIT_ANY_KEY);
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
|
||||
return CREATE_PRIMARY_PARTITION_PAGE;
|
||||
return CREATE_PRIMARY_PARTITION_PAGE;
|
||||
}
|
||||
}
|
||||
else if (Ir->Event.KeyEvent.wVirtualKeyCode == 'E') /* E */
|
||||
{
|
||||
Error = ExtendedPartitionCreationChecks(PartitionList);
|
||||
if (Error != NOT_AN_ERROR)
|
||||
if (PartitionList->CurrentPartition->LogicalPartition == FALSE)
|
||||
{
|
||||
MUIDisplayError(Error, Ir, POPUP_WAIT_ANY_KEY);
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
Error = ExtendedPartitionCreationChecks(PartitionList);
|
||||
if (Error != NOT_AN_ERROR)
|
||||
{
|
||||
MUIDisplayError(Error, Ir, POPUP_WAIT_ANY_KEY);
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
|
||||
return CREATE_EXTENDED_PARTITION_PAGE;
|
||||
return CREATE_EXTENDED_PARTITION_PAGE;
|
||||
}
|
||||
}
|
||||
else if (Ir->Event.KeyEvent.wVirtualKeyCode == 'L') /* L */
|
||||
{
|
||||
if (PartitionList->CurrentPartition->LogicalPartition == TRUE)
|
||||
{
|
||||
Error = LogicalPartitionCreationChecks(PartitionList);
|
||||
if (Error != NOT_AN_ERROR)
|
||||
{
|
||||
MUIDisplayError(Error, Ir, POPUP_WAIT_ANY_KEY);
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
|
||||
return CREATE_LOGICAL_PARTITION_PAGE;
|
||||
}
|
||||
}
|
||||
else if (Ir->Event.KeyEvent.wVirtualKeyCode == 'D') /* D */
|
||||
{
|
||||
|
@ -2088,6 +2128,14 @@ CreateExtendedPartitionPage(PINPUT_RECORD Ir)
|
|||
}
|
||||
|
||||
|
||||
static PAGE_NUMBER
|
||||
CreateLogicalPartitionPage(PINPUT_RECORD Ir)
|
||||
{
|
||||
|
||||
return SELECT_PARTITION_PAGE;
|
||||
}
|
||||
|
||||
|
||||
static PAGE_NUMBER
|
||||
DeletePartitionPage(PINPUT_RECORD Ir)
|
||||
{
|
||||
|
@ -4029,6 +4077,10 @@ RunUSetup(VOID)
|
|||
Page = CreateExtendedPartitionPage(&Ir);
|
||||
break;
|
||||
|
||||
case CREATE_LOGICAL_PARTITION_PAGE:
|
||||
Page = CreateLogicalPartitionPage(&Ir);
|
||||
break;
|
||||
|
||||
case DELETE_PARTITION_PAGE:
|
||||
Page = DeletePartitionPage(&Ir);
|
||||
break;
|
||||
|
|
|
@ -1651,6 +1651,8 @@ MUI_STRING bgBGStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = ‘« £ ¥ C = ‘ꧤ ¢ ¥ ¤ï« F3 = ˆ§å®¤"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = ‘« £ ¥ D = ˆ§âਢ ¥ ¤ï« F3 = ˆ§å®¤"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1647,6 +1647,8 @@ MUI_STRING csCZStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Instalovat C = Vytvoýit odd¡l F3 = UkonŸit"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Instalovat D = Odstranit odd¡l F3 = UkonŸit"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1642,6 +1642,8 @@ MUI_STRING deDEStrings[] =
|
|||
" Bitte warten..."},
|
||||
{STRING_INSTALLCREATEPARTITION,
|
||||
" EINGABETASTE = Installieren P = Prim„re E = Erweiterte F3 = Installation abbr."},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" EINGABETASTE = Installieren L = Logisches Laufwerk F3 = Installation abbr."},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" EINGABETASTE = Installieren D = Partition l”schen F3 = Installation abbr."},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1663,6 +1663,8 @@ MUI_STRING elGRStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = „š¡˜«á©«˜©ž C = ƒž£ ¦¬¨šå˜ Partition F3 = €§¦®é¨ž©ž"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = „š¡˜«á©«˜©ž D = ƒ ˜š¨˜ã Partition F3 = €§¦®é¨ž©ž"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1636,6 +1636,8 @@ MUI_STRING enUSStrings[] =
|
|||
" Please wait..."},
|
||||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Install D = Delete Partition F3 = Quit"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1645,6 +1645,8 @@ MUI_STRING esESStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Instalar C = Crear Partici¢n F3 = Salir"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_DELETEPARTITION,
|
||||
" D = Borrar Partici¢n F3 = Salir"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
|
|
|
@ -1636,6 +1636,8 @@ MUI_STRING etEEStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Paigalda C = Loo partitsioon F3 = V„lju"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Paigalda D = Kustuta partitsioon F3 = V„lju"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1650,6 +1650,8 @@ MUI_STRING frFRStrings[] =
|
|||
" Veuillez patienter..."},
|
||||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTR<54>E = Installer P/E = Cr‚er Partition Primaire/<2F>tendue F3 = Quitter"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTR<54>E = Installer D = Supprimer Partition F3 = Quitter"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1638,6 +1638,8 @@ MUI_STRING heILStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = „š—<C5A1> C = –…˜ އ‰–„ F3 = <20>ˆŒ „š—<C5A1>„"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = „š—<C5A1> D = އ— އ‰–„ F3 = <20>ˆŒ „š—<C5A1>„"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1640,6 +1640,8 @@ MUI_STRING itITStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " INVIO = Installa C = Crea Partizione F3 = Esci"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" INVIO = Installa D = Rimuovi Partizione F3 = Esci"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1639,6 +1639,8 @@ MUI_STRING jaJPStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = ²Ý½Ä°Ù C = Ê߰è¼®Ý »¸¾² F3 = Á³¼"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = ²Ý½Ä°Ù D = Ê߰è¼®Ý »¸¼Þ® F3 = Á³¼"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1647,6 +1647,8 @@ MUI_STRING ltLTStrings[] =
|
|||
" Please wait..."},
|
||||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Install D = Delete Partition F3 = Quit"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1684,6 +1684,8 @@ MUI_STRING nlNLStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Installeren C = Partitie aanmaken F3 = Afsluiten"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Installeren D = Partitie verwijderen F3 = Afsluiten"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1648,6 +1648,8 @@ MUI_STRING plPLStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Instalacja C = Utworzenie Partycji F3 = Wyj˜cie"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Instalacja D = Skasowanie Partycji F3 = Wyj˜cie"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1675,6 +1675,8 @@ MUI_STRING ptBRStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER=Instalar C=Criar parti‡Æo F3=Sair"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER=Instalar D=Apagar parti‡Æo F3=Sair"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1716,6 +1716,8 @@ MUI_STRING roROStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Instalare C = Creare partiîie F3 = Ieire"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Instalare D = ¸tergere partiîie F3 = Ieire"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1640,6 +1640,8 @@ MUI_STRING ruRUStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = “áâ ®¢¨âì C = ‘®§¤ âì à §¤¥« F3 = ‚ë室"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = “áâ ®¢¨âì D = “¤ «¨âì à §¤¥« F3 = ‚ë室"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1650,6 +1650,8 @@ MUI_STRING skSKStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Inçtalovaœ C = Vytvoriœ oblasœ F3 = SkonŸiœ"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Inçtalovaœ D = Odstr niœ oblasœ F3 = SkonŸiœ"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1642,6 +1642,8 @@ MUI_STRING sqALStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Instalo C = Krijo Particion F3 = Dil"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Instalo D = Fshi Particion F3 = Dil"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1645,6 +1645,8 @@ MUI_STRING svSEStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = Installera C = Skapa Partition F3 = Avsluta"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = Installera D = Ta bort Partition F3 = Avsluta"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1613,6 +1613,8 @@ MUI_STRING trTRStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " GiriŸ = Kur C = B”l<E2809D>m OluŸtur F3 = €<>k<EFBFBD>Ÿ"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" GiriŸ = Kur D = B”l<E2809D>m<EFBFBD> Sil F3 = €<>k<EFBFBD>Ÿ"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -1645,6 +1645,8 @@ MUI_STRING ukUAStrings[] =
|
|||
{STRING_INSTALLCREATEPARTITION,
|
||||
" ENTER = Install P = Create Primary E = Create Extended F3 = Quit"},
|
||||
// " ENTER = ‚áâ ®¢¨â¨ C = ‘⢮à¨â¨ <20>®§¤i« F3 = ‚¨©â¨"},
|
||||
{STRING_INSTALLCREATELOGICAL,
|
||||
" ENTER = Install L = Create Logical Partition F3 = Quit"},
|
||||
{STRING_INSTALLDELETEPARTITION,
|
||||
" ENTER = ‚áâ ®¢¨â¨ D = ‚¨¤ «¨â¨ <20>®§¤i« F3 = ‚¨©â¨"},
|
||||
{STRING_DELETEPARTITION,
|
||||
|
|
|
@ -99,6 +99,7 @@ MUIGetString(
|
|||
|
||||
#define STRING_PLEASEWAIT 1
|
||||
#define STRING_INSTALLCREATEPARTITION 2
|
||||
#define STRING_INSTALLCREATELOGICAL 60
|
||||
#define STRING_INSTALLDELETEPARTITION 3
|
||||
#define STRING_DELETEPARTITION 59
|
||||
#define STRING_PARTITIONSIZE 4
|
||||
|
|
|
@ -3088,4 +3088,22 @@ ExtendedPartitionCreationChecks(
|
|||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
ULONG
|
||||
LogicalPartitionCreationChecks(
|
||||
IN PPARTLIST List)
|
||||
{
|
||||
// PDISKENTRY DiskEntry;
|
||||
PPARTENTRY PartEntry;
|
||||
|
||||
// DiskEntry = List->CurrentDisk;
|
||||
PartEntry = List->CurrentPartition;
|
||||
|
||||
/* Fail if partition is already in use */
|
||||
if (PartEntry->IsPartitioned == TRUE)
|
||||
return ERROR_NEW_PARTITION;
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -254,4 +254,8 @@ ULONG
|
|||
ExtendedPartitionCreationChecks(
|
||||
IN PPARTLIST List);
|
||||
|
||||
ULONG
|
||||
LogicalPartitionCreationChecks(
|
||||
IN PPARTLIST List);
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -130,6 +130,7 @@ typedef enum _PAGE_NUMBER
|
|||
SELECT_PARTITION_PAGE,
|
||||
CREATE_PRIMARY_PARTITION_PAGE,
|
||||
CREATE_EXTENDED_PARTITION_PAGE,
|
||||
CREATE_LOGICAL_PARTITION_PAGE,
|
||||
DELETE_PARTITION_PAGE,
|
||||
|
||||
SELECT_FILE_SYSTEM_PAGE,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue