⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 movegui.c

📁 精通Matlab与C_C++混合程序设计.rar 是精通Matlab与C_C++混合程序设计 这本书的配套源码
💻 C
📖 第 1 页 / 共 5 页
字号:
     * 
     * %   Damian T. Packer 2-5-2000
     * %   Copyright 1984-2002 The MathWorks, Inc. 
     * %   $Revision: 1.14 $  $Date: 2002/04/22 22:25:49 $
     * 
     * POSITIONS = {'north','south','east','west',...
     */
    #line 78 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(78);
    #line 78 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mlfAssign(&POSITIONS, mlfCellhcat(mxCreateString("north"), mxCreateString("south"), mxCreateString("east"), mxCreateString("west"), mxCreateString("northeast"), mxCreateString("southeast"), mxCreateString("northwest"), mxCreateString("southwest"), mxCreateString("center"), mxCreateString("onscreen"), NULL));
    /*
     * 'northeast','southeast','northwest','southwest',...
     * 'center','onscreen'};
     * 
     * error(nargchk(0, 3, nargin));
     */
    #line 82 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(82);
    #line 82 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mlfError(mlfNargchk(mlfScalar(0), mlfScalar(3), mlfScalar(nargin_)), NULL);
    /*
     * position = '';
     */
    #line 83 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(83);
    #line 83 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mlfAssign(&position, mxCreateString(""));
    /*
     * fig = [];
     */
    #line 84 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(84);
    #line 84 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mlfAssign(&fig, mclCreateEmptyArray());
    /*
     * 
     * for i=1:nargin
     */
    #line 86 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(86);
    #line 86 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    {
        #line 86 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        mclForLoopIterator viter__;
        #line 86 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        for (mclForStart(&viter__, mlfScalar(1), mlfScalar(nargin_), NULL); mclForNext(&viter__, &i); ) {
            /*
             * numel = prod(size(varargin{i}));
             */
            #line 87 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            mclMline(87);
            #line 87 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            mlfAssign(&numel, mlfProd(mclFeval(mclValueVarargout(), mlxSize, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")), NULL), NULL));
            /*
             * if ishandle(varargin{i}) & numel == 1
             */
            #line 88 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            mclMline(88);
            #line 88 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            {
                #line 88 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                mxArray * a_ = mclInitialize(mclFeval(mclValueVarargout(), mlxIshandle, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")), NULL));
                #line 88 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                if (mlfTobool(a_) && mlfTobool(mclAnd(a_, mclEq(mclVv(numel, "numel"), mlfScalar(1))))) {
                    #line 88 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mxDestroyArray(a_);
                    /*
                     * fig = get_parent_fig(varargin{i});
                     */
                    #line 89 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mclMline(89);
                    #line 89 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mlfAssign(&fig, mclFeval(mclValueVarargout(), mlxMovegui_get_parent_fig, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")), NULL));
                    /*
                     * if isempty(fig)
                     */
                    #line 90 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mclMline(90);
                    #line 90 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    if (mlfTobool(mlfIsempty(mclVv(fig, "fig")))) {
                        /*
                         * error('handle of figure or descendant required');
                         */
                        #line 91 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mclMline(91);
                        #line 91 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mlfError(mxCreateString("handle of figure or descendant required"), NULL);
                    /*
                     * end
                     */
                    #line 92 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mclMline(92);
                    #line 92 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    }
                /*
                 * elseif isstr(varargin{i})
                 */
                #line 93 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                mclMline(93);
                #line 93 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                } else {
                    #line 93 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mxDestroyArray(a_);
                    #line 93 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    if (mlfTobool(mclFeval(mclValueVarargout(), mlxIsstr, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")), NULL))) {
                        /*
                         * position = varargin{i};
                         */
                        #line 94 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mclMline(94);
                        #line 94 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mlfAssign(&position, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")));
                        /*
                         * if isempty(strmatch(position,POSITIONS,'exact'))
                         */
                        #line 95 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mclMline(95);
                        #line 95 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        if (mlfTobool(mlfIsempty(mlfStrmatch(mclVv(position, "position"), mclVv(POSITIONS, "POSITIONS"), mxCreateString("exact"))))) {
                            /*
                             * error('unrecognized position');
                             */
                            #line 96 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mclMline(96);
                            #line 96 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mlfError(mxCreateString("unrecognized position"), NULL);
                        /*
                         * end
                         */
                        #line 97 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mclMline(97);
                        #line 97 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        }
                    /*
                     * elseif isnumeric(varargin{i}) & numel == 2
                     */
                    #line 98 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    mclMline(98);
                    #line 98 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    } else {
                        #line 98 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mxArray * a_0 = mclInitialize(mclFeval(mclValueVarargout(), mlxIsnumeric, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")), NULL));
                        #line 98 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        if (mlfTobool(a_0) && mlfTobool(mclAnd(a_0, mclEq(mclVv(numel, "numel"), mlfScalar(2))))) {
                            #line 98 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mxDestroyArray(a_0);
                            /*
                             * position = varargin{i};
                             */
                            #line 99 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mclMline(99);
                            #line 99 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mlfAssign(&position, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mclVv(i, "i")));
                        /*
                         * elseif ~isempty(gcbo) & i==2
                         */
                        #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        mclMline(100);
                        #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        } else {
                            #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            mxDestroyArray(a_0);
                            #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            {
                                #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                mxArray * a_1 = mclInitialize(mclNot(mlfIsempty(mlfNGcbo(1, NULL))));
                                #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                if (mlfTobool(a_1) && mlfTobool(mclAnd(a_1, mclEq(mclVv(i, "i"), mlfScalar(2))))) {
                                    #line 100 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                    mxDestroyArray(a_1);
                                /*
                                 * continue; % skip past the event data struct, if in a callback
                                 * else
                                 */
                                #line 102 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                } else {
                                    #line 102 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                    mclMline(102);
                                    #line 102 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                    mxDestroyArray(a_1);
                                    /*
                                     * error('unrecognized input argument');
                                     */
                                    #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                    mclMline(103);
                                    #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                    mlfError(mxCreateString("unrecognized input argument"), NULL);
                                #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                                }
                            #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                            }
                        #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                        }
                    #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                    }
                #line 103 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
                }
            /*
             * end
             */
            #line 104 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            mclMline(104);
            #line 104 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
            }
        /*
         * end
         */
        #line 105 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        mclMline(105);
        #line 105 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        }
        #line 105 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        mclDestroyForLoopIterator(viter__);
    #line 105 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    }
    /*
     * 
     * if isempty(fig)
     */
    #line 107 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    mclMline(107);
    #line 107 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
    if (mlfTobool(mlfIsempty(mclVv(fig, "fig")))) {
        /*
         * fig = gcbf;
         */
        #line 108 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        mclMline(108);
        #line 108 "d:\\matlab6p5\\toolbox\\matlab\\uitools\\movegui.m"
        mlfAssign(&fig, mlfGcbf());
        /*
         * if(isempty(fig))
         */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -