Ejemplo n.º 1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Common.UI.MenuItems.MenuItem"/> class with given token ID and with
        /// assigning to specified <see cref="Common.TreeNode`1"/> instance.
        /// </summary>
        /// <param name="owner"><see cref="Common.TreeNode`1"/> instance.</param>
        /// <param name="tokenId">Token ID for translation.</param>
        /// <param name="onClick">Click event handler.</param>
        /// <param name="enabled">Is this menu item enabled or not.</param>
        /// <param name="shortcut">Shortcut.</param>
        /// <param name="radioGroup">Menu radio group.</param>
        private TreeNode <CustomMenuItem> MakeItem(
            TreeNode <CustomMenuItem> owner
            , R.sections.MenuItems.strings tokenId
            , UnityAction onClick       = null
            , bool enabled              = true
            , string shortcut           = null
            , MenuRadioGroup radioGroup = null
            )
        {
            DebugEx.VerboseFormat("MainMenuUI.MakeItem(owner = {0}, tokenId = {1}, onClick = {2}, enabled = {3}, shortcut = {4}, radioGroup = {5})", owner, tokenId, onClick, enabled, shortcut, radioGroup);

            return(MenuItem.Create(owner, tokenId, onClick, enabled, mScript, shortcut, radioGroup));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Common.UI.MenuItems.MenuItem"/> class.
        /// </summary>
        /// <param name="tokenId">Token ID for translation.</param>
        /// <param name="tokenArguments">Arguments for provided token ID.</param>
        /// <param name="text">Menu item text.</param>
        /// <param name="enabled">Is this menu item enabled or not.</param>
        /// <param name="onClick">Click event handler.</param>
        /// <param name="shortcutHandler">Shortcut handler.</param>
        /// <param name="shortcut">Shortcut.</param>
        /// <param name="radioGroup">Menu radio group.</param>
        private MenuItem(
            R.sections.MenuItems.strings tokenId          = R.sections.MenuItems.strings.Count
            , object[]                     tokenArguments = null
            , string text         = null
            , bool enabled        = false
            , UnityAction onClick = null
            , IShortcutHandler shortcutHandler = null
            , KeyboardInput shortcut           = null
            , MenuRadioGroup radioGroup        = null
            )
            : base()
        {
            DebugEx.VerboseFormat("Created MenuItem(tokenId = {0}, tokenArguments = {1}, text = {2}, enabled = {3}, onClick = {4}, shortcutHandler = {5}, shortcut = {6}, radioGroup = {7}) object"
                                  , tokenId
                                  , tokenArguments
                                  , text
                                  , enabled
                                  , onClick
                                  , shortcutHandler
                                  , shortcut
                                  , radioGroup);

            mTokenId         = tokenId;
            mTokenArguments  = tokenArguments;
            mText            = text;
            mEnabled         = enabled;
            mOnClick         = onClick;
            mShortcutHandler = shortcutHandler;
            mShortcut        = shortcut;
            mRadioGroup      = null;

            if (mShortcut == null)
            {
                mShortcutHandler = null;
            }

            if ((mShortcutHandler != null) && mEnabled)
            {
                mShortcutHandler.RegisterShortcut(this);
            }

            if (radioGroup != null)
            {
                radioGroup.Register(this);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Common.UI.MenuItems.MenuItem"/> class.
        /// </summary>
        /// <param name="tokenId">Token ID for translation.</param>
        /// <param name="tokenArguments">Arguments for provided token ID.</param>
        /// <param name="text">Menu item text.</param>
        /// <param name="enabled">Is this menu item enabled or not.</param>
        /// <param name="onClick">Click event handler.</param>
        /// <param name="shortcutHandler">Shortcut handler.</param>
        /// <param name="shortcut">Shortcut.</param>
        /// <param name="radioGroup">Menu radio group.</param>
        private MenuItem(
                           R.sections.MenuItems.strings tokenId         = R.sections.MenuItems.strings.Count
                         , object[]                     tokenArguments  = null
                         , string                       text            = null
                         , bool                         enabled         = false
                         , UnityAction                  onClick         = null
                         , IShortcutHandler             shortcutHandler = null
                         , KeyboardInput                shortcut        = null
                         , MenuRadioGroup               radioGroup      = null
                        )
            : base()
        {
            DebugEx.VerboseFormat("Created MenuItem(tokenId = {0}, tokenArguments = {1}, text = {2}, enabled = {3}, onClick = {4}, shortcutHandler = {5}, shortcut = {6}, radioGroup = {7}) object"
                                  , tokenId
                                  , tokenArguments
                                  , text
                                  , enabled
                                  , onClick
                                  , shortcutHandler
                                  , shortcut
                                  , radioGroup);

            mTokenId         = tokenId;
            mTokenArguments  = tokenArguments;
            mText            = text;
            mEnabled         = enabled;
            mOnClick         = onClick;
            mShortcutHandler = shortcutHandler;
            mShortcut        = shortcut;
            mRadioGroup      = null;

            if (mShortcut == null)
            {
                mShortcutHandler = null;
            }

            if ((mShortcutHandler != null) && mEnabled)
            {
                mShortcutHandler.RegisterShortcut(this);
            }

            if (radioGroup != null)
            {
                radioGroup.Register(this);
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Return the string value associated with a particular resource ID.
        /// </summary>
        /// <returns>Localized string.</returns>
        /// <param name="id">String resource ID.</param>
        public static string GetString(R.sections.MenuItems.strings id)
        {
            UnityTranslationInternal.Translator.LoadSection(R.sections.SectionID.MenuItems, false);

            if (
                UnityTranslationInternal.Translator.tokens[(int)R.sections.SectionID.MenuItems + 1].selectedLanguage != null
                &&
                UnityTranslationInternal.Translator.tokens[(int)R.sections.SectionID.MenuItems + 1].selectedLanguage.stringValues[(int)id] != null
                )
            {
                return(UnityTranslationInternal.Translator.tokens[(int)R.sections.SectionID.MenuItems + 1].selectedLanguage.stringValues[(int)id]);
            }
            else
            {
                return(UnityTranslationInternal.Translator.tokens[(int)R.sections.SectionID.MenuItems + 1].defaultLanguage.stringValues[(int)id]);
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Common.UI.MenuItems.MenuItem"/> class with given token ID and with
        /// assigning to specified <see cref="Common.TreeNode`1"/> instance.
        /// </summary>
        /// <param name="owner"><see cref="Common.TreeNode`1"/> instance.</param>
        /// <param name="tokenId">Token ID for translation.</param>
        /// <param name="onClick">Click event handler.</param>
        /// <param name="enabled">Is this menu item enabled or not.</param>
        /// <param name="shortcutHandler">Shortcut handler.</param>
        /// <param name="shortcut">Shortcut.</param>
        /// <param name="radioGroup">Menu radio group.</param>
        public static TreeNode <CustomMenuItem> Create(
            TreeNode <CustomMenuItem> owner
            , R.sections.MenuItems.strings tokenId
            , UnityAction onClick = null
            , bool enabled        = true
            , IShortcutHandler shortcutHandler = null
            , string shortcut           = null
            , MenuRadioGroup radioGroup = null
            )
        {
            DebugEx.VerboseFormat("MenuItem.Create(owner = {0}, tokenId = {1}, onClick = {2}, enabled = {3}, shortcutHandler = {4}, shortcut = {5}, radioGroup = {6})"
                                  , owner
                                  , tokenId
                                  , onClick
                                  , enabled
                                  , shortcutHandler
                                  , shortcut
                                  , radioGroup);

            MenuItem item = new MenuItem(
                tokenId                                                       // Token ID
                , null                                                        // Token arguments
                , null                                                        // Text
                , enabled                                                     // Enabled
                , onClick                                                     // Click event handler
                , shortcutHandler                                             // Shortcut handler
                , KeyboardInput.FromString(shortcut)                          // Shortcut
                , radioGroup                                                  // Menu radio group
                );

            TreeNode <CustomMenuItem> node = owner.AddChild(item);

            item.mNode = node;

            return(node);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Common.UI.MenuItems.MenuItem"/> class.
        /// </summary>
        /// <param name="tokenId">Token ID for translation.</param>
        /// <param name="tokenArguments">Arguments for provided token ID.</param>
        /// <param name="text">Menu item text.</param>
        /// <param name="enabled">Is this menu item enabled or not.</param>
        /// <param name="onClick">Click event handler.</param>
        /// <param name="shortcutHandler">Shortcut handler.</param>
        /// <param name="shortcut">Shortcut.</param>
        /// <param name="radioGroup">Menu radio group.</param>
        private MenuItem(
						   R.sections.MenuItems.strings tokenId         = R.sections.MenuItems.strings.Count
						 , object[]                     tokenArguments  = null
						 , string                       text            = null
						 , bool                         enabled         = false
						 , UnityAction                  onClick         = null
						 , IShortcutHandler             shortcutHandler = null
						 , KeyboardInput                shortcut        = null
						 , MenuRadioGroup               radioGroup      = null
						)
            : base()
        {
            mTokenId         = tokenId;
            mTokenArguments  = tokenArguments;
            mText            = text;
            mEnabled         = enabled;
            mOnClick         = onClick;
            mShortcutHandler = shortcutHandler;
            mShortcut        = shortcut;
            mRadioGroup      = null;

            if (mShortcut == null)
            {
                mShortcutHandler = null;
            }

            if ((mShortcutHandler != null) && mEnabled)
            {
                mShortcutHandler.RegisterShortcut(this);
            }

            if (radioGroup != null)
            {
                radioGroup.Register(this);
            }
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Return the string value associated with a particular resource ID, substituting the format arguments as defined in string.Format.
 /// </summary>
 /// <returns>Localized string.</returns>
 /// <param name="id">String resource ID.</param>
 /// <param name="formatArgs">Format arguments.</param>
 public static string GetString(R.sections.MenuItems.strings id, params object[] formatArgs)
 {
     return(string.Format(GetString(id), formatArgs));
 }