void plot::render_from_display_list() { rhost::util::errors_to_exceptions([&] { pGEDevDesc ge_dev_desc = Rf_desc2GEDesc(_device_desc); GEplayDisplayList(ge_dev_desc); }); render(true); }
void resizedJavaGD(NewDevDesc *dd) { int devNum; /* newJavaGDDesc *xd = (newJavaGDDesc *) dd->deviceSpecific; */ #ifdef JGD_DEBUG printf("dd->size=%lx\n", (unsigned long)dd->size); #endif dd->size(&(dd->left), &(dd->right), &(dd->bottom), &(dd->top), dd); devNum = ndevNumber(dd); if (devNum > 0) GEplayDisplayList(GEgetDevice(devNum)); }
OSStatus QuartzEventHandler( EventHandlerCallRef inCallRef, EventRef inEvent, void* inUserData ) { OSStatus err = eventNotHandledErr; UInt32 eventKind = GetEventKind( inEvent ), RWinCode, devsize; int devnum; WindowRef EventWindow; EventRef REvent; NewDevDesc *dd; if( GetEventClass(inEvent) != kEventClassWindow) return(err); GetEventParameter(inEvent, kEventParamDirectObject, typeWindowRef, NULL, sizeof(EventWindow), NULL, &EventWindow); if(GetWindowProperty(EventWindow, kRAppSignature, 'QRTZ', sizeof(int), NULL, &devnum) != noErr) return eventNotHandledErr; switch(eventKind){ case kEventWindowClose: { KillDevice(GetDevice(devnum)); err= noErr; } break; case kEventWindowBoundsChanged: if( (dd = ((GEDevDesc*) GetDevice(devnum))->dev) ){ QuartzDesc *xd = (QuartzDesc *) dd-> deviceSpecific; Rect portRect; GetWindowPortBounds ( xd->window, & portRect ) ; if( (xd->windowWidth != portRect.right) || (xd->windowHeight != portRect.bottom) ){ xd->resize = true; dd->size(&(dd->left), &(dd->right), &(dd->bottom), &(dd->top), dd); xd->resize = false; GEplayDisplayList((GEDevDesc*) GetDevice(devnum)); } err = noErr; } break; default: break; } return err; }
void javaGDresize(int dev) { int ds=NumDevices(); int i=0; if (dev>=0 && dev<ds) { i=dev; ds=dev+1; } while (i<ds) { GEDevDesc *gd=GEgetDevice(i); if (gd) { NewDevDesc *dd=gd->dev; #ifdef JGD_DEBUG printf("javaGDresize: device=%d, dd=%lx\n", i, (unsigned long)dd); #endif if (dd) { #ifdef JGD_DEBUG printf("dd->size=%lx\n", (unsigned long)dd->size); #endif dd->size(&(dd->left), &(dd->right), &(dd->bottom), &(dd->top), dd); GEplayDisplayList(gd); } } i++; } }