public void InitGui()
    {
        GUIBase_Pivot  Pivot  = MFGuiManager.Instance.GetPivot("MainResearch");
        GUIBase_Layout Layout = Pivot.GetLayout("ResearchScroller_Layout");

        GUIBase_Pivot scrollerPivot = GuiBaseUtils.GetChild <GUIBase_Pivot>(Layout, "Scroller");

        m_ScrollInventory.InitGui(Layout, scrollerPivot);

        GUIBase_Widget iconsRoot = Layout.GetWidget("ResearchIcons");

        m_Icons = new GUIBase_Sprite[maxScrollItems];
        for (int i = 0; i < maxScrollItems; i++)
        {
            m_Icons[i] = GuiBaseUtils.GetChildSprite(iconsRoot, "Icon" + i);
        }

        // anchor scroll bar to the bottom of the screen
        if (MFGuiManager.ForcePreserveAspectRatio)
        {
            Transform trans    = Layout.transform;
            Vector3   position = trans.position;

            GUIBase_Widget specialBottomCara = Layout.GetWidget("SpecialBottom_cara");
            Rect           bbox = specialBottomCara.GetBBox();
            bbox.y        -= position.y;
            position.y     = Screen.height - bbox.yMax;
            trans.position = position;
        }
    }
    protected override bool OnInit()
    {
        if (base.OnInit() == false)
        {
            return(false);
        }

        GUIBase_Layout layout = MFGuiManager.Instance.GetLayout(LAYOUT);

        if (layout == null)
        {
            return(false);
        }

        m_Root = layout.GetWidget(ROOT);
        if (m_Root == null)
        {
            return(false);
        }

        GUIBase_Widget[] widgets = m_Root.GetComponentsInChildren <GUIBase_Widget>();
        for (int idx = 0; idx < (int)E_CommandID.Max; ++idx)
        {
            GUIBase_Widget widget = GetWidget(ITEMS[idx], ref widgets);
            widget.Show(false, true);
            m_Items[idx] = widget;
        }

        if (GuiHUD.ControledByTouchScreen())
        {
            m_Menu = GetWidget(MENU, ref widgets).GetComponent <GUIBase_Button>();
        }

        return(true);
    }
Beispiel #3
0
    public ProcessInputDelegate OnProcessInput;     //unhandled touch events will be sended to this delegate

    // Use this for initialization
    void Start()
    {
        m_Widget = GetComponent <GUIBase_Widget>();

        int callbackMask = (int)E_CallbackType.E_CT_ON_TOUCH_END;

        m_Widget.RegisterCallback(this, callbackMask);
        m_Widget.RegisterUpdateDelegate(UpdateList);

        if (m_FirstListLine != null && m_NumOfLines > 1)
        {
            InitializeChilds();
        }

        if (m_Scrollbar != null)
        {
            m_Scrollbar.ParentWidget = this;
            m_Scrollbar.MaxVisible   = m_NumOfLines;
        }

        if (m_ButtonUp != null)
        {
            m_ButtonUp.Widget.m_VisibleOnLayoutShow = false;
            m_ButtonUp.m_ParentWidget = this;
        }

        if (m_ButtonDown != null)
        {
            m_ButtonDown.Widget.m_VisibleOnLayoutShow = false;
            m_ButtonDown.m_ParentWidget = this;
        }
    }
Beispiel #4
0
 public Gadget(GUIBase_Widget root)
 {
     m_BackgroundIdle    = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "BackgroundIdle");
     m_BackgroundCurrent = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "BackgroundCurrent");
     m_BackgroundGained  = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "BackgroundGained");
     m_BackgroundMissed  = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "BackgroundMissed");
 }
