コード例 #1
0
        /// <summary>
        /// Create a MenuBuilder with the default size and position data and a back button, but no content.
        /// </summary>
        /// <param name="title">The title to give the menu screen.</param>
        /// <param name="returnScreen">The screen to return to when the user hits back.</param>
        /// <param name="backButton">The back button.</param>
        /// <returns>The MenuBuilder object.</returns>
        public static MenuBuilder CreateMenuBuilderWithBackButton(string title, MenuScreen returnScreen, out MenuButton backButton)
        {
            MenuButton  _backButton = null;
            MenuBuilder builder     = CreateMenuBuilder(title)
                                      .AddControls(
                new SingleContentLayout(new AnchoredPosition(
                                            new Vector2(0.5f, 0.5f),
                                            new Vector2(0.5f, 0.5f),
                                            new Vector2(0f, -64f)
                                            )),
                c => c.AddMenuButton(
                    "BackButton",
                    new MenuButtonConfig
            {
                Label        = Lang.Get("NAV_BACK", "MainMenu"),
                CancelAction = _ => ((Patch.UIManager)UIManager.instance).UIGoToDynamicMenu(returnScreen),
                SubmitAction = _ => ((Patch.UIManager)UIManager.instance).UIGoToDynamicMenu(returnScreen),
                Proceed      = true,
                Style        = MenuButtonStyle.VanillaStyle
            },
                    out _backButton
                    )
                );

            backButton = _backButton;
            return(builder);
        }
コード例 #2
0
ファイル: Model.cs プロジェクト: peku33/ScrabbleSolver
 public Model(Dictionary.Dictionary GameDictionary, Language.Language Language)
 {
     this.GameLanguage = Language;
     TilesSet = new TilesSet(Language);
     this.Players = new List<Player.Player>();
     this.GameBoard = new Board.Board();
     this.GameDictionary = GameDictionary;
     this.PassCounter = 0;
 }
コード例 #3
0
ファイル: Country.cs プロジェクト: rodouy/IAdvisor
        /// <summary>
        /// TODO add description
        /// </summary>
        /// <param name="pLanguage"></param>
        /// <returns></returns>
        public bool ChangeLanguage(Language.Language pLanguage)
        {
            bool lResult = false;

            if (pLanguage != null)
            {
                this.LanguageId = pLanguage.LanguageId;
                lResult         = true;
            }
            return(lResult);
        }
コード例 #4
0
ファイル: Country.cs プロジェクト: rodouy/IAdvisor
 /// <summary>
 /// Constructor with parameters
 /// </summary>
 /// <param name="pCountryId"></param>
 /// <param name="pName"></param>
 /// <param name="pLanguageId"></param>
 /// <param name="pCapitalId"></param>
 public Country(long pCountryId, String pName,
                Language.Language pLanguage, City pCapital)
 {
     this.CountryId  = pCountryId;
     this.Name       = pName;
     this.LanguageId = pLanguage.LanguageId;
     this.CapitalId  = pCapital.CityId;
     this.CityList   = new List <City>();
     if (pCapital != null)
     {
         this.CityList.Add(pCapital);
     }
     this.RegionList = new List <Region>();
 }
コード例 #5
0
        public static bool GuessValidation(string i_UserGuess)
        {
            bool valid = false;

            if (i_UserGuess == "Q")
            {
                valid = true;
            }
            else
            {
                if (!(Language.WordBelongToLanguage(i_UserGuess) && Language.NoDuplicates(i_UserGuess)))
                {
                    throw new Exception(Messages.GetMessage(13));
                }
                else
                {
                    if (i_UserGuess.Length != m_ComputerPattern.Length)
                    {
                        if (i_UserGuess.Length > m_ComputerPattern.Length)
                        {
                            throw new Exception(Messages.GetMessage(11));
                        }
                        else
                        {
                            throw new Exception(Messages.GetMessage(12));
                        }
                    }
                    else
                    {
                        valid = true;
                    }
                }
            }

            return(valid);
        }
