Example #1
0
        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();
        }
Example #2
0
        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();
        }