Esempio n. 1
0
        protected virtual void InitContextMenu()
        {
            var c = new ContextMenuStrip();

            c.Items.Add("Cut", null, delegate { Cut(); });
            c.Items.Add("Copy", null, delegate { Copy(); });
            c.Items.Add("Paste", null, delegate { Paste(); });
            c.Items.Add("Delete", null, delegate { SelectedText = ""; });
            c.Items.Add("-");
            c.Items.Add("Select All", null, delegate { SelectAll(); });
            c.Items.Add("-");
            c.Items.Add("Upcase", null, delegate { SelectedText = SelectedText.ToUpper(); });
            c.Items.Add("Downcase", null, delegate { SelectedText = SelectedText.ToLower(); });
            c.Items.Add("-");

            ContextMenuStrip = c;
        }
            private void UpdateSaveLabel()
            {
                if (string.IsNullOrEmpty(SelectedText))
                {
                    SaveLabel = AppStrings.Toolbar_Save;
                    return;
                }

                if (Regex.IsMatch(SelectedText, @"^(1[89]\d\d|20[012]\d)$"))
                {
                    SaveLabel = ControlsStrings.FindInformation_SaveAsYear;
                    return;
                }

                var key = SelectedText.ToLower();

                if (DataProvider.Instance.TagCountries.GetValueOrDefault(key) != null || DataProvider.Instance.Countries.GetValueOrDefault(key) != null)
                {
                    SaveLabel = ControlsStrings.FindInformation_SaveAsCountry;
                    return;
                }

                SaveLabel = ControlsStrings.FindInformation_SaveAsDescription;
            }
            private void Save()
            {
                if (Regex.IsMatch(SelectedText, @"^(1[89]\d\d|20[012]\d)$"))
                {
                    var year = FlexibleParser.ParseInt(SelectedText);
                    SelectedObject.Year = year;
                    return;
                }

                var key     = SelectedText.ToLower();
                var country = DataProvider.Instance.TagCountries.GetValueOrDefault(key) ?? DataProvider.Instance.Countries.GetValueOrDefault(key);

                if (country != null)
                {
                    SelectedObject.Country = country;
                    return;
                }

                SelectedObject.Description = Keyboard.Modifiers.HasFlag(ModifierKeys.Control) ? (
                    Keyboard.Modifiers.HasFlag(ModifierKeys.Alt) ?
                    SelectedText + Environment.NewLine.RepeatString(2) + SelectedObject.Description :
                    SelectedObject.Description + Environment.NewLine.RepeatString(2) + SelectedText
                    ).Trim() : SelectedText;
            }