Beispiel #1
0
    public void CreateBaseUI()
    {
        GameObject b = mUI.CreateElement(mUI.Canvas, "uiBase");

        b.transform.SetAsFirstSibling();
        mUI.SetRectFillParent(b);
        mUI.AddImage(b, mUI.PrimaryBackground);

        GameObject vl = mUI.CreateElement(b, "vertLayout");

        mUI.SetRectFillParent(vl);
        mUI.AddVerticalLayout(vl);

        GameObject sp1 = mUI.CreateElement(vl, "spacer");

        mUI.AddLayout(sp1, -1, 10, 1.0f, -1);

        mGlobalTabs = mUI.CreateTabView(vl);

        mPrimaryContent = mUI.CreateElement(vl, "primaryWindow");
        mUI.AddLayout(mPrimaryContent, -1, -1, 1.0f, 1.0f);
        mUI.AddImage(mPrimaryContent, mUI.WindowBackground);
        mUI.AddVerticalLayout(mPrimaryContent);
        mPrimaryContent.GetComponent <VerticalLayoutGroup>().padding = new RectOffset(4, 4, 4, 4);
        mPrimaryContent.GetComponent <VerticalLayoutGroup>().spacing = 4;
    }
Beispiel #2
0
    public CTooltip(CToolkitUI Toolkit, CGameUIStyle Style, GameObject Root)
    {
        _ui    = Toolkit;
        _style = Style;

        _tooltipOverGame = false;
        _tooltip         = _ui.CreateElement(Root, "tooltip");
        _ui.AddImage(_tooltip, _style.TooltipBackground);
        _ui.SetTransform(_tooltip, 0, 0, 256, 256);
        _ui.AddVerticalLayout(_tooltip, new RectOffset(3, 3, 3, 3), 3);
        _tooltip.GetComponent <RectTransform>().anchorMax = new Vector2(0, 0);
        _tooltip.GetComponent <RectTransform>().anchorMin = new Vector2(0, 0);
        ContentSizeFitter fitter = _tooltip.AddComponent <ContentSizeFitter>();

        fitter.horizontalFit = ContentSizeFitter.FitMode.PreferredSize;
        fitter.verticalFit   = ContentSizeFitter.FitMode.PreferredSize;

        float width = 150.0f;

        GameObject title = _ui.CreateTextElement(_tooltip, "Title", "title", CToolkitUI.ETextStyle.TS_HEADING);

        _ui.AddLayout(title, width, -1, -1, -1);

        GameObject details = _ui.CreateTextElement(_tooltip, "Sub-title", "subtitle", CToolkitUI.ETextStyle.TS_DEFAULT);

        _ui.AddLayout(details, width, -1, -1, -1);

        GameObject desc = _ui.CreateTextElement(_tooltip, "Description text that can be longer.", "description", CToolkitUI.ETextStyle.TS_HEADING);

        _ui.AddLayout(desc, width, -1, -1, -1);

        Hide(false);
    }
Beispiel #3
0
    /// <summary>
    /// Add an item to the context menu.
    /// </summary>
    public void AddItem(string Text, Action OnClicked = null)
    {
        GameObject item = _ui.CreateElement(_contextMenu, "item");

        _ui.AddLayout(item, 128.0f, 20.0f, -1, -1);
        _ui.AddImage(item, Color.white);
        _ui.AddHorizontalLayout(item);
        item.GetComponent <HorizontalLayoutGroup>().childAlignment = TextAnchor.MiddleCenter;

        GameObject title = _ui.CreateTextElement(item, Text, "item", CToolkitUI.ETextStyle.TS_HEADING);
        //_ui.AddLayout(title, 128.0f, -1, -1, -1);

        ColorBlock cb = new ColorBlock();

        cb.normalColor      = _style.ThemeColorB;
        cb.highlightedColor = _style.ThemeColorA;
        cb.colorMultiplier  = 1.0f;

        Button     button    = item.AddComponent <Button>();
        Navigation buttonNav = new Navigation();

        buttonNav.mode       = Navigation.Mode.None;
        button.targetGraphic = item.GetComponent <Image>();
        button.navigation    = buttonNav;
        button.colors        = cb;

        if (OnClicked != null)
        {
            button.onClick.AddListener(() =>
            {
                OnClicked();
                Hide();
            });
        }
    }
