#include <stack>
#include <list>
-#include <lib/base/estring.h>
+#include <string>
#include <lib/base/ringbuffer.h>
#include <lib/base/elock.h>
#include <lib/gdi/erect.h>
renderPara,
setFont,
- fill, clear,
+ fill, fillRegion, clear,
blit,
setPalette,
eRect area;
} *fill;
+ struct pfillRegion
+ {
+ gRegion region;
+ } *fillRegion;
+
struct prenderText
{
eRect area;
- eString text;
+ std::string text;
int flags;
} *renderText;
};
/* gRC is the singleton which controls the fifo and dispatches commands */
-class gRC: public virtual iObject
+class gRC: public iObject
{
DECLARE_REF;
private:
void setForegroundColor(const gColor &color);
void setFont(gFont *font);
+ /* flags only THESE: */
+ enum
+ {
+ // todo, make mask. you cannot align both right AND center AND block ;)
+ RT_HALIGN_RIGHT = 1,
+ RT_HALIGN_CENTER = 2,
+ RT_HALIGN_BLOCK = 4,
+ RT_VALIGN_CENTER = 8
+ };
void renderText(const eRect &position, const std::string &string, int flags=0);
+
void renderPara(eTextPara *para, ePoint offset=ePoint(0, 0));
void fill(const eRect &area);
+ void fill(const gRegion &area);
void clear();