Beispiel #5
0
    // ------
    public void Init(GUIBase_Widget newParent, bool useUpgrades)
    {
        m_Base = GetComponent <GUIBase_Widget>();

        m_Price      = GuiBaseUtils.GetChildLabel(m_Base, "Price");
        m_ItemName   = GuiBaseUtils.GetChildLabel(m_Base, "Name");
        m_Image      = GuiBaseUtils.GetChildSprite(m_Base, "Image");
        m_Enabled    = GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "Enabled");
        m_Disabled   = GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "Disabled");
        m_Finished   = GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "Finished");
        m_Researched = GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "Researched");

        m_LockedByRank = new LockedByRank(GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "LockedByRank"),
                                          GuiBaseUtils.GetChild <GUIBase_Label>(m_Base, "LockedByRankText"));

        if (useUpgrades)
        {
            m_FullyUpgraded = GuiBaseUtils.GetChild <GUIBase_Sprite>(m_Base, "FullyUpgraded");
            m_UpgradeParent = GuiBaseUtils.GetChild <GUIBase_Widget>(m_Base, "Upgrades");
            for (int i = 0; i < ResearchItem.MAX_UPGRADES; i++)
            {
                m_Upgrades[i] = GuiBaseUtils.GetChild <GUIBase_Widget>(m_UpgradeParent, "Upgrade" + (i + 1));
                m_Stars[i]    = GuiBaseUtils.GetChild <GUIBase_Widget>(m_UpgradeParent, "Star" + (i + 1));
            }
            //m_FullyUpgraded = GuiBaseUtils.GetChild<GUIBase_Widget>(m_UpgradeParent, "FullyUpgraded");
        }
        else
        {
            m_FullyUpgraded = null;
        }
        m_Base.Relink(newParent);
    }
Beispiel #6
0
    public void InitGui(GUIBase_Layout bgLayout, GUIBase_Pivot scrollPivot)
    {
        m_ScrollPivot      = scrollPivot;
        m_BackgroundLayout = bgLayout;

        m_SelectionBackground = m_BackgroundLayout.GetWidget("Sprite_selection");
        m_SelectionArrow      = m_BackgroundLayout.GetWidget("Sprite_sipka");

        /*
         * //setup scroll area
         * GUIBase_Sprite areaSprite = GuiBaseUtils.PrepareSprite(m_BackgroundLayout, "ActiveArea_Sprite");
         * Vector2 pos = new Vector2(areaSprite.Widget.transform.localPosition.x - areaSprite.Widget.m_Width/2, areaSprite.Widget.transform.localPosition.y + areaSprite.Widget.m_Height/2);
         * pos = m_BackgroundLayout.LayoutSpacePosToScreen(pos);
         * Vector2 size = new Vector2(areaSprite.Widget.m_Width, areaSprite.Widget.m_Height);
         * size = m_BackgroundLayout.LayoutSpaceDeltaToScreen(size);
         * Rect scrollRect = new Rect(pos.x, pos.y, size.x, size.y);
         */
        GUIBase_Sprite areaSprite = GuiBaseUtils.PrepareSprite(m_BackgroundLayout, "ActiveArea_Sprite");

        m_ScrollRect        = areaSprite.Widget.GetRectInScreenCoords();
        m_ScrollRect.center = new Vector2(m_ScrollRect.center.x, Screen.height - m_ScrollRect.center.y);

        m_DragInput.SetActiveArea(m_ScrollRect);

        //TODO: find distance between items (podle sirky widgetu nebo podle vzdalenosti mezi dvema widgety)
        //ted to delame rucne podle sirky spritu ramecku v 'ShopCore\Scroller_Layout\Graphic_Pivot'
        ItemOffset = 312;

        m_DragInput.isHorizontal = true;
    }
