public CustomGameDialog(ITranslations translations, GameSession session) : base(translations, "CustomGameDialog.ui", "customgame") { Game game; selection_done = false; this.session = session; games = session.GameManager.AvailableGames; drawing_area = new GameDrawingArea(); drawing_area.UseSolutionArea = false; drawing_area.SetSizeRequest(preview_vbox.WidthRequest, preview_vbox.HeightRequest); preview_vbox.Add(drawing_area); drawing_area.Visible = true; treeview.HeadersClickable = true; CreateColumnName(); CreateColumnType(); CreateColumnSelected(); LoadGames(); treeview.Model = games_store; game = (Game)Activator.CreateInstance(games [0].TypeOf, true); game.Translations = Translations; game.Variant = 0; game.Begin(); drawing_area.Drawable = game; drawing_area.Question = game.Question; treeview.ColumnsAutosize(); }
public CommandLine(ITranslations translations, string [] args) { Translations = translations; this.args = args; RandomOrder = true; play_list = new int [0]; }
public CustomGameDialog(ITranslations translations, GameSession session) : base(translations, "CustomGameDialog.ui", "customgame") { Game game; selection_done = false; this.session = session; games = session.GameManager.AvailableGames; drawing_area = new GameDrawingArea (); drawing_area.UseSolutionArea = false; drawing_area.SetSizeRequest (preview_vbox.WidthRequest, preview_vbox.HeightRequest); preview_vbox.Add (drawing_area); drawing_area.Visible = true; treeview.HeadersClickable = true; CreateColumnName (); CreateColumnType (); CreateColumnSelected (); LoadGames (); treeview.Model = games_store; game = (Game) Activator.CreateInstance (games [0].TypeOf, true); game.Translations = Translations; game.Variant = 0; game.Begin (); drawing_area.Drawable = game; drawing_area.Question = game.Question; treeview.ColumnsAutosize (); }
public PlayerHistoryDialog(ITranslations translations, PlayerHistory history) : base(translations, "PlayerHistoryDialog.ui", "playerhistory") { string intro, built; intro = Catalog.GetString("The graph below shows the player's game score evolution."); if (history.Games.Count < 2) { built = Catalog.GetString("You need more than one game session recorded to see the score evolution."); } else { built = String.Format(Catalog.GetPluralString("It is built using the results of {0} recorded game session.", "It is built using the results of the last {0} recorded game sessions.", history.Games.Count), history.Games.Count); } // Translators: "The graph below" + "It is built using" sentences label_playerhistory.Text = String.Format(Catalog.GetString("{0} {1}"), intro, built); drawing_area = new CairoPreview(translations, history); drawing_area.SetSizeRequest(history_preview.WidthRequest, history_preview.HeightRequest); history_preview.Add(drawing_area); drawing_area.Visible = true; checkbutton_total.Label = Catalog.GetString("Total"); checkbutton_logic.Label = GameTypesDescription.GetLocalized(translations, GameTypes.LogicPuzzle); checkbutton_calculation.Label = GameTypesDescription.GetLocalized(translations, GameTypes.Calculation); checkbutton_memory.Label = GameTypesDescription.GetLocalized(translations, GameTypes.Memory); checkbutton_verbal.Label = GameTypesDescription.GetLocalized(translations, GameTypes.VerbalAnalogy); checkbutton_total.Active = checkbutton_memory.Active = checkbutton_logic.Active = checkbutton_calculation.Active = checkbutton_verbal.Active = true; }
public PlayerHistoryDialog(ITranslations translations, PlayerHistory history) : base(translations, "PlayerHistoryDialog.ui", "playerhistory") { string intro, built; intro = Catalog.GetString ("The graph below shows the player's game score evolution."); if (history.Games.Count < 2) { built = Catalog.GetString ("You need more than one game session recorded to see the score evolution."); } else { built = String.Format (Catalog.GetPluralString ("It is built using the results of {0} recorded game session.", "It is built using the results of the last {0} recorded game sessions.", history.Games.Count), history.Games.Count); } // Translators: "The graph below" + "It is built using" sentences label_playerhistory.Text = String.Format (Catalog.GetString ("{0} {1}"), intro, built); drawing_area = new CairoPreview (translations, history); drawing_area.SetSizeRequest (history_preview.WidthRequest, history_preview.HeightRequest); history_preview.Add (drawing_area); drawing_area.Visible = true; checkbutton_total.Label = Catalog.GetString ("Total"); checkbutton_logic.Label = GameTypesDescription.GetLocalized (translations, GameTypes.LogicPuzzle); checkbutton_calculation.Label = GameTypesDescription.GetLocalized (translations, GameTypes.Calculation); checkbutton_memory.Label = GameTypesDescription.GetLocalized (translations, GameTypes.Memory); checkbutton_verbal.Label = GameTypesDescription.GetLocalized (translations, GameTypes.VerbalAnalogy); checkbutton_total.Active = checkbutton_memory.Active = checkbutton_logic.Active = checkbutton_calculation.Active = checkbutton_verbal.Active = true; }
public string GetResult(ITranslations translations) { string s; if (GamesPlayed >= 10) { int percentage_won = (int)(100 * GamesWon / GamesPlayed); if (percentage_won >= 90) { s = translations.GetString("Outstanding results"); } else if (percentage_won >= 70) { s = translations.GetString("Excellent results"); } else if (percentage_won >= 50) { s = translations.GetString("Good results"); } else if (percentage_won >= 30) { s = translations.GetString("Poor results"); } else { s = translations.GetString("Disappointing results"); } } else { s = string.Empty; } return(s); }
public PreferencesDialog(ITranslations translations, PlayerHistory history) : base(translations, "PreferencesDialog.ui", "preferences") { this.history = history; prefspinbutton.Value = Preferences.Get <int> (Preferences.MemQuestionTimeKey); prefcheckbutton.Active = Preferences.Get <bool> (Preferences.MemQuestionWarnKey); maxstoredspinbutton.Value = Preferences.Get <int> (Preferences.MaxStoredGamesKey); minplayedspinbutton.Value = Preferences.Get <int> (Preferences.MinPlayedGamesKey); colorblindcheckbutton.Active = Preferences.Get <bool> (Preferences.ColorBlindKey); englishcheckbutton.Active = Preferences.Get <bool> (Preferences.EnglishKey); loadextensionscheckbutton.Active = Preferences.Get <bool> (Preferences.LoadPlugginsKey); usesoundscheckbutton.Active = Preferences.Get <bool> (Preferences.SoundsKey); switch ((GameDifficulty)Preferences.Get <int> (Preferences.DifficultyKey)) { case GameDifficulty.Easy: rb_easy.Active = rb_easy.HasFocus = true; break; case GameDifficulty.Medium: rb_medium.Active = rb_medium.HasFocus = true; break; case GameDifficulty.Master: rb_master.Active = rb_master.HasFocus = true; break; } ListStore store = new ListStore(typeof(string), typeof(Theme)); // DisplayName, theme reference CellRenderer layout_cell = new CellRendererText(); themes_combobox.Model = store; themes_combobox.PackStart(layout_cell, true); themes_combobox.SetCellDataFunc(layout_cell, ComboBoxCellFunc); foreach (Theme theme in ThemeManager.Themes) { store.AppendValues(Catalog.GetString(theme.LocalizedName), theme); } // Default value TreeIter iter; bool more = store.GetIterFirst(out iter); while (more) { Theme theme = (Theme)store.GetValue(iter, COLUMN_VALUE); if (String.Compare(theme.Name, Preferences.Get <string> (Preferences.ThemeKey), true) == 0) { themes_combobox.SetActiveIter(iter); break; } more = store.IterNext(ref iter); } #if !MONO_ADDINS loadextensionscheckbutton.Visible = false; #endif }
public CountDownView(ITranslations translations, EventHandler OnFinish) { Translations = translations; timer = new System.Timers.Timer (); timer.Elapsed += TimerUpdater; timer.Interval = (1 * 1000); // 1 second finish = OnFinish; }
public event EventHandler DrawRequest; // Not used in this view public CountDownView(ITranslations translations, EventHandler OnFinish) { Translations = translations; timer = new System.Timers.Timer(); timer.Elapsed += TimerUpdater; timer.Interval = (1 * 1000); // 1 second finish = OnFinish; }
public FinishView(ITranslations translations, GameSession session) { Translations = translations; this.session = session; tips = new List <string> (); cached_sessionid = -1; game_tips = new GameTips (translations); }
public FinishView(ITranslations translations, GameSession session) { Translations = translations; this.session = session; tips = new List <string> (); cached_sessionid = -1; game_tips = new GameTips(translations); }
public GtkClient(ITranslations translations) { Translations = translations; if (Preferences.Get <bool> (Preferences.EnglishKey) == false) { translations.Init("gbrainy", Defines.GNOME_LOCALE_DIR); } Unix.FixLocaleInfo(); }
public PreferencesDialog(ITranslations translations, PlayerHistory history) : base(translations, "PreferencesDialog.ui", "preferences") { this.history = history; prefspinbutton.Value = Preferences.Get <int> (Preferences.MemQuestionTimeKey); prefcheckbutton.Active = Preferences.Get <bool> (Preferences.MemQuestionWarnKey); maxstoredspinbutton.Value = Preferences.Get <int> (Preferences.MaxStoredGamesKey); minplayedspinbutton.Value = Preferences.Get <int> (Preferences.MinPlayedGamesKey); colorblindcheckbutton.Active = Preferences.Get <bool> (Preferences.ColorBlindKey); englishcheckbutton.Active = Preferences.Get <bool> (Preferences.EnglishKey); loadextensionscheckbutton.Active = Preferences.Get <bool> (Preferences.LoadPlugginsKey); switch ((GameDifficulty) Preferences.Get <int> (Preferences.DifficultyKey)) { case GameDifficulty.Easy: rb_easy.Active = rb_easy.HasFocus = true; break; case GameDifficulty.Medium: rb_medium.Active = rb_medium.HasFocus = true; break; case GameDifficulty.Master: rb_master.Active = rb_master.HasFocus = true; break; } ListStore store = new ListStore (typeof (string), typeof (Theme)); // DisplayName, theme reference CellRenderer layout_cell = new CellRendererText (); themes_combobox.Model = store; themes_combobox.PackStart (layout_cell, true); themes_combobox.SetCellDataFunc (layout_cell, ComboBoxCellFunc); foreach (Theme theme in ThemeManager.Themes) store.AppendValues (Catalog.GetString(theme.LocalizedName), theme); // Default value TreeIter iter; bool more = store.GetIterFirst (out iter); while (more) { Theme theme = (Theme) store.GetValue (iter, COLUMN_VALUE); if (String.Compare (theme.Name, Preferences.Get <string> (Preferences.ThemeKey), true) == 0) { themes_combobox.SetActiveIter (iter); break; } more = store.IterNext (ref iter); } #if !MONO_ADDINS loadextensionscheckbutton.Visible = false; #endif }
// Type enum to string representation (locale sensitive) public static string GetLocalized(ITranslations translations, GameTypes type) { switch (type) { case GameTypes.LogicPuzzle: return translations.GetString ("Logic"); case GameTypes.Memory: return translations.GetString ("Memory"); case GameTypes.Calculation: return translations.GetString ("Calculation"); case GameTypes.VerbalAnalogy: return translations.GetString ("Verbal"); default: throw new InvalidOperationException ("Unknown game type"); } }
public GameSession(ITranslations translations) { Translations = translations; id = 0; game_manager = new GameManager(); play_list = new GameSessionPlayList(game_manager); game_time = TimeSpan.Zero; timer = new System.Timers.Timer(); timer.Elapsed += TimerUpdater; timer.Interval = (1 * 1000); // 1 second controler = new ViewsControler(translations, this); Status = SessionStatus.NotPlaying; player_history = new PlayerHistory(); history = new GameSessionHistoryExtended(); }
public string GetGamesSummary(ITranslations translations) { String s = string.Empty; #if MONO_ADDINS s += translations.GetString("Extensions database:") + " " + System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "gbrainy"); s += Environment.NewLine; #endif // Translators: 'Games registered' is the games know to gbrainy (build-in and load from addins-in and external files) s += String.Format(translations.GetString("{0} games registered: {1} logic puzzles, {2} calculation trainers, {3} memory trainers, {4} verbal analogies"), cnt_logic + cnt_memory + cnt_calculation + cnt_verbal, cnt_logic, cnt_calculation, cnt_memory, cnt_verbal); return(s); }
public GameSession(ITranslations translations) { Translations = translations; id = 0; game_manager = new GameManager (); play_list = new GameSessionPlayList (game_manager); game_time = TimeSpan.Zero; timer = new System.Timers.Timer (); timer.Elapsed += TimerUpdater; timer.Interval = (1 * 1000); // 1 second controler = new ViewsControler (translations, this); Status = SessionStatus.NotPlaying; player_history = new PlayerHistory (); history = new GameSessionHistoryExtended (); }
public string GetGamesSummary(ITranslations translations) { String s = string.Empty; #if MONO_ADDINS s += translations.GetString("Extensions database:") + " " + System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "gbrainy"); s += Environment.NewLine; #endif // Translators: 'Games registered' is the games know to gbrainy (build-in and load from addins-in and external files) int total = cnt_logic + cnt_memory + cnt_calculation + cnt_verbal; s += String.Format(translations.GetPluralString("{0} game registered:", "{0} games registered:", total) + Environment.NewLine, total); s += AddString(String.Format(translations.GetPluralString("{0} logic puzzle", "{0} logic puzzles", cnt_logic), cnt_logic)); s += AddString(String.Format(translations.GetPluralString("{0} calculation trainer", "{0} calculation trainers", cnt_calculation), cnt_calculation)); s += AddString(String.Format(translations.GetPluralString("{0} memory trainer", "{0} memory trainers", cnt_memory), cnt_memory)); s += AddString(String.Format(translations.GetPluralString("{0} verbal analogy", "{0} verbal analogies", cnt_verbal), cnt_verbal)); return(s); }
// Type enum to string representation (locale sensitive) static public string GetLocalized(ITranslations translations, GameTypes type) { switch (type) { case GameTypes.LogicPuzzle: return(translations.GetString("Logic")); case GameTypes.Memory: return(translations.GetString("Memory")); case GameTypes.Calculation: return(translations.GetString("Calculation")); case GameTypes.VerbalAnalogy: return(translations.GetString("Verbal")); default: throw new InvalidOperationException("Unknown game type"); } }
private static Tuple <Type, ITranslations> CreateTranslations(Assembly assembly) { foreach (var type in assembly.GetTypes().Where(type => !type.IsAbstract)) { if (type.GetInterfaces().All(x => x != typeof(ITranslations))) { continue; } ITranslations translations = null; var constructor = type.GetConstructor(Type.EmptyTypes); if (constructor != null) { translations = constructor.Invoke(null) as ITranslations; } else { var value = Array .Find(type.GetProperties(BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.Public), property => property.PropertyType == type)?.GetValue(null); if (value != null) { translations = value as ITranslations; } } if (translations == null) { Log.Error( $"{type.FullName} is a valid Translation class, but it cannot be loaded. It either doesn't have a public default constructor without any arguments or a static property of the {type.FullName} type!"); continue; } return(new Tuple <Type, ITranslations>(type, translations)); } return(null); }
public Indication(ITranslations translations, Type type, object obj) { this.type = type; this.obj = obj; Translations = translations; }
public GtkClient(ITranslations translations) { Translations = translations; if (Preferences.Get <bool> (Preferences.EnglishKey) == false) { translations.Init ("gbrainy", Defines.GNOME_LOCALE_DIR); } Unix.FixLocaleInfo (); }
public CairoPreview(ITranslations translations, PlayerHistory history) { view = new PlayerHistoryView (translations, history); }
/// <summary> /// Returns a json with translation resources /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='lang'> /// </param> public static IDictionary <string, string> GetTranslations(this ITranslations operations, string lang) { return(operations.GetTranslationsAsync(lang).GetAwaiter().GetResult()); }
public void Construct() { RegisterDefaultServices(); translations = new TranslationsCatalog(); }
public BuilderDialog(ITranslations translations, string resourceName, string dialogName) : this((System.Reflection.Assembly) null, resourceName, dialogName) { Translations = translations; }
internal FigureTypeConverter(ITranslations translations) { Translations = translations; }
public PdfExporter(ITranslations translations) { Translations = translations; }
public ColorPalette(ITranslations translations) { Translations = translations; alpha = 1; LoadColorArrays(); }
public PlayerHistoryView(ITranslations translations, PlayerHistory history) { Translations = translations; this.history = history; ShowLogic = ShowMemory = ShowCalculation = ShowVerbal = true; }
public CairoPreview(ITranslations translations, PlayerHistory history) { view = new PlayerHistoryView(translations, history); }
public ChallengeTwoDigits(ITranslations translations) : base(translations) { }
public ViewsControler(ITranslations translations, GameSession session) { welcome = new WelcomeView(translations); finish = new FinishView(translations, session); }
public GameTips(ITranslations translations) { Translations = translations; }
public BuilderDialog(ITranslations translations, string resourceName, string dialogName) : this(new Builder(resourceName, null), dialogName) { Translations = translations; }
public ChallengeOdds(ITranslations translations) : base(translations) { }
//Lists the games without tip static void GetStatistics(GameManager gm, ITranslations translations) { question_answer = multiple_options = words_options = words_compare = games_xml = 0; tip = rationale = 0; GameLocator [] games = gm.AvailableGames; foreach (GameLocator locator in games) { Game game = (Game)Activator.CreateInstance(locator.TypeOf, true); game.Variant = locator.Variant; game.Translations = translations; if (game as AnalogiesQuestionAnswer != null) { question_answer++; } else if (game as AnalogiesMultipleOptions != null) { multiple_options++; } else if (game as AnalogiesPairOfWordsOptions != null) { words_options++; } else if (game as AnalogiesPairOfWordsCompare != null) { words_compare++; } if (game as GameXml != null) { games_xml++; } game.Begin(); if (String.IsNullOrEmpty(game.TipString) == false) { tip++; } if (String.IsNullOrEmpty(game.Rationale) == false) { rationale++; } } int verbal = question_answer + multiple_options + words_options + words_compare; int nonverbal = games.Length - verbal; Console.WriteLine("All Games (including variations) - " + games.Length); Console.WriteLine(" Games (no-verbal): {0} ({1}%)", nonverbal, nonverbal * 100 / games.Length); Console.WriteLine(" Types"); Console.WriteLine(" Harcoded: {0} ({1}%)", nonverbal - games_xml, (nonverbal - games_xml) * 100 / nonverbal); Console.WriteLine(" Xml: {0} ({1}%)", games_xml, games_xml * 100 / nonverbal); // In verbal analogies, tip does not make much sense Console.WriteLine(" No tip: {0} ({1}%)", nonverbal - tip, (nonverbal - tip) * 100 / nonverbal); Console.WriteLine(" Games (verbal): {0} ({1}%)", verbal, verbal * 100 / games.Length); Console.WriteLine(" No rationale: {0} ({1}%)", (games.Length - rationale), (games.Length - rationale) * 100 / games.Length); Console.WriteLine(""); Console.WriteLine("Verbal analogies"); Console.WriteLine(" Question answer {0}", question_answer); Console.WriteLine(" Multiple options {0}", multiple_options); Console.WriteLine(" Pair of words options {0}", words_options); Console.WriteLine(" Pair of words compare {0} (evil)", words_compare); }
public BuilderDialog(ITranslations translations, string resourceName, string dialogName) : this(new Builder (resourceName, null),dialogName) { Translations = translations; }
public string GetResult(ITranslations translations) { string s; if (GamesPlayed >= 10) { int percentage_won = (int) (100 * GamesWon / GamesPlayed); if (percentage_won >= 90) s = translations.GetString ("Outstanding results"); else if (percentage_won >= 70) s = translations.GetString ("Excellent results"); else if (percentage_won >= 50) s = translations.GetString ("Good results"); else if (percentage_won >= 30) s = translations.GetString ("Poor results"); else s = translations.GetString ("Disappointing results"); } else s = string.Empty; return s; }
/// <summary> /// Returns a json with translation resources /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='lang'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <IDictionary <string, string> > GetTranslationsAsync(this ITranslations operations, string lang, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.GetTranslationsWithHttpMessagesAsync(lang, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
public ChallengeEvens(ITranslations translations) : base(translations) { }
public Challenge(ITranslations translations) { Translations = translations; }
public WelcomeView(ITranslations translations) { Container container; DrawableArea drawable_area; double y = 0.22; Translations = translations; containers = new List <Toolkit.Container> (); /* Logic */ container = new HorizontalContainer(0.05, y, 0.95, space); containers.Add(container); drawable_area = new DrawableArea(0.17, image_size); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly("logic-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea(0.75, space); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping(0, 0, Translations.GetString("Logic puzzles. Challenge your reasoning and thinking skills."), e.Width); }; /* Math */ y += space; container = new HorizontalContainer(0.05, y, 0.95, space); containers.Add(container); drawable_area = new DrawableArea(0.17, image_size); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly("math-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea(0.75, space); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping(0, 0, Translations.GetString("Mental calculation. Arithmetical operations that test your mental calculation abilities."), e.Width); }; /* Memory */ y += space; container = new HorizontalContainer(0.05, y, 0.95, space); containers.Add(container); drawable_area = new DrawableArea(0.17, image_size); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly("memory-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea(0.75, space); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping(0, 0, Translations.GetString("Memory trainers. To prove your short term memory."), e.Width); }; /* Verbal */ y += space; container = new HorizontalContainer(0.05, y, 0.95, space); containers.Add(container); drawable_area = new DrawableArea(0.17, image_size); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly("verbal-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea(0.75, space); container.AddChild(drawable_area); drawable_area.DrawEventHandler += delegate(object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping(0, 0, Translations.GetString("Verbal analogies. Challenge your verbal aptitude."), e.Width); }; }
public PdfExportDialog(GameManager manager, ITranslations translations) : base(translations, "PdfExportDialog.ui", "pdfexportbox") { pdfExporter = new PdfExporter (translations); this.manager = manager; games_spinbutton.Value = 10; checkbox_logic.Active = checkbox_calculation.Active = checkbox_verbal.Active = true; // Use defaults from Preferences switch ((GameDifficulty) Preferences.Get <int> (Preferences.DifficultyKey)) { case GameDifficulty.Easy: rb_easy.Active = rb_easy.HasFocus = true; break; case GameDifficulty.Medium: rb_medium.Active = rb_medium.HasFocus = true; break; case GameDifficulty.Master: rb_master.Active = rb_master.HasFocus = true; break; } // File selection string def_file; def_file = System.IO.Path.Combine ( Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments), // Translators: default file name used when exporting PDF files (keep the pdf extension please) Catalog.GetString ("games.pdf")); file = new BrowseFile (hbox_file, def_file, true); FileFilter[] filters = new FileFilter [2]; filters[0] = new FileFilter (); filters[0].AddPattern ("*.pdf"); filters[0].Name = Catalog.GetString ("PDF files"); filters[1] = new FileFilter (); filters[1].AddPattern ("*.*"); filters[1].Name = Catalog.GetString ("All files"); file.Filters = filters; ListStore layout_store = new ListStore (typeof (string), typeof (int)); // DisplayName, index to array CellRenderer layout_cell = new CellRendererText (); layout_combo.Model = layout_store; layout_combo.PackStart (layout_cell, true); layout_combo.SetCellDataFunc (layout_cell, ComboBoxCellFunc); int [] per_side = pdfExporter.PagesPerSide; for (int i = 0; i < per_side.Length; i++) layout_store.AppendValues (per_side[i].ToString (), per_side[i]); // Default value TreeIter iter; bool more = layout_store.GetIterFirst (out iter); while (more) { if ((int) layout_store.GetValue (iter, COLUMN_VALUE) == DEF_SIDEVALUE) { layout_combo.SetActiveIter (iter); break; } more = layout_store.IterNext (ref iter); } }
public ColorPalette(ITranslations translations) { Translations = translations; alpha = 1; LoadColorArrays (); }
public WelcomeView(ITranslations translations) { Container container; DrawableArea drawable_area; double y = 0.22; Translations = translations; containers = new List <Toolkit.Container> (); /* Logic */ container = new HorizontalContainer (0.05, y, 0.95, space); containers.Add (container); drawable_area = new DrawableArea (0.17, image_size); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly ("logic-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea (0.75, space); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping (0, 0, Translations.GetString ("Logic puzzles. Challenge your reasoning and thinking skills."), e.Width); }; /* Math */ y += space; container = new HorizontalContainer (0.05, y, 0.95, space); containers.Add (container); drawable_area = new DrawableArea (0.17, image_size); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly ("math-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea (0.75, space); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping (0, 0, Translations.GetString ("Mental calculation. Arithmetical operations that test your mental calculation abilities."), e.Width); }; /* Memory */ y += space; container = new HorizontalContainer (0.05, y, 0.95, space); containers.Add (container); drawable_area = new DrawableArea (0.17, image_size); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly ("memory-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea (0.75, space); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping (0, 0, Translations.GetString ("Memory trainers. To prove your short term memory."), e.Width); }; /* Verbal */ y += space; container = new HorizontalContainer (0.05, y, 0.95, space); containers.Add (container); drawable_area = new DrawableArea (0.17, image_size); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawImageFromAssembly ("verbal-games.svg", 0, 0, image_size, image_size); }; drawable_area = new DrawableArea (0.75, space); container.AddChild (drawable_area); drawable_area.DrawEventHandler += delegate (object sender, DrawEventArgs e) { e.Context.DrawStringWithWrapping (0, 0, Translations.GetString ("Verbal analogies. Challenge your verbal aptitude."), e.Width); }; }
public PdfExportDialog(GameManager manager, ITranslations translations) : base(translations, "PdfExportDialog.ui", "pdfexportbox") { pdfExporter = new PdfExporter(translations); this.manager = manager; games_spinbutton.Value = 10; checkbox_logic.Active = checkbox_calculation.Active = checkbox_verbal.Active = true; // Use defaults from Preferences switch ((GameDifficulty)Preferences.Get <int> (Preferences.DifficultyKey)) { case GameDifficulty.Easy: rb_easy.Active = rb_easy.HasFocus = true; break; case GameDifficulty.Medium: rb_medium.Active = rb_medium.HasFocus = true; break; case GameDifficulty.Master: rb_master.Active = rb_master.HasFocus = true; break; } // File selection string def_file; def_file = System.IO.Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), // Translators: default file name used when exporting PDF files (keep the pdf extension please) Catalog.GetString("games.pdf")); file = new BrowseFile(hbox_file, def_file, true); FileFilter[] filters = new FileFilter [2]; filters[0] = new FileFilter(); filters[0].AddPattern("*.pdf"); filters[0].Name = Catalog.GetString("PDF files"); filters[1] = new FileFilter(); filters[1].AddPattern("*.*"); filters[1].Name = Catalog.GetString("All files"); file.Filters = filters; ListStore layout_store = new ListStore(typeof(string), typeof(int)); // DisplayName, index to array CellRenderer layout_cell = new CellRendererText(); layout_combo.Model = layout_store; layout_combo.PackStart(layout_cell, true); layout_combo.SetCellDataFunc(layout_cell, ComboBoxCellFunc); int [] per_side = pdfExporter.PagesPerSide; for (int i = 0; i < per_side.Length; i++) { layout_store.AppendValues(per_side[i].ToString(), per_side[i]); } // Default value TreeIter iter; bool more = layout_store.GetIterFirst(out iter); while (more) { if ((int)layout_store.GetValue(iter, COLUMN_VALUE) == DEF_SIDEVALUE) { layout_combo.SetActiveIter(iter); break; } more = layout_store.IterNext(ref iter); } }
public string GetGamesSummary(ITranslations translations) { String s = string.Empty; #if MONO_ADDINS s += translations.GetString ("Extensions database:") + " " + System.IO.Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.ApplicationData), "gbrainy"); s += Environment.NewLine; #endif // Translators: 'Games registered' is the games know to gbrainy (build-in and load from addins-in and external files) s += String.Format (translations.GetString ("{0} games registered: {1} logic puzzles, {2} calculation trainers, {3} memory trainers, {4} verbal analogies"), cnt_logic + cnt_memory + cnt_calculation + cnt_verbal, cnt_logic, cnt_calculation, cnt_memory, cnt_verbal); return s; }