コード例 #6
0
ファイル: frmMain.cs プロジェクト: rmbzlib/mcskin3d
        private void loadFile(string path)
        {
            langPath = path;
            StreamReader sr = new StreamReader(langPath, System.Text.Encoding.Unicode);
            try
            {
                loadedLang = Language.Language.Parse(sr);
                curLang = loadedLang;
            }
            catch (NoHeaderException ex)
            {
            }
            catch (ParseErrorException ex)
            {
            }
            sr.Close();
            sr = null;
            groups = new Dictionary<string, ListViewGroup>();

            lvItemsOthers.Items.Clear();
            lvItemsOthers.Groups.Clear();
            foreach (KeyValuePair<string, string> o in curLang.OtherTable)
            {
                string name = o.Key;
                string value = o.Value;
                string groupstring = "Others";
                ListViewGroup grFromHeader = getGroupFromHeader(groupstring, lvItemsOthers);
                if (grFromHeader != null)
                {
                    ListViewItem item = new ListViewItem();
                    item.Group = grFromHeader;
                    item.Text = name;
                    item.Tag = (name == "Culture") ? "cb" : "txt";
                    item.SubItems.Add(value);
                    lvItemsOthers.Items.Add(item);
                }
                else
                {
                    ListViewGroup lvg = new ListViewGroup(groupstring);
                    ListViewItem item = new ListViewItem();
                    if (!groups.ContainsKey(groupstring))
                    {
                        groups.Add(groupstring, lvg);
                        lvItemsOthers.Groups.Add(lvg);
                    }
                    item.Group = lvg;
                    item.Text = name;
                    item.Tag = (name == "Culture") ? "cb" : "txt";
                    item.SubItems.Add(value);
                    lvItemsOthers.Items.Add(item);
                }
            }

            groups = new Dictionary<string, ListViewGroup>();
            lvItems.Items.Clear();
            lvItems.Groups.Clear();
            foreach (KeyValuePair<string, string> l in curLang.StringTable)
            {
                string nonTrimmedName = l.Key;
                string name = l.Key.Trim();
                string value = l.Value;
                string groupChar = name.Substring(0, 1);
                ListViewGroup grFromHeader = getGroupFromHeader(groupChar, lvItems);
                if (grFromHeader != null)
                {
                    ListViewItem item = new ListViewItem();
                    item.Group = grFromHeader;
                    item.Text = name;
                    item.Tag = "txt:" + nonTrimmedName;
                    item.SubItems.Add(value);
                    lvItems.Items.Add(item);
                }
                else
                {
                    ListViewGroup lvg = new ListViewGroup(groupChar);
                    ListViewItem item = new ListViewItem();
                    if (!groups.ContainsKey(groupChar))
                    {
                        groups.Add(groupChar, lvg);
                        lvItems.Groups.Add(lvg);
                    }
                    item.Group = lvg;
                    item.Text = name;
                    item.Tag = "txt:" + nonTrimmedName;
                    item.SubItems.Add(value);
                    lvItems.Items.Add(item);
                }
            }
            setFormMode(formMode.openHalf);
            pSave.Enabled = true;
            linkSave.Enabled = true;
        }