Beispiel #7
0
    public void InitGui()
    {
        GUIBase_Pivot  Pivot  = MFGuiManager.Instance.GetPivot("ShopMenu");
        GUIBase_Layout Layout = Pivot.GetLayout("Scroller_Layout");

        GUIBase_Pivot scrollerPivot = GuiBaseUtils.GetChild <GUIBase_Pivot>(Layout, "Scroll_Pivot");

        m_ScrollInventory.InitGui(Layout, scrollerPivot);

        /*m_InfoPopup.GuiInit();
         * m_ScrollInventory.m_OnHoldBegin = ShowInfoPopup;
         * m_ScrollInventory.m_OnHoldEnd = HideInfoPopup;*/

        // anchor scroll bar to the bottom of the screen
        if (MFGuiManager.ForcePreserveAspectRatio)
        {
            Transform trans    = Layout.transform;
            Vector3   position = trans.position;

            GUIBase_Widget specialBottomCara = Layout.GetWidget("SpecialBottom_cara");
            Rect           bbox = specialBottomCara.GetBBox();
            bbox.y        -= position.y;
            position.y     = Screen.height - bbox.yMax;
            trans.position = position;
        }
    }
    //zkopiruje widget parametry do edit arey
    static public void CopyFromWidget(GUIBase_Widget selWidget, EditedArea targetArea)
    {
        if (selWidget)
        {
            Texture texture = selWidget.GetTexture();

            if (texture)
            {
                float width  = texture.width;
                float height = texture.height;

                targetArea.Area.x = selWidget.m_InTexPos.x * width;
                targetArea.Area.y = selWidget.m_InTexPos.y * height;

                targetArea.Area.width  = selWidget.m_InTexSize.x * width;
                targetArea.Area.height = selWidget.m_InTexSize.y * height;

                targetArea.UsesGrid9     = selWidget.m_Grid9.Enabled;
                targetArea.Slices.left   = Mathf.RoundToInt(selWidget.m_Grid9.LeftSlice * targetArea.Area.width);
                targetArea.Slices.top    = Mathf.RoundToInt(selWidget.m_Grid9.TopSlice * targetArea.Area.height);
                targetArea.Slices.right  = Mathf.RoundToInt(selWidget.m_Grid9.RightSlice * targetArea.Area.width);
                targetArea.Slices.bottom = Mathf.RoundToInt(selWidget.m_Grid9.BottomSlice * targetArea.Area.height);
            }
        }
    }
    //---------------------------------------------------------------------------------------------
    //
    // Update area (UV and size) in widget
    //	it means widget's inTexPos and inTexSize will be modified
    //
    //---------------------------------------------------------------------------------------------
    static public void UpdateWidgetByArea(GUIBase_Widget widget, EditedArea editedArea, bool dirtyFlag)
    {
        if (widget)
        {
            Texture texture = widget.GetTexture();

            if (texture)
            {
                float width  = texture.width;
                float height = texture.height;

                widget.m_InTexPos.x = editedArea.Area.x / width;
                widget.m_InTexPos.y = editedArea.Area.y / height;

                widget.m_InTexSize.x = editedArea.Area.width / width;
                widget.m_InTexSize.y = editedArea.Area.height / height;

                widget.m_Grid9.Enabled     = editedArea.UsesGrid9;
                widget.m_Grid9.LeftSlice   = editedArea.Area.width != 0.0f ? editedArea.Slices.left / editedArea.Area.width  : 0.0f;
                widget.m_Grid9.TopSlice    = editedArea.Area.height != 0.0f ? editedArea.Slices.top / editedArea.Area.height : 0.0f;
                widget.m_Grid9.RightSlice  = editedArea.Area.width != 0.0f ? editedArea.Slices.right / editedArea.Area.width  : 0.0f;
                widget.m_Grid9.BottomSlice = editedArea.Area.height != 0.0f ? editedArea.Slices.bottom / editedArea.Area.height : 0.0f;

                if (dirtyFlag)
                {
                    EditorUtility.SetDirty(widget);
                }
            }
        }
    }
Beispiel #10
0
    // --------
    void ShowRadarPos(GUIBase_Widget targetWidget, Vector3 targetPos, Vector3 centerPos, Vector3 centerDir)
    {
        Vector3 dirToEnemy = targetPos - centerPos;

        dirToEnemy.y = 0;
        float   distance = dirToEnemy.magnitude;
        Vector3 finalPos;

        distance /= RadarRange;
        if (distance > 1.0f)
        {
            distance = Mathf.Clamp(1.0f + (distance - 1.0f) / 21f, 0, 1.1f);
        }

        dirToEnemy.Normalize();
        float angle = Mathf.Atan2(-dirToEnemy.z, dirToEnemy.x) - Mathf.Atan2(-centerDir.z, centerDir.x);

        finalPos  = new Vector3(Mathf.Sin(angle), -Mathf.Cos(angle), 0);
        finalPos *= distance * RadarScreenRadius + RadarCenterRadius;
        finalPos += RadarCenter.transform.position;

        Transform targetTrans = targetWidget.transform;

        if (targetTrans.position != finalPos)
        {
            targetTrans.position = finalPos;
            targetWidget.SetModify(true);
        }

        if (!targetWidget.IsVisible())
        {
            targetWidget.Show(true, true);
        }
    }
