function figure_size = getnicedialoglocation(figure_size, figure_units) % adjust the specified figure position to fig nicely over GCBF % or into the upper 3rd of the screen % Copyright 1999-2006 The MathWorks, Inc. % $Revision: 1541 $ %%%%%% PLEASE NOTE %%%%%%%%% %%%%%% This file has also been copied into: %%%%%% matlab/toolbox/ident/idguis %%%%%% If this functionality is changed, please %%%%%% change it also in idguis. %%%%%% PLEASE NOTE %%%%%%%%% parentHandle = gcbf; propName = 'Position'; if isempty(parentHandle) parentHandle = 0; propName = 'ScreenSize'; end old_u = get(parentHandle,'Units'); set(parentHandle,'Units',figure_units); container_size=get(parentHandle,propName); set(parentHandle,'Units',old_u); figure_size(1) = container_size(1) + 1/2*(container_size(3) - figure_size(3)); figure_size(2) = container_size(2) + 2/3*(container_size(4) - figure_size(4));