예제 #1
0
        public PreferenceEditor(IPreferences pref)
        {
            InitializeComponent();
            _boldFont    = new Font(_listView.Font, _listView.Font.Style | FontStyle.Bold);
            _preferences = pref;

            _filterChangeTimer          = new Timer();
            _filterChangeTimer.Interval = 500;
            _filterChangeTimer.Tick    += new EventHandler(OnFilterChangeTimer);

            StringResource sr = UsabilityPlugin.Strings;

            _filterLabel.Text  = sr.GetString("Form.PreferenceEditor._filterLabel");
            _nameHeader.Text   = sr.GetString("Form.PreferenceEditor._nameHeader");
            _typeHeader.Text   = sr.GetString("Form.PreferenceEditor._typeHeader");
            _valueHeader.Text  = sr.GetString("Form.PreferenceEditor._valueHeader");
            _okButton.Text     = sr.GetString("Common.OK");
            _cancelButton.Text = sr.GetString("Common.Cancel");
            _resetButton.Text  = sr.GetString("Form.PreferenceEditor._resetButton");
            this.Text          = sr.GetString("Form.PreferenceEditor.Text");

            //洗い出し
            _folderTags = new List <FolderTag>();
            _itemTags   = new List <ItemTag>();
            foreach (IPreferenceFolder folder in _preferences.GetAllFolders())
            {
                FolderTag ft = new FolderTag(folder);
                _folderTags.Add(ft);
                int count = ft.Work.ChildCount;
                for (int i = 0; i < count; i++)
                {
                    IPreferenceItem item = ft.Work.ChildAt(i).AsItem();
                    if (item != null)
                    {
                        ItemTag it = new ItemTag(item);
                        _itemTags.Add(it);
                    }
                }
            }
            //ソート
            _itemTags.Sort();

            InitList();
        }