Beispiel #1
0
 internal void Exit()
 {
     TreeView.SetRowAction();
     TreeView = null;
     OnExit();
 }
Beispiel #2
0
        private void Init()
        {
            if (_modules == null)
            {
                var type = typeof(GitModule);
                _modules = type.Assembly.GetTypes()
                           .Where(t => !t.IsAbstract && t.IsSubclassOf(type))
                           .Select(t =>
                {
                    var i = Activator.CreateInstance(t, true) as GitModule;
                    i.Init(this);

                    return(i);
                })
                           .OrderBy(i => (int)i.Type)
                           .ToList();

                _hasSub = false;
                _sub    = -1;
                _main   = (int)ModuleType.Log;
                _modules[_main].Enter(null);
            }


            if (_state == null)
            {
                _state = new TreeViewState();
            }
            if (_treeView == null)
            {
                _treeView = new GitTreeView(_state);
                _treeView.KeyEventAction    += KeyEvent;
                _treeView.SingleClickAction += SingleClick;
                _treeView.DoubleClickAction += DoubleClick;

                foreach (var m in _modules)
                {
                    m.Init(this);
                }

                _modules[_main].TreeView = _treeView;
                _modules[_main].Reload();
            }

            if (_subState == null)
            {
                _subState = new TreeViewState();
            }
            if (_subTreeView == null)
            {
                _subTreeView = new GitTreeView(_subState);
                _subTreeView.KeyEventAction    += KeyEvent;
                _subTreeView.SingleClickAction += SingleClick;
                _subTreeView.DoubleClickAction += DoubleClick;
                if (_hasSub)
                {
                    _modules[_sub].TreeView = _subTreeView;
                    _modules[_sub].Reload();
                }
            }
        }