Beispiel #11
0
    //---------------------------------------------------------------------------------------------
    //
    // UpdateSelectionByHiearchyView
    //
    // Take from Unity "Selection.activeGameObject" and select it internaly in plugin
    //
    //---------------------------------------------------------------------------------------------
    void UpdateSelectionByHiearchyView()
    {
        if (Selection.activeGameObject)
        {
            GUIBase_Widget widget = Selection.activeGameObject.GetComponent <GUIBase_Widget>();

            if (widget != m_SelectedWidget)
            {
                m_SelectedWidget = widget;
                if (widget != null)
                {
                    Vector2 offset = widget.m_InTexPos;
                    if (widget.m_InTexSize.x < 0.0f)
                    {
                        offset.x += widget.m_InTexSize.x;
                    }
                    if (widget.m_InTexSize.y < 0.0f)
                    {
                        offset.y += widget.m_InTexSize.y;
                    }
                    SetPlatformShift(offset * -1.0f + new Vector2(0.02f, 0.02f));
                }
            }
        }
        else
        {
            m_SelectedWidget = null;
        }
    }
Beispiel #12
0
    //---------------------------------------------------------------------------------------------
    //
    // FindLayoutForWidget
    //
    // Finds layout where widget is laying (GUIBase_Widget should be child of GUIBase_Layout or of another GUIBase_Widget)
    //
    //---------------------------------------------------------------------------------------------
    public static GUIBase_Layout FindLayoutForWidget(GUIBase_Widget widget)
    {
        if (widget)
        {
            // Iterate over all layouts from scene
            GUIBase_Layout[] layouts = Object.FindObjectsOfType(typeof(GUIBase_Layout)) as GUIBase_Layout[];

            foreach (GUIBase_Layout l in layouts)
            {
                // Enumerate widgets of this layout
                GUIBase_Widget[] children = l.GetComponentsInChildren <GUIBase_Widget>();

                foreach (GUIBase_Widget w in children)
                {
                    if (w == widget)
                    {
                        return(l);
                    }
                }
            }

            Transform parent = widget.transform.parent;
            while (parent != null)
            {
                GUIBase_Layout layout = parent.GetComponent <GUIBase_Layout>();
                if (layout != null)
                {
                    return(layout);
                }
                parent = parent.parent;
            }
        }

        return(null);
    }
Beispiel #13
0
 void OnLobbyButton(GUIBase_Widget inWidget)
 {
     m_ServerListType = E_ServerListType.Lobby;
     m_FilterLabel.SetNewText(0109034);
     m_LanButton.Widget.Color   = Color.white;
     m_LobbyButton.Widget.Color = Color.gray;
 }
Beispiel #14
0
    // PRIVATE METHODS

    bool ProcessMouse(ref IInputEvent evt)
    {
        MouseEvent     mouse  = (MouseEvent)evt;
        GUIBase_Widget widget = HitTest(mouse.Position);

        if (evt is MouseEvent)
        {
            ProcessMouseWheel(widget, (MouseEvent)evt);
        }

        if (m_HoverWidget != widget)
        {
            if (m_HoverWidget != null)
            {
                widget        = m_HoverWidget;
                m_HoverWidget = null;
                return(HandleTouchEvent(widget, GUIBase_Widget.E_TouchPhase.E_TP_MOUSEOVER_END, evt, false));
            }

            if (m_HoverWidget == null)
            {
                m_HoverWidget = widget;
                return(HandleTouchEvent(widget, GUIBase_Widget.E_TouchPhase.E_TP_MOUSEOVER_BEGIN, evt, true));
            }
        }

        return(ProcessImpl(ref evt));
    }
