00001
00002
00003
00004
00005
00008
00009 #define _LIST_H_
00012 #include <stdio.h>
00013 #include "types.h"
00014 #include "surface.h"
00015 #include "menu.h"
00018
00019
00020
00023
00024 #define guidLIST (Alist::CI.guid)
00025
00028
00029 class Alist : public Asurface
00030 {
00031 ALIBOBJ
00032
00033 ADLL Alist (char *name, Aobject *L, int x, int y, int w, int h, Aitem *items);
00034 ADLL virtual ~Alist ();
00035
00036 ADLL bool setCurrentByData (int data);
00037 int getCurrentData () { return current?current->data:-1; }
00038 Aitem * getCurrent () { return current; }
00039 ADLL bool setCurrent (Aitem *current);
00040
00041 ADLL virtual bool notify (Anode *o, int event, dword p=0);
00042 ADLL virtual bool mouse (int x, int y, int state, int event);
00043
00044 ADLL virtual void NCdisplay ();
00045
00046 private:
00047
00048 class Afont *font;
00049 class Aitem *items;
00050 class Aitem *current;
00051 };
00052
00055 #endif //_LIST_H_