#include <lib/gdi/region.h>
#include <lib/gdi/gfont.h>
+#ifndef SWIG
class eTextPara;
class gDC;
flip,
notify,
+ enableSpinner, disableSpinner, incrementSpinner,
+
shutdown
} opcode;
eFixedMessagePump<int> m_notify_pump;
void recv_notify(const int &i);
+
+ ePtr<gDC> m_spinner_dc;
+ int m_spinner_enabled;
+
+ void enableSpinner();
+ void disableSpinner();
+
public:
gRC();
virtual ~gRC();
void submit(const gOpcode &o);
Signal0<void> notify;
-
+
+ void setSpinnerDC(gDC *dc) { m_spinner_dc = dc; }
+
static gRC *getInstance();
};
void flip();
void notify();
};
+#endif
class gDC: public iObject
{
DECLARE_REF(gDC);
+#ifndef SWIG
protected:
ePtr<gPixmap> m_pixmap;
std::stack<gRegion> m_clip_stack;
gRegion m_current_clip;
+ ePtr<gPixmap> m_spinner_saved, m_spinner_temp;
+ ePtr<gPixmap> *m_spinner_pic;
+ eRect m_spinner_pos;
+ int m_spinner_num, m_spinner_i;
public:
virtual void exec(gOpcode *opcode);
+#else
+public:
+#endif
gDC(gPixmap *pixmap);
gDC();
virtual ~gDC();
gRGB getRGB(gColor col);
virtual eSize size() { return m_pixmap->size(); }
virtual int islocked() { return 0; }
+
+ void enableSpinner();
+ void disableSpinner();
+ void incrementSpinner();
+ void setSpinner(eRect pos, ePtr<gPixmap> *pic, int len);
};
#endif