Esempio n. 1
0
    public void Update()
    {
        if (_dialogBoxInfoStack.Count >= 1)
        {
            if (_isShowgDialogBox == false)
            {
                _isShowgDialogBox = true;

                KDialogBoxInfo info = _dialogBoxInfoStack.Peek(); // get dialog box info from top of the stack
                //KDialogBoxCanvas handler = canvasContainer.GetComponent<KDialogBoxCanvas>();
                SetTexts(info._caption, info._message);
                SetButtonTexts(info._button1Text, info._button2Text);
                SetButtonAction(info._action);
                canvasContainer.SetActive(true);
                _dialogBoxInfoStack.Pop(); // remove used dialog box info
            }
        }
    }
Esempio n. 2
0
    /// <summary>
    /// create dialog box - 20190327_jintaeks
    /// </summary>
    /// <param name="dialogBoxCanvas"> KDialogBoxCanvas game object in the hierarchy </param>
    /// <param name="caption"></param>
    /// <param name="message"></param>
    /// <param name="action"> Button down event handler </param>
    /// <returns></returns>

    /** <example>
    *   private void OnGUI()
    *   {
    *       if (GUI.Button(new Rect(0, 0, 200, 40), "Test"))
    *       {
    *           KDialogBoxCanvas.DialogBox( "My Caption"
    *               , "My Message"
    *               , "Yes"
    *               , "No"
    *               , (int buttonId) =>
    *               {
    *                   // 1 : left button
    *                   // 2 : right button
    *                   Debug.Log("My Button " + buttonId as string );
    *               } );
    *       }
    *   }
    *   </example> */
    public static KDialogBoxCanvas DialogBox(string caption, string message
                                             , string strLeftButton, string strRightButton, UnityAction <int> action)
    {
        KDialogBoxInfo info = new KDialogBoxInfo()
        {
            _caption       = caption, _message = message
            , _button1Text = strLeftButton, _button2Text = strRightButton, _action = action
        };
        KDialogBoxCanvas handler = canvasContainer.GetComponent <KDialogBoxCanvas>();

        handler.PushDialogBoxInfo(info);

        //KDialogBoxCanvas handler = canvasContainer.GetComponent<KDialogBoxCanvas>();
        //handler.SetTexts(caption, message);
        //handler.SetButtonTexts(strLeftButton, strRightButton);
        //handler.SetButtonAction(action);
        //canvasContainer.SetActive(true);
        return(handler);
    }