libsegl/glmenu/menumenu.h

57 lines
920 B
C
Raw Normal View History

#ifndef __MENUMENU_H
#define __MENUMENU_H
#include <vector>
#include <SDL.h>
#include "../punkt2d.h"
#include "menuitem.h"
namespace segl {
class MenuMenu {
private:
std::vector<MenuItem*> menuitems;
int itempos;
Punkt2D menupos;
bool centermenu;
bool centerScreenX;
2008-03-23 18:00:55 +01:00
bool dohighlight;
bool paintbackground;
int basefontsize;
int offset;
int maxwidth;
int valuewidth;
2008-03-23 18:00:55 +01:00
GLFontEngine fontengine;
2008-07-31 00:51:39 +02:00
// Soll anderes center evtl. ersetzen
// TODO: cleanup
bool fullcenter;
public:
MenuMenu();
void setPos(const Punkt2D&);
void setCenter(bool);
void setCenterScreenX(bool);
void setBaseFontSize(int);
void setMaxWidth(int);
2008-03-23 18:00:55 +01:00
void setPaintBackground(bool);
void up();
void down();
void left();
void right();
void select();
2008-03-23 18:00:55 +01:00
void charInput(char c);
void resetItemPos();
void addMenuItem(MenuItem*);
void render();
};
} // namespace segl
#endif