+ void drawRect(int x1, int y1, int x2, int y2);
+ void fillRect(int x1, int y1, int x2, int y2);
+ void drawCircle(int x, int y, int r);
+ void fillCircle(int x, int y, int r);
+ void drawTriangle(int x1, int y1, int x2, int y2, int x3, int y3);
+ void fillTriangle(int x1, int y1, int x2, int y2, int x3, int y3);
+
+ void drawText(int x, int y, const char *text, int flags = 0);
+ void drawText(int x, int y, const std::string &text, int flags = 0);
+ void drawTextBg(int x, int y, const char *text, int flags = 0);
+ void drawTextBg(int x, int y, const std::string &text, int flags = 0);
+
+ unsigned int getPointColor(int x, int y) const;
+
+ bool waitMousePress(int &x, int &y, int &button,
+ unsigned long time = ULONG_MAX);
+ bool sync(unsigned long time = ULONG_MAX);
+
+ void closeGraph();
+
+ static void sleep(unsigned long secs);
+ static void msleep(unsigned long msecs);
+ static void usleep(unsigned long usecs);