Beispiel #15
0
 public Dialog(GUIBase_Widget root)
 {
     m_Root         = root;
     m_ResultText   = GuiBaseUtils.GetChild <GUIBase_Label>(root, "ResultText_Label");
     m_SkullNormal  = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "Skull_Normal");
     m_SkullPremium = GuiBaseUtils.GetChild <GUIBase_Widget>(root, "Skull_Premium");
 }
    //---------------------------------------------------------
    public void PlayAnim(Animation animation,
                         GUIBase_Widget widget,
                         GUIBase_Platform.AnimFinishedDelegate finishDelegate = null,
                         int customIdx = -1)
    {
        S_AnimDscr animDscr = new S_AnimDscr();

        animDscr.m_Animation = animation;
        animDscr.m_StartTime = Time.realtimeSinceStartup;
        //animDscr.m_StartTime			= Time.time;
        animDscr.m_Length               = animation.clip.length;
        animDscr.m_CustomIdx            = customIdx;
        animDscr.m_AnimFinishedDelegate = finishDelegate;
        animDscr.m_Widget               = widget;

        animDscr.m_Animation.wrapMode = animDscr.m_Animation.clip.wrapMode;

        int idx = m_PlayingAnims.Count;

        m_PlayingAnims.Add(animDscr);

        ProcessAnim(animDscr, 0.0f, idx);

        //Debug.Log("anim "+ animDscr.m_Animation.name +", Start time = "+ animDscr.m_StartTime +", Length = "+ animDscr.m_Length);
    }
Beispiel #17
0
    void ShowImage(string name, GUIBase_Widget image)
    {
        GUIBase_Widget widget = Layout.GetWidget(name);

        widget.CopyMaterialSettings(image);
        widget.Show(true, true);
    }
Beispiel #18
0
    // GUIVIEW INTERFACE

    protected override void OnViewInit()
    {
        base.OnViewInit();

        GUIBase_Widget items      = GetWidget(ITEMS);
        Transform      itemsTrans = items.transform;

        m_ItemsPosition = itemsTrans.position;
        m_ItemsSize     = new Vector2(items.GetWidth(), items.GetHeight());

        for (int idx = 0; idx < MAX_ITEMS; ++idx)
        {
            GUIBase_Widget root      = itemsTrans.FindChild(string.Format(ITEM_NAME, idx)).GetComponent <GUIBase_Widget>();
            Transform      rootTrans = root.transform;

            Transform image = rootTrans.FindChild(ITEM_IMAGE);
            Transform label = rootTrans.FindChild(ITEM_LABEL);

            Item item = new Item()
            {
                Root                          = root,
                Image                         = image != null?image.GetComponent <GUIBase_Sprite>() : null,
                                        Label = label != null?label.GetComponent <GUIBase_Label>() : null
            };

            m_Items[idx] = item;
        }
    }
Beispiel #19
0
    private static bool ProceedLayoutAndButton(string layoutName, string buttonName, bool probeOnly = false)
    {
        GUIBase_Layout layout = MFGuiManager.Instance.GetLayout(layoutName);

        if (null != layout)
        {
            if (layout.IsEnabled(true) && layout.IsVisible(false))
            {
                GUIBase_Widget widget = layout.GetWidget(buttonName);

                if (null != widget)
                {
                    if (widget.IsEnabled(true) && widget.IsVisible(false))
                    {
                        if (!probeOnly)
                        {
                            m_CoroutineRunning = true;

                            if (null != Game.Instance)
                            {
                                Game.Instance.StartCoroutine(AutoClick(widget));
                            }
                        }

                        return(true);
                    }
                }
            }
        }

        return(false);
    }
Beispiel #20
0
    void OnAddFriend(int rowIdx, GUIBase_Widget widget, object evt)
    {
        LobbyGang.FriendInfo friend = GetFriendByRowIdx(rowIdx);
        if (friend == null)
        {
            return;
        }
        if (friend.CanInvite == false)
        {
            return;
        }
        if (friend.IsInvited == true)
        {
            return;
        }

        friend.IsInvited = true;
        friend.IsWaiting = true;

        // send invite
        var data = new
        {
            master   = m_PrimaryKey,
            gametype = m_GametypeRoller.Selection
        };

        LobbyClient.SendMessageToPlayer(friend.PrimaryKey, LobbyGangMessage.INVITE, JsonMapper.ToJson(data));

        SetDirty();
    }
