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

📄 inputdlg.c

📁 ASUFIT-Matlab-全局拟合程序
💻 C
📖 第 1 页 / 共 5 页
字号:
/*
 * MATLAB Compiler: 2.0.1
 * Date: Tue May 08 21:28:21 2001
 * Arguments: "-B" "sgl" "-m" "-W" "mainhg" "-L" "C" "asufit.m" "absfun.m"
 * "absfunfree.m" "absfunshift.m" "absfunwidth.m" "dispfit.m" "dispfitdisp.m"
 * "dispfitfree.m" "dispfitwidth.m" "seqmodfree.m" "spcfun.m" "spcfun1.m"
 * "atamult.m" "aprecon.m" 
 */
#include "inputdlg.h"

static double __Array0_r[3] = { 0.0, 0.0, 0.0 };

static double __Array1_r[3] = { 192.0, 192.0, 192.0 };

static double __Array2_r[3] = { 160.0, 160.0, 164.0 };

static double __Array3_r[3] = { 128.0, 128.0, 128.0 };

static double __Array4_r[3] = { 255.0, 255.0, 255.0 };

static double __Array5_r[4] = { 0.0, 0.0, 1.0, 1.0 };

static double __Array6_r[2] = { 2.0, 4.0 };

static double __Array7_r[2] = { 2.0, 4.0 };

static double __Array8_r[2] = { 2.0, 4.0 };

static void Minputdlg_LocalResizeFcn(mxArray * FigHandle);
static void mlfInputdlg_LocalResizeFcn(mxArray * FigHandle);
static void mlxInputdlg_LocalResizeFcn(int nlhs,
                                       mxArray * plhs[],
                                       int nrhs,
                                       mxArray * prhs[]);

/*
 * The function "Minputdlg" is the implementation version of the "inputdlg"
 * M-function from file "C:\MATLABR11\toolbox\matlab\uitools\inputdlg.m" (lines
 * 1-363). It contains the actual compiled code for that M-function. It is a
 * static function and must only be called from one of the interface functions,
 * appearing below.
 */
/*
 * function Answer=inputdlg(Prompt, Title, NumLines, DefAns,Resize)
 */