Beispiel #4
0
    public void ShowErrorMessage(string Message, string Title)
    {
        if (mErrorMessageBox != null)
        {
            GameObject.Destroy(mErrorMessageBox);
        }

        mErrorMessageBox = _ui.CreateElement(mMenuLayer, "ErrorMessage");
        //errorMsg.SetActive(false);
        _ui.AddImage(mErrorMessageBox, _style.TooltipBackground);
        _ui.SetAnchors(mErrorMessageBox, new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f));
        _ui.SetTransform(mErrorMessageBox, 0, 0, 600, 256);
        _ui.AddVerticalLayout(mErrorMessageBox).childForceExpandWidth   = true;
        mErrorMessageBox.AddComponent <ContentSizeFitter>().verticalFit = ContentSizeFitter.FitMode.PreferredSize;

        GameObject titleBar = _ui.CreateElement(mErrorMessageBox, "TitleBar");

        _ui.AddImage(titleBar, _style.ThemeColorC);
        _ui.SetAnchors(titleBar, new Vector2(0.0f, 1.0f), new Vector2(1.0f, 1.0f), new Vector2(0.0f, 1.0f));
        _ui.AddLayout(titleBar, -1, 30, -1, -1);
        //_ui.SetTransform(optsTitle, 0, 0, 0, 26);

        GameObject titleText = _ui.CreateElement(titleBar);

        _ui.SetAnchors(titleText, new Vector2(0.0f, 0.0f), new Vector2(1.0f, 1.0f), new Vector2(0.0f, 1.0f));
        _ui.SetTransform(titleText, 5, 0, -10, 0);
        Text optsTitleTextComp = titleText.AddComponent <Text>();

        optsTitleTextComp.text      = Title;
        optsTitleTextComp.font      = _style.FontA;
        optsTitleTextComp.alignment = TextAnchor.MiddleLeft;


        GameObject messageBody = _ui.CreateElement(mErrorMessageBox, "MsgBorder");

        _ui.AddVerticalLayout(messageBody, new RectOffset(10, 10, 10, 10));

        GameObject message = _ui.CreateElement(messageBody);
        //_ui.SetAnchors(optsTitleText, new Vector2(0.0f, 0.0f), new Vector2(1.0f, 1.0f), new Vector2(0.0f, 1.0f));
        //_ui.SetTransform(optsTitleText, 5, 0, -10, 0);
        Text messageTextComp = message.AddComponent <Text>();

        messageTextComp.text = Message;
        messageTextComp.font = _style.FontA;
        //messageTextComp.alignment = TextAnchor.MiddleLeft;

        // TODO: This message should be removed when session terminated with other game related UI.

        /*
         * GameObject button = _ui.CreateMenuButton(errorMsg, "Exit", () => {
         *      GameObject.Destroy(errorMsg);
         *      CGame.UIManager.PlaySound(CGame.PrimaryResources.AudioClips[15]);
         *      CGame.Game.TerminateGameSession();
         *      CGame.UIManager.AddInterface(new CMainMenuUI());
         * });
         * _ui.SetTransform(button, 50, -100, 256, 50);
         */

        GameObject button = _ui.CreateButton(mErrorMessageBox, "Close", () => {
            GameObject.Destroy(mErrorMessageBox);
            mErrorMessageBox = null;
            CGame.UIManager.PlaySound(CGame.PrimaryResources.AudioClips[15]);
        });

        _ui.AddLayout(button, -1, 20, 1.0f, -1);
    }