Example #1
0
    //! pageを開く
    public void OpenPage(DebugMenu page)
    {
        SetVisiblePageOverEqual(page.NestLevel_);

        // 自分を表示する
        page.ScrollView_.gameObject.SetActive(true);
    }
Example #2
0
    //----------------------------------------------以下DebugMenuからの登録用------------------------------------------//
    //! pageを登録する
    public void RegisterPage(DebugMenu menu)
    {
        var level = menu.NestLevel_;
        if (PageTable_.ContainsKey(level) == false)
            PageTable_.Add(level, new HashSet<RectTransform>());

        PageTable_[level].Add(menu.ScrollView_);
        menu.ScrollView_.transform.SetParent(transform, false);
    }
Example #3
0
    void Awake()
    {
        PageTable_ = new Dictionary<int, HashSet<RectTransform>>();
        root_ = Instantiate(NodePrefab) as DebugMenu;
        root_.InitAsPage("root", this, null);
        root_.gameObject.SetActive(false);          //rootはボタンを押すわけではないのでfalseにしておく
        root_.transform.SetParent(transform, false);

        InitPages();
    }
Example #4
0
    // SetupDebugMenu
    public static void SetupDebugMenu( SpriteBatch spriteBatch )
    {
        if ( spriteBatch == null )
            spriteBatch = new SpriteBatch( Game.GraphicsDevice );

        Texture2D texture = Content.Load< Texture2D >( "Debug\\Debug_Menu" );
        SpriteFont font = Content.Load< SpriteFont >( "Debug\\Debug_Font" );

        DebugMenu = new DebugMenu( spriteBatch, texture, font );
    }
Example #5
0
 public DebugMenu()
     : base()
 {
     Instance = this;
 }
Example #6
0
 public void InitAsMenu(string name, Action func, DebugMenu parent)
 {
     Init(name, func, parent);
     var pageTag = transform.FindChild("PageTag");
     pageTag.gameObject.SetActive(false);
 }
Example #7
0
 void Init(string name, Action func, DebugMenu parent)
 {
     Name_     = name;
     Function_ = func;
     Parent_   = parent;
     NestLevel_ = Parent_ != null ? Parent_.NestLevel_ + 1 : 0;
 }
Example #8
0
    public void InitAsPage(string name, DebugViewer viewer, DebugMenu parent)
    {
        Init(name, OpenPage, parent);

        viewer_ = viewer;

        // スクロールビューの生成
        ScrollView_ = Instantiate(viewer_.ScrollViewPrefab) as RectTransform;
        ScrollView_.gameObject.SetActive(false);

        // 位置の設定
        ScrollView_.localPosition = new Vector3(NestLevel_ * ScrollView_.rect.width + ScrollView_.localPosition.x, 0);

        // 最初にviewrに登録しておく
        {
            viewer_.RegisterPage(this);
        }

        // 動的にスクロールページを生成する必要があるかもしれないので
        // メニューのリストを保持しておく
        {
            menuList_ = new List<Menu>();
        }
    }