/* Do not edit this file. It was automatically genarated. */ #ifndef HEADER_ListBox #define HEADER_ListBox /* htop (C) 2004-2006 Hisham H. Muhammad Released under the GNU GPL, see the COPYING file in the source distribution for its full text. */ #include "Object.h" #include "TypedVector.h" #include "CRT.h" #include "RichString.h" #include #include #include #include "debug.h" #include #include //#link curses typedef struct ListBox_ ListBox; typedef enum HandlerResult_ { HANDLED, IGNORED, BREAK_LOOP } HandlerResult; typedef HandlerResult(*ListBox_EventHandler)(ListBox*, int); struct ListBox_ { Object super; int x, y, w, h; WINDOW* window; TypedVector* items; int selected; int scrollV, scrollH; int oldSelected; bool needsRedraw; RichString header; ListBox_EventHandler eventHandler; }; extern char* LISTBOX_CLASS; ListBox* ListBox_new(int x, int y, int w, int h, char* type, bool owner); void ListBox_delete(Object* cast); void ListBox_init(ListBox* this, int x, int y, int w, int h, char* type, bool owner); void ListBox_done(ListBox* this); void ListBox_setEventHandler(ListBox* this, ListBox_EventHandler eh); void ListBox_setRichHeader(ListBox* this, RichString header); void ListBox_setHeader(ListBox* this, char* header); void ListBox_move(ListBox* this, int x, int y); void ListBox_resize(ListBox* this, int w, int h); void ListBox_prune(ListBox* this); void ListBox_add(ListBox* this, Object* o); void ListBox_insert(ListBox* this, int i, Object* o); void ListBox_set(ListBox* this, int i, Object* o); Object* ListBox_get(ListBox* this, int i); Object* ListBox_remove(ListBox* this, int i); Object* ListBox_getSelected(ListBox* this); void ListBox_moveSelectedUp(ListBox* this); void ListBox_moveSelectedDown(ListBox* this); int ListBox_getSelectedIndex(ListBox* this); int ListBox_getSize(ListBox* this); void ListBox_setSelected(ListBox* this, int selected); void ListBox_draw(ListBox* this, bool focus); void ListBox_onKey(ListBox* this, int key); #endif