public void LoadTabularModelToUI() { if (Handler == null) { return; } UI.FormMain.actToggleFilter.Checked = false; DisableLinqMode(); Handler.UndoManager.UndoStateChanged += UndoManager_UndoActionAdded; Handler.ObjectChanging += UIController_ObjectChanging; Handler.ObjectChanged += UIController_ObjectChanged; Handler.ObjectDeleting += UIController_ObjectDeleting; ClipboardListener_ClipboardUpdate(this, new EventArgs()); ExpressionEditor_CancelEdit(); ExpressionEditor_Current = null; Forward = new Stack <Navigation>(); Back = new Stack <Navigation>(); CurrentFilter = null; ShowSelectionStatus = false; Tree = new TabularUITree(Handler.Model) { Options = CurrentOptions, TreeView = UI.TreeView }; Tree.UpdateComplete += Tree_UpdateComplete; var cmp = SortedModel?.Comparer as TabularObjectComparer; SortedModel = new SortedTreeModel(Tree); SortedModel.Comparer = new TabularObjectComparer(Tree, cmp == null ? ObjectOrder.Alphabetical : cmp.Order); UI.TreeView.Model = SortedModel; UI.TreeView.FindNode(new TreePath(Handler.Model))?.Expand(); UI.ScriptEditor.Enabled = true; // Takes care of simple 1:1 bindings in the UI, once a Tabular Model has been loaded. // "Simple" binding is for UI elements where we can use standard Windows Forms binding // since the underlying objects support it. UI.TranslationSelector.ComboBox.BindTo(Handler.Model.Cultures, "DisplayName", Tree, "Culture", "(No translation)"); UI.PerspectiveSelector.ComboBox.BindTo(Handler.Model.Perspectives, "Name", Tree, "Perspective", "(All objects)"); UpdateUIText(); OnModelLoaded(); TreeView_SelectionChanged(UI.TreeView, new EventArgs()); UI.FormMain.modelToolStripMenuItem.Enabled = true; UI.ModelMenu.Enabled = true; InitPlugins(); }
public void InitializeComponent() { _model = new TreeModel(); _sortedTreeModel = new SortedTreeModel(_model); Model = _sortedTreeModel; ColumnClicked += ColumnClickedHandler; FullRowSelect = true; }
private void CreateModel() { _model = new ProjectTreeModel(_projectService.Project.MainFolder); var sortedModel = new SortedTreeModel(_model) { Comparer = new NodeSorter() }; projViewer.Model = sortedModel; projViewer.Root.Children.First().Expand(); }