Beispiel #21
0
        public FriendLine(GUIBase_Widget inLine)
        {
            Transform trans = inLine.transform;

            m_Line         = inLine;
            m_Nickname     = trans.GetChildComponent <GUIBase_Label>("Username");        // display nickaname first
            m_Username     = trans.GetChildComponent <GUIBase_Label>("Nickname");        // display nickaname second
            m_RankText     = trans.GetChildComponent <GUIBase_Label>("TextRank");
            m_RankIcon     = trans.GetChildComponent <GUIBase_MultiSprite>("PlayerRankPic");
            m_Missions     = trans.GetChildComponent <GUIBase_Label>("Missions");
            m_Online       = trans.GetChildComponent <GUIBase_Label>("OnlineStatus");
            m_Stats        = trans.GetChildComponent <GUIBase_Button>("Stats_Button");
            m_Mail         = trans.GetChildComponent <GUIBase_Button>("SendMail_Button");
            m_Chat         = trans.GetChildComponent <GUIBase_Button>("Chat_Button");
            m_Remove       = trans.GetChildComponent <GUIBase_Button>("Remove_Button");
            m_FacebookName = trans.GetChildComponent <GUIBase_Label>("FacebookName");
            m_FacebookIcon = trans.GetChildComponent <GUIBase_Widget>("FacebookIcon");

            m_Stats.IsDisabled = GuiFrontendIngame.IsVisible;
            m_Mail.IsDisabled  = GuiFrontendIngame.IsVisible;
            m_Chat.IsDisabled  = true;

            m_Stats.RegisterTouchDelegate(Delegate_Stats);
            m_Mail.RegisterTouchDelegate(Delegate_SendMail);
            m_Chat.RegisterTouchDelegate(Delegate_Chat);
            m_Remove.RegisterTouchDelegate(Delegate_Remove);
        }
Beispiel #22
0
    //---------------------------------------------------------

    // ==================================================================================================
    // === Default MoneBehaviour interface ==============================================================

    #region MoneBehaviourInterface

    public void Start()
    {
        m_Widget = GetComponent <GUIBase_Widget>();
        m_Widget.m_TextScaleFix_HACK = true;
        m_Widget.RegisterUpdateDelegate(RegenerateSprites);
        m_Widget.RegisterCallback(this, (int)E_CallbackType.E_CT_INIT);

        m_TextDyn         = null;
        m_TextIDGenerated = 0;
#if UNITY_EDITOR
        m_TextGenerated      = "";
        m_AnchorPointGen     = -1;
        m_AlignmentGen       = -1;
        m_LineSpaceGenerated = 0.0f;
#endif
        SetRegenerationNeeded();

        if (m_TextID != 0)
        {
            m_TextDyn = m_AllowMultiline == true ? TextDatabase.instance[m_TextID] : TextDatabase.instance[m_TextID].Replace("\n", " ");
            if (m_TextDyn == "<UNKNOWN TEXT>")
            {
                Debug.Log("Invalid text id on label: " + gameObject.GetFullName());
            }
        }
        else if (string.IsNullOrEmpty(m_Text) == false && m_AllowMultiline == false)
        {
            m_Text = m_Text.Replace("\n", " ");
        }
    }
 // ------
 public Indicator(GUIBase_Widget widget, float timeOut)
 {
     m_Indicator = widget;
     m_TimeOut   = timeOut;
     m_Active    = false;
     m_Enabled   = false;
 }
