From: vp153 Date: Mon, 15 Mar 2010 13:50:52 +0000 (+0000) Subject: disallow user to resize highgui windows with autoresize flag (cocoa bindings) - ticke... X-Git-Url: https://rtime.felk.cvut.cz/gitweb/opencv.git/commitdiff_plain/b6a0ce4c76caf27d4f6070c1d934564995424ed4 disallow user to resize highgui windows with autoresize flag (cocoa bindings) - ticket #170 git-svn-id: https://code.ros.org/svn/opencv/trunk@2818 73c94f0f-984f-4a5f-82bc-2d8db8d8ee08 --- diff --git a/opencv/src/highgui/window_cocoa.mm b/opencv/src/highgui/window_cocoa.mm index 0e9e8c41..5db64236 100644 --- a/opencv/src/highgui/window_cocoa.mm +++ b/opencv/src/highgui/window_cocoa.mm @@ -150,8 +150,9 @@ CV_IMPL void cvShowImage( const char* name, const CvArr* arr) { CVWindow *window = cvGetWindow(name); if(window) { + bool empty = [[window contentView] image] == nil; [[window contentView] setImageData:(CvArr *)arr]; - if([window autosize]) { + if([window autosize] || empty) { NSRect rect = [window frame]; rect.size = [[[window contentView] image] size]; [window setFrame:rect display:YES]; @@ -329,9 +330,10 @@ CV_IMPL int cvNamedWindow( const char* name, int flags ) cvInitSystem(0, 0); CVWindow *window = [[CVWindow alloc] initWithContentRect:NSMakeRect(0,0,200,200) - styleMask:NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask|NSResizableWindowMask - backing:NSBackingStoreBuffered - defer:NO]; + styleMask:NSTitledWindowMask|NSClosableWindowMask|NSMiniaturizableWindowMask| + (!(flags & CV_WND_PROP_AUTOSIZE) ? NSResizableWindowMask : 0) + backing:NSBackingStoreBuffered + defer:NO]; NSString *windowName = [NSString stringWithFormat:@"%s", name];