3 * Copyright (C) 2004 ReactOS Team
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 * COPYRIGHT: See COPYING in the top level directory
21 * PROJECT: ReactOS text-mode setup
22 * FILE: base/setup/usetup/genlist.h
23 * PURPOSE: Generic list functions
29 // #include "../lib/utils/genlist.h"
32 (NTAPI
*PGET_ENTRY_DESCRIPTION
)(
33 IN PGENERIC_LIST_ENTRY Entry
,
35 IN SIZE_T cchBufferSize
);
37 typedef struct _GENERIC_LIST_UI
41 PLIST_ENTRY FirstShown
;
42 PLIST_ENTRY LastShown
;
43 PGENERIC_LIST_ENTRY BackupEntry
;
45 PGET_ENTRY_DESCRIPTION GetEntryDescriptionProc
;
53 CHAR CurrentItemText
[256];
55 } GENERIC_LIST_UI
, *PGENERIC_LIST_UI
;
59 IN OUT PGENERIC_LIST_UI ListUi
,
60 IN PGENERIC_LIST List
,
61 IN PGET_ENTRY_DESCRIPTION GetEntryDescriptionProc
);
64 RestoreGenericListUiState(
65 IN PGENERIC_LIST_UI ListUi
);
69 IN PGENERIC_LIST_UI ListUi
,
76 DrawGenericListCurrentItem(
77 IN PGENERIC_LIST List
,
78 IN PGET_ENTRY_DESCRIPTION GetEntryDescriptionProc
,
83 ScrollDownGenericList(
84 IN PGENERIC_LIST_UI ListUi
);
88 IN PGENERIC_LIST_UI ListUi
);
91 ScrollPageDownGenericList(
92 IN PGENERIC_LIST_UI ListUi
);
95 ScrollPageUpGenericList(
96 IN PGENERIC_LIST_UI ListUi
);
99 ScrollToPositionGenericList(
100 IN PGENERIC_LIST_UI ListUi
,
105 IN PGENERIC_LIST_UI ListUi
);
109 IN PGENERIC_LIST_UI ListUi
,