Beispiel #24
0
    //---------------------------------------------------------
    // Makes a copy of material and U,V settings
    public void CopyMaterialSettings(GUIBase_Widget otherWidget)
    {
        if (otherWidget == null)
        {
            return;
        }
        if (otherWidget.m_Material == null || otherWidget.m_Material.mainTexture == null)
        {
            Debug.LogWarning("GUIBase_Widget.CopyMaterialSettings() :: Invalid source widget '" + otherWidget.GetFullName('.') + "'!!!",
                             otherWidget.gameObject);
            return;
        }

        // setup widget
        m_Material  = otherWidget.m_Material;
        m_InTexPos  = otherWidget.m_InTexPos;
        m_InTexSize = otherWidget.m_InTexSize;
        m_Grid9     = otherWidget.m_Grid9;

        // we don't need to call ChangeMaterial() if there is not any gui renderer assigned yet
        // we can wait until Initialize() call will do so
        if (m_GuiRenderer != null)
        {
            // reassign renderer and material
            ChangeMaterial(m_Material);
        }
    }
    void OnMenuReleased(GUIBase_Widget widget, object evt)
    {
        if (m_State != E_State.Visible)
        {
            return;
        }

        TouchEvent touch    = (TouchEvent)evt;
        Vector2    position = touch.Position;

        position.y = Screen.height - position.y;

        int idx = 0;

        for (; idx < (int)E_CommandID.Max; ++idx)
        {
            if (m_Items[idx].IsMouseOver(position) == true)
            {
                OnSendCommand((E_CommandID)idx);
                break;
            }
        }

        HideItems((E_CommandID)idx);
    }
Beispiel #26
0
 //---------------------------------------------------------
 public void PlayAnim(Animation animation,
                      GUIBase_Widget widget,
                      GUIBase_Platform.AnimFinishedDelegate finishDelegate = null,
                      int customIdx = -1)
 {
     m_Layout.PlayAnim(animation, widget, finishDelegate, customIdx);
 }
Beispiel #27
0
 // ------
 void ShowWidget(GUIBase_Widget widget, bool state)
 {
     if (widget != null && widget.Visible != state)
     {
         widget.ShowImmediate(state, true);
     }
 }
Beispiel #28
0
    // GUIVIEW INTERFACE

    protected override GUIBase_Widget OnViewHitTest(ref Vector2 point)
    {
        if (Owner == null)
        {
            return(null);
        }

        GUIBase_Widget widget = base.OnViewHitTest(ref point);

        if (widget != null)
        {
            return(widget);
        }

        if (Layout.Visible == false)
        {
            return(null);
        }
        if (Layout.InputEnabled == false)
        {
            return(null);
        }

        return(Layout.HitTest(ref point));
    }
Beispiel #29
0
    // Update is called once per frame
    void InitializeChilds()
    {
        Transform  trans = m_FirstListLine.transform;
        Vector3    pos   = trans.position;
        Quaternion rot   = trans.rotation;

        Vector3 offset = Vector3.zero;

        m_Lines    = new GUIBase_Widget[m_NumOfLines];
        m_Lines[0] = m_FirstListLine;

        for (int idx = 1; idx < m_NumOfLines; ++idx)
        {
            offset.x += m_LinesOffset.x;
            offset.y += m_LinesOffset.y;

            GUIBase_Widget widget      = Instantiate(m_FirstListLine, pos + offset, rot) as GUIBase_Widget;
            Transform      widgetTrans = widget.transform;
            widgetTrans.parent        = trans.parent;
            widgetTrans.localScale    = trans.localScale;
            widgetTrans.localPosition = trans.localPosition + offset;
            widget.name = m_FirstListLine.name + " [ " + idx + " ]";

            m_Lines[idx] = widget;
        }
    }
Beispiel #30
0
    public bool SetTextAndAdjustBackground(string text, GUIBase_Label label, GUIBase_Widget background, float BaseSize, float TextScale)
    {
        float CorrectionPerChar = 35 * (1 - TextScale);       //15f;
        bool  modif             = false;

        if (label.GetText() != text)
        {
            label.SetNewText(text);
            modif = true;
        }
        int   len      = text.Length;
        float textSize = label.textSize.x - CorrectionPerChar * (float)len;
        float xScale   = 0.2f + textSize / BaseSize;

        if ((Mathf.Abs(background.transform.localScale.x - xScale) > 0.01f) || (Mathf.Abs(label.transform.localScale.y - TextScale) > 0.01f))
        {
            background.transform.localScale = new Vector3(xScale, 1.0f, 1.0f);
            label.transform.localScale      = new Vector3(TextScale / xScale, TextScale, TextScale);
            modif = true;
        }

        if (!background.IsVisible() || !label.Widget.IsVisible())
        {
            background.Show(true, true);
            label.Widget.Show(true, true);
        }

        return(modif);
    }