コード例 #7
0
 // Due to the lifecycle of the UIManager object, The `EditMenus` event has to be used to create custom menus.
 // This event is called every time a UIManager is created,
 // and will also call the added action if the UIManager has already started.
 internal void InitMenuCreation()
 {
     Patch.UIManager.BeforeHideDynamicMenu += ToggleMods;
     Patch.UIManager.EditMenus             += () =>
     {
         ModScreens = new Dictionary <IMod, MenuScreen>();
         var builder = new MenuBuilder("ModListMenu");
         this.screen = builder.Screen;
         builder.CreateTitle("Mods", MenuTitleStyle.vanillaStyle)
         .SetDefaultNavGraph(new ChainedNavGraph())
         .CreateContentPane(RectTransformData.FromSizeAndPos(
                                new RelVector2(new Vector2(1920f, 903f)),
                                new AnchoredPosition(
                                    new Vector2(0.5f, 0.5f),
                                    new Vector2(0.5f, 0.5f),
                                    new Vector2(0f, -60f)
                                    )
                                ))
         .CreateControlPane(RectTransformData.FromSizeAndPos(
                                new RelVector2(new Vector2(1920f, 259f)),
                                new AnchoredPosition(
                                    new Vector2(0.5f, 0.5f),
                                    new Vector2(0.5f, 0.5f),
                                    new Vector2(0f, -502f)
                                    )
                                ))
         .AddContent(
             new NullContentLayout(),
             c => c.AddScrollPaneContent(
                 new ScrollbarConfig
         {
             CancelAction = _ => this.ApplyChanges(),
             Navigation   = new Navigation {
                 mode = Navigation.Mode.Explicit
             },
             Position = new AnchoredPosition
             {
                 ChildAnchor  = new Vector2(0f, 1f),
                 ParentAnchor = new Vector2(1f, 1f),
                 Offset       = new Vector2(-310f, 0f)
             },
             SelectionPadding = _ => (-60, 0)
         },
                 new RelLength(0f),
                 RegularGridLayout.CreateVerticalLayout(105f),
                 c =>
         {
             foreach (var modInst in ModLoader.ModInstances)
             {
                 if (modInst.Error != null)
                 {
                     continue;
                 }
                 ModToggleDelegates?toggleDels = null;
                 if (modInst.Mod is ITogglableMod itmod)
                 {
                     try
                     {
                         if (
                             modInst.Mod is not(
                                 IMenuMod {
                             ToggleButtonInsideMenu: true
                         } or
                                 ICustomMenuMod {
                             ToggleButtonInsideMenu: true
                         }
                                 )
                             )
                         {
                             var rt       = c.ContentObject.GetComponent <RectTransform>();
                             rt.sizeDelta = new Vector2(0f, rt.sizeDelta.y + 105f);
                             c.AddHorizontalOption(
                                 modInst.Name,
                                 new HorizontalOptionConfig
                             {
                                 ApplySetting = (self, ind) =>
                                 {
                                     changedMods[modInst] = ind == 1;
                                 },
                                 CancelAction = _ => this.ApplyChanges(),
                                 Label        = modInst.Name,
                                 Options      = new string[] {
                                     Lang.Get("MOH_OFF", "MainMenu"),
                                     Lang.Get("MOH_ON", "MainMenu")
                                 },
                                 RefreshSetting = (self, apply) => self.optionList.SetOptionTo(
                                     modInst.Enabled ? 1 : 0
                                     ),
                                 Style       = HorizontalOptionStyle.VanillaStyle,
                                 Description = new DescriptionInfo
                                 {
                                     Text = $"v{modInst.Mod.GetVersion()}"
                                 }
                             },
                                 out var opt
                                 );
                             opt.menuSetting.RefreshValueFromGameSettings();
                         }
                         else
                         {
                             toggleDels = new ModToggleDelegates
                             {
                                 SetModEnabled = enabled =>
                                 {
                                     changedMods[modInst] = enabled;
                                 },
                                 GetModEnabled = () => modInst.Enabled,
                                             #pragma warning disable CS0618
                                 // Kept for backwards compatability.
                                 ApplyChange = () => {  }
                                             #pragma warning restore CS0618
                             };
                         }
                     }
                     catch (Exception e)
                     {
                         Logger.APILogger.LogError(e);
                     }
                 }
コード例 #8
0
ファイル: FeedItem.cs プロジェクト: OALEX123/Asperatus
 public FeedItem()
 {
     Language = new Language.Language();
 }