static mxArray * Minputdlg(int nargout_,
                           mxArray * Prompt,
                           mxArray * Title,
                           mxArray * NumLines,
                           mxArray * DefAns,
                           mxArray * Resize) {
    mxArray * Answer = mclGetUninitializedArray();
    mxArray * AxesHandle = mclGetUninitializedArray();
    mxArray * Black = mclGetUninitializedArray();
    mxArray * BtnFontSize = mclGetUninitializedArray();
    mxArray * BtnHeight = mclGetUninitializedArray();
    mxArray * BtnInfo = mclGetUninitializedArray();
    mxArray * BtnWidth = mclGetUninitializedArray();
    mxArray * BtnYOffset = mclGetUninitializedArray();
    mxArray * CBString = mclGetUninitializedArray();
    mxArray * CancelHandle = mclGetUninitializedArray();
    mxArray * Data = mclGetUninitializedArray();
    mxArray * DefBtnWidth = mclGetUninitializedArray();
    mxArray * DefOffset = mclGetUninitializedArray();
    mxArray * EdInfo = mclGetUninitializedArray();
    mxArray * EditHandle = mclGetUninitializedArray();
    mxArray * EditHeight = mclGetUninitializedArray();
    mxArray * EditTag = mclGetUninitializedArray();
    mxArray * EditYOffset = mclGetUninitializedArray();
    mxArray * ExtControl = mclGetUninitializedArray();
    mxArray * ExtLp = mclGetUninitializedArray();
    mxArray * Extent = mclGetUninitializedArray();
    mxArray * FigColor = mclGetUninitializedArray();
    mxArray * FigHeight = mclGetUninitializedArray();
    mxArray * FigPos = mclGetUninitializedArray();
    mxArray * FigWidth = mclGetUninitializedArray();
    mxArray * InputFig = mclGetUninitializedArray();
    mxArray * Interpreter = mclGetUninitializedArray();
    mxArray * LightGray = mclGetUninitializedArray();
    mxArray * LightGray2 = mclGetUninitializedArray();
    mxArray * MediumGray = mclGetUninitializedArray();
    mxArray * NewPos = mclGetUninitializedArray();
    mxArray * NewPos1 = mclGetUninitializedArray();
    mxArray * NumQuest = mclGetUninitializedArray();
    mxArray * OKHandle = mclGetUninitializedArray();
    mxArray * OneVect = mclGetUninitializedArray();
    mxArray * QuestHandle = mclGetUninitializedArray();
    mxArray * QuestHeight = mclGetUninitializedArray();
    mxArray * QuestPos = mclGetUninitializedArray();
    mxArray * QuestTag = mclGetUninitializedArray();
    mxArray * QuestYOffset = mclGetUninitializedArray();
    mxArray * ScreenSize = mclGetUninitializedArray();
    mxArray * SmallOffset = mclGetUninitializedArray();
    mxArray * StInfo = mclGetUninitializedArray();
    mxArray * Temp = mclGetUninitializedArray();
    mxArray * TempHide = mclGetUninitializedArray();
    mxArray * TextInfo = mclGetUninitializedArray();
    mxArray * TxtBackClr = mclGetUninitializedArray();
    mxArray * TxtForeClr = mclGetUninitializedArray();
    mxArray * TxtHeight = mclGetUninitializedArray();
    mxArray * TxtWidth = mclGetUninitializedArray();
    mxArray * TxtXOffset = mclGetUninitializedArray();
    mxArray * White = mclGetUninitializedArray();
    mxArray * WindowStyle = mclGetUninitializedArray();
    mxArray * WrapQuest = mclGetUninitializedArray();
    mxArray * YOffLp = mclGetUninitializedArray();
    mxArray * ans = mclInitializeAns();
    mxArray * cl = mclGetUninitializedArray();
    mclForLoopIterator iterator_0;
    mxArray * lp = mclGetUninitializedArray();
    mxArray * nargin_ = mclGetUninitializedArray();
    mxArray * nargout = mclInitialize(mlfScalar(nargout_));
    mxArray * rw = mclGetUninitializedArray();
    mlfAssign(
      &nargin_, mlfNargin(0, Prompt, Title, NumLines, DefAns, Resize, NULL));
    mclValidateInputs(
      "inputdlg", 5, &Prompt, &Title, &NumLines, &DefAns, &Resize);
    mclCopyArray(&Prompt);
    mclCopyArray(&Title);
    mclCopyArray(&NumLines);
    mclCopyArray(&DefAns);
    mclCopyArray(&Resize);
    /*
     * %INPUTDLG Input dialog box.
     * %  Answer = inputdlg(Prompt) creates a modal dialog box that returns
     * %  user input for multiple prompts in the cell array Answer.  Prompt
     * %  is a cell array containing the Prompt strings.
     * %
     * %  Answer = inputdlg(Prompt,Title) specifies the Title for the dialog.
     * %
     * %  Answer = inputdlg(Prompt,Title,LineNo) specifies the number of lines
     * %  for each answer in LineNo.  LineNo may be a constant value or a 
     * %  column vector having one element per Prompt that specifies how many
     * %  lines per input.  LineNo may also be a matrix where the first
     * %  column specifies how many rows for the input field and the second
     * %  column specifies how many columns wide the input field should be.
     * %
     * %  Answer = inputdlg(Prompt,Title,LineNo,DefAns) specifies the default
     * %  answer to display for each Prompt.  DefAns must contain the same
     * %  number of elements as Prompt and must be a cell array.
     * %
     * %  Answer = inputdlg(Prompt,Title,LineNo,DefAns,AddOpts) specifies whether
     * %  the dialog may be resized or not.  Acceptable values for AddOpts are 
     * %  'on' or 'off'.  If the dialog can be resized, then the dialog is
     * %  not modal.  
     * %
     * %  AddOpts may also be a data structure with fields Resize,
     * %  WindowStyle and Interpreter.  Resize may be 'on' or 'off'.
     * %  WindowStyle may be 'modal' or 'normal' and Interpreter may be
     * %  'tex' or 'none'.  The interpreter applies to the prompt strings.
     * %
     * %  Example:
     * %  prompt={'Enter the matrix size for x^2:','Enter the colormap name:'};
     * %  def={'20','hsv'};
     * %  dlgTitle='Input for Peaks function';
     * %  lineNo=1;
     * %  answer=inputdlg(prompt,dlgTitle,lineNo,def);
     * %
     * %  or
     * %
     * %  AddOpts.Resize='on';
     * %  AddOpts.WindowStyle='normal';
     * %  AddOpts.Interpreter='tex';
     * %  answer=inputdlg(prompt,dlgTitle,lineNo,def,AddOpts);
     * %
     * %  See also TEXTWRAP, QUESTDLG.
     * 
     * %  Loren Dean   May 24, 1995.
     * %  Copyright (c) 1984-98 by The MathWorks, Inc.
     * %  $Revision: 1.48 $
     * 
     * %%%%%%%%%%%%%%%%%%%%%
     * %%% General Info. %%%
     * %%%%%%%%%%%%%%%%%%%%%
     * Black      =[0       0        0      ]/255;
     */
    mlfAssign(
      &Black,
      mlfMrdivide(mlfDoubleMatrix(1, 3, __Array0_r, NULL), mlfScalar(255.0)));
    /*
     * LightGray  =[192     192      192    ]/255;
     */
    mlfAssign(
      &LightGray,
      mlfMrdivide(mlfDoubleMatrix(1, 3, __Array1_r, NULL), mlfScalar(255.0)));
    /*
     * LightGray2 =[160     160      164    ]/255;
     */
    mlfAssign(
      &LightGray2,
      mlfMrdivide(mlfDoubleMatrix(1, 3, __Array2_r, NULL), mlfScalar(255.0)));
    /*
     * MediumGray =[128     128      128    ]/255;
     */
    mlfAssign(
      &MediumGray,
      mlfMrdivide(mlfDoubleMatrix(1, 3, __Array3_r, NULL), mlfScalar(255.0)));
    /*
     * White      =[255     255      255    ]/255;
     */
    mlfAssign(
      &White,
      mlfMrdivide(mlfDoubleMatrix(1, 3, __Array4_r, NULL), mlfScalar(255.0)));
    /*
     * 
     * %%%%%%%%%%%%%%%%%%%%
     * %%% Nargin Check %%%
     * %%%%%%%%%%%%%%%%%%%%
     * if nargin == 1 & nargout == 0,
     */
    {
        mxArray * a_ = mclInitialize(mlfEq(nargin_, mlfScalar(1.0)));
        if (mlfTobool(a_)
            && mlfTobool(mlfAnd(a_, mlfEq(nargout, mlfScalar(0.0))))) {
            mxDestroyArray(a_);
            /*
             * if strcmp(Prompt,'InputDlgResizeCB'),
             */
            if (mlfTobool(
                  mlfStrcmp(Prompt, mxCreateString("InputDlgResizeCB")))) {
                /*
                 * LocalResizeFcn(gcbf)
                 */
                mlfInputdlg_LocalResizeFcn(mlfGcbf());
                /*
                 * return
                 */
                goto return_;
            /*
             * end
             */
            }
        } else {
            mxDestroyArray(a_);
        }
    /*
     * end
     */
    }
    /*
     * 
     * if nargout~=1,error('Wrong number of output arguments for INPUTDLG');end
     */
    if (mlfTobool(mlfNe(nargout, mlfScalar(1.0)))) {
        mlfError(
          mxCreateString("Wrong number of output arguments for INPUTDLG"));
    }
    /*
     * if nargin<1,error('Too few arguments for INPUTDLG');end
     */
    if (mlfTobool(mlfLt(nargin_, mlfScalar(1.0)))) {
        mlfError(mxCreateString("Too few arguments for INPUTDLG"));
    }
    /*
     * 
     * if nargin==1,
     */
    if (mlfTobool(mlfEq(nargin_, mlfScalar(1.0)))) {
        /*
         * Title=' ';
         */
        mlfAssign(&Title, mxCreateString(" "));
    /*
     * end
     */
    }
    /*
     * 
     * if nargin<=2, NumLines=1;end
     */
    if (mlfTobool(mlfLe(nargin_, mlfScalar(2.0)))) {
        mlfAssign(&NumLines, mlfScalar(1.0));
    }
    /*
     * 
     * if ~iscell(Prompt),
     */
    if (mlfTobool(mlfNot(mlfIscell(Prompt)))) {
        /*
         * Prompt={Prompt};
         */
        mlfAssign(&Prompt, mlfCellhcat(Prompt, NULL));
    /*
     * end
     */
    }
    /*
     * 
     * NumQuest=prod(size(Prompt));    
     */
    mlfAssign(
      &NumQuest, mlfProd(mlfSize(mclValueVarargout(), Prompt, NULL), NULL));
    /*
     * 
     * if nargin<=3, 
     */
    if (mlfTobool(mlfLe(nargin_, mlfScalar(3.0)))) {
        /*
         * DefAns=cell(NumQuest,1);
         */
        mlfAssign(&DefAns, mlfCell(NumQuest, mlfScalar(1.0), NULL));
        /*
         * for lp=1:NumQuest, DefAns{lp}=''; end
         */
        for (mclForStart(&iterator_0, mlfScalar(1.0), NumQuest, NULL);
             mclForNext(&iterator_0, &lp);
             ) {
            mlfIndexAssign(&DefAns, "{?}", lp, mxCreateString(""));
        }
    /*
     * end
     */
    }
    /*
     * 
     * WindowStyle='modal';
     */
    mlfAssign(&WindowStyle, mxCreateString("modal"));
    /*
     * Interpreter='none';
     */
    mlfAssign(&Interpreter, mxCreateString("none"));
    /*
     * if nargin<=4,
     */
    if (mlfTobool(mlfLe(nargin_, mlfScalar(4.0)))) {
        /*
         * Resize = 'off';
         */
        mlfAssign(&Resize, mxCreateString("off"));
    /*
     * end
     */
    }
    /*
     * 
     * if nargin==5 & isstruct(Resize),
     */
    {
        mxArray * a_ = mclInitialize(mlfEq(nargin_, mlfScalar(5.0)));
        if (mlfTobool(a_) && mlfTobool(mlfAnd(a_, mlfIsstruct(Resize)))) {
            mxDestroyArray(a_);
            /*
             * Interpreter=Resize.Interpreter;
             */
            mlfAssign(&Interpreter, mlfIndexRef(Resize, ".Interpreter"));
            /*
             * WindowStyle=Resize.WindowStyle;
             */
            mlfAssign(&WindowStyle, mlfIndexRef(Resize, ".WindowStyle"));
            /*
             * Resize=Resize.Resize;
             */
            mlfAssign(&Resize, mlfIndexRef(Resize, ".Resize"));
        } else {
            mxDestroyArray(a_);
        }
    /*
     * end
     */
    }
    /*
     * 
     * if strcmp(Resize,'on'),
     */
    if (mlfTobool(mlfStrcmp(Resize, mxCreateString("on")))) {
        /*
         * WindowStyle='normal';
         */
        mlfAssign(&WindowStyle, mxCreateString("normal"));
    /*
     * end
     */
    }
    /*
     * 
     * if nargin>5,error('Too many input arguments');end
     */
    if (mlfTobool(mlfGt(nargin_, mlfScalar(5.0)))) {
        mlfError(mxCreateString("Too many input arguments"));
    }
    /*
     * 
     * % Backwards Compatibility
     * if isstr(NumLines),
     */
    if (mlfTobool(mlfIsstr(NumLines))) {
        /*
         * warning(['Please see the INPUTDLG help for correct input syntax.' 10 ...
         */
        mclAssignAns(
          &ans,
          mlfWarning(
            NULL,
            mlfHorzcat(
              mxCreateString(
                "Please see the INPUTDLG help for correct input syntax."),
              mlfScalar(10.0),
              mxCreateString("         OKCallback no longer supported."),
              NULL)));
        /*
         * '         OKCallback no longer supported.' ]);
         * NumLines=1;
         */
        mlfAssign(&NumLines, mlfScalar(1.0));
    /*
     * end
     */
    }
    /*
     * 
     * [rw,cl]=size(NumLines);
     */
    mlfSize(mlfVarargout(&rw, &cl, NULL), NumLines, NULL);
    /*
     * OneVect = ones(NumQuest,1);
     */
    mlfAssign(&OneVect, mlfOnes(NumQuest, mlfScalar(1.0), NULL));
    /*
     * if (rw == 1 & cl == 2)
     */
    {
        mxArray * a_ = mclInitialize(mlfEq(rw, mlfScalar(1.0)));
        if (mlfTobool(a_) && mlfTobool(mlfAnd(a_, mlfEq(cl, mlfScalar(2.0))))) {
            mxDestroyArray(a_);

⌨️ 快捷键说明

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