int main() { int width, height, cursorx, cursory, cbsize; init(&width, &height); // Graphics initialization cursorx = width / 2; cursory = height / 2; cbsize = (CUR_SIZ * 2) + 1; VGImage CursorBuffer = vgCreateImage(VG_sABGR_8888, cbsize, cbsize, VG_IMAGE_QUALITY_BETTER); if (mouseinit(width, height) != 0) { fprintf(stderr, "Unable to initialize the mouse\n"); exit(1); } Start(width, height); // Start the picture Background(0, 0, 0); // Black background Fill(44, 77, 232, 1); // Big blue marble Circle(width / 2, 0, width); // The "world" Fill(255, 255, 255, 1); // White text TextMid(width / 2, height / 2, "hello, world", SerifTypeface, width / 10); // Greetings End(); // update picture // MAIN LOOP while (left_count < 2) { // Loop until the left mouse button pressed & released // if the mouse moved... if (mouse.x != cursorx || mouse.y != cursory) { restoreCursor(CursorBuffer); cursorx = mouse.x; cursory = mouse.y; saveCursor(CursorBuffer, cursorx, cursory, width, height, CUR_SIZ); circleCursor(cursorx, cursory, width, height, CUR_SIZ); End(); // update picture } } restoreCursor(CursorBuffer); // not strictly necessary as display will be closed vgDestroyImage(CursorBuffer); // tidy up memory finish(); // Graphics cleanup exit(0); }
void draw_cursor(int curx, int cury, int width, int height, int s) { circleCursor(cursorx, cursory, mouse.max_x, mouse.max_y, CUR_SIZ); }