示例#1
0
		void _GuiMacDrawingArea_update (GuiObject widget) {
			iam_drawingarea;
			if (my exposeCallback) {
				struct structGuiDrawingAreaExposeEvent event = { widget };
				_GuiMac_clipOnParent (widget);
				try {
					my exposeCallback (my exposeBoss, & event);
				} catch (MelderError) {
					Melder_flushError ("Redrawing not completed");
				}
				GuiMac_clipOff ();
			}
		}
示例#2
0
	void _GuiWinDrawingArea_update (GuiObject widget) {
		iam_drawingarea;
		PAINTSTRUCT paintStruct;
		BeginPaint (widget -> window, & paintStruct);
		if (my exposeCallback) {
			struct structGuiDrawingAreaExposeEvent event = { widget };
			try {
				my exposeCallback (my exposeBoss, & event);
			} catch (MelderError) {
				Melder_flushError ("Redrawing not completed");
			}
		}
		EndPaint (widget -> window, & paintStruct);
	}
示例#3
0
//}
static gboolean _GuiGtkDrawingArea_exposeCallback (GuiObject widget, GdkEventExpose *expose, gpointer void_me) {
	iam (GuiDrawingArea);
	// TODO: that helps agains the damaged regions outside the rect where the
	// Graphics drawing is done, but where does that margin come from in the
	// first place?? Additionally this causes even more flickering
	//gdk_window_clear_area(widget->window, expose->area.x, expose->area.y, expose->area.width, expose->area.height);
	if (my exposeCallback) {
		struct structGuiDrawingAreaExposeEvent event = { widget, 0 };
		event. x = expose -> area. x;
		event. y = expose -> area. y;
		event. width = expose -> area. width;
		event. height = expose -> area. height;
		my exposeCallback (my exposeBoss, & event);
		return TRUE;		// let the expose callback handle redrawing
	}
	return FALSE;			// let GTK+ handle redrawing
}