1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License
9  * as published by the Free Software Foundation; either version 2
10  * of the License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  *
21  */
22 
23 #include "ags/engine/ac/global_listbox.h"
24 #include "ags/shared/ac/common.h"
25 #include "ags/engine/ac/listbox.h"
26 #include "ags/engine/ac/string.h"
27 
28 namespace AGS3 {
29 
ListBoxClear(int guin,int objn)30 void ListBoxClear(int guin, int objn) {
31 	GUIListBox *guisl = is_valid_listbox(guin, objn);
32 	ListBox_Clear(guisl);
33 }
ListBoxAdd(int guin,int objn,const char * newitem)34 void ListBoxAdd(int guin, int objn, const char *newitem) {
35 	GUIListBox *guisl = is_valid_listbox(guin, objn);
36 	ListBox_AddItem(guisl, newitem);
37 }
ListBoxRemove(int guin,int objn,int itemIndex)38 void ListBoxRemove(int guin, int objn, int itemIndex) {
39 	GUIListBox *guisl = is_valid_listbox(guin, objn);
40 	ListBox_RemoveItem(guisl, itemIndex);
41 }
ListBoxGetSelected(int guin,int objn)42 int ListBoxGetSelected(int guin, int objn) {
43 	GUIListBox *guisl = is_valid_listbox(guin, objn);
44 	return ListBox_GetSelectedIndex(guisl);
45 }
ListBoxGetNumItems(int guin,int objn)46 int ListBoxGetNumItems(int guin, int objn) {
47 	GUIListBox *guisl = is_valid_listbox(guin, objn);
48 	return ListBox_GetItemCount(guisl);
49 }
ListBoxGetItemText(int guin,int objn,int item,char * buffer)50 char *ListBoxGetItemText(int guin, int objn, int item, char *buffer) {
51 	VALIDATE_STRING(buffer);
52 	GUIListBox *guisl = is_valid_listbox(guin, objn);
53 	return ListBox_GetItemText(guisl, item, buffer);
54 }
ListBoxSetSelected(int guin,int objn,int newsel)55 void ListBoxSetSelected(int guin, int objn, int newsel) {
56 	GUIListBox *guisl = is_valid_listbox(guin, objn);
57 	ListBox_SetSelectedIndex(guisl, newsel);
58 }
ListBoxSetTopItem(int guin,int objn,int item)59 void ListBoxSetTopItem(int guin, int objn, int item) {
60 	GUIListBox *guisl = is_valid_listbox(guin, objn);
61 	ListBox_SetTopItem(guisl, item);
62 }
63 
ListBoxSaveGameList(int guin,int objn)64 int ListBoxSaveGameList(int guin, int objn) {
65 	GUIListBox *guisl = is_valid_listbox(guin, objn);
66 	return ListBox_FillSaveGameList(guisl);
67 }
68 
ListBoxDirList(int guin,int objn,const char * filemask)69 void ListBoxDirList(int guin, int objn, const char *filemask) {
70 	GUIListBox *guisl = is_valid_listbox(guin, objn);
71 	ListBox_FillDirList(guisl, filemask);
72 }
73 
74 } // namespace AGS3
75