예제 #1
0
        public void OpenWorkspace(string dir)
        {
            var dirInfo = default(DirectoryInfo);

            if (!FileUtil.TryGetInfo(dir, out dirInfo))
            {
                App.Ext.Log($"Invalid directory path: {dir}", EntryType.Error);
                return;
            }

            var view = ViewManager.CreateView();

            if (App.Component <IWorkspaceController>().OpenWorkspace(view, dirInfo))
            {
                if (view.Workspace.FullName.Equals(dirInfo.FullName, StringComparison.OrdinalIgnoreCase))
                {
                    var setDir = new DirectoryInfo(Path.Combine(dirInfo.FullName, ".slot"));

                    if (!setDir.Exists)
                    {
                        setDir.Create();
                        FileUtil.WriteFile(Path.Combine(setDir.FullName, "settings.json"), "//Put your settings here", Encoding.UTF8);
                    }
                }

                ViewManager.ActivateView(view);
            }
        }
예제 #2
0
        public void ViewManagerCreateView()
        {
            #region Mock intialization

            DynamicMock useCase = new DynamicMock(typeof(IUseCase));
            DynamicMock engine  = new DynamicMock(typeof(IRegexEngine));
            DynamicMock view    = new DynamicMock(typeof(IRegexView));

            IRegexView   viewMockInstance    = (IRegexView)view.MockInstance;
            IUseCase     useCaseMockInstance = (IUseCase)useCase.MockInstance;
            IRegexEngine engineMockInstance  = (IRegexEngine)engine.MockInstance;

            #endregion


            useCase.ExpectAndReturn("CreateNewView", viewMockInstance);
            useCase.ExpectAndReturn("CreateNewEngine", engineMockInstance);
            engine.Expect("AttachView", withSameObjectAs(viewMockInstance));
            view.Expect("Init", withSameObjectAs(engineMockInstance));


            ViewManager factory = new ViewManager();
            IRegexView  newView = factory.CreateView(useCaseMockInstance);

            useCase.Verify();
            engine.Verify();
            view.Verify();

            Assert.AreSame(newView, viewMockInstance, "Returned view is not the same instance as expected");
        }
예제 #3
0
        private void OpenBuffer(IBuffer buffer)
        {
            var view = ViewManager.CreateView();

            FileCommandDispatcher.OpenBuffer(buffer, view);
            ViewManager.ActivateView(view);
        }
예제 #4
0
        public void CanCreateViewDefinition()
        {
            var viewMetadataStorageFilename = RandomFilename;

            viewManager = new ViewManager(true, tableManager, _transaction, viewMetadataStorageFilename);

            viewManager.CreateView("view1", "viewDefinition1", _transaction);

            _transaction.Commit();

            var schema = new Schema();

            schema.AddStringField("viewname", ViewManager.MAX_VIEW_LENGTH);
            schema.AddStringField("viewdef", ViewManager.MAX_VIEW_LENGTH);

            var viewTableInfo = tableManager.GetTableInfo(viewMetadataStorageFilename, _transaction);
            var viewTableCatalogRecordPage = new RecordFile(viewTableInfo, _transaction);

            viewTableCatalogRecordPage.BeforeFirst();
            viewTableCatalogRecordPage.Next();

            var viewName       = viewTableCatalogRecordPage.GetString("viewname");
            var viewDefinition = viewTableCatalogRecordPage.GetString("viewdef");

            Assert.AreEqual("view1", viewName);
            Assert.AreEqual("viewDefinition1", viewDefinition);
        }
예제 #5
0
        /// <summary>
        /// アプリケーションが実行開始した
        /// </summary>
        /// <param name="e">StartupEventArgs</param>
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            // MainViewModel と対応する View の生成
            var vm  = new ViewModels.MainViewModel();
            var wnd = Views.CreateView(vm);

            // View の表示
            wnd.Show();
        }
예제 #6
0
        public void CanGetViewDefinitionByName()
        {
            var viewMetadataStorageFilename = RandomFilename;

            viewManager = new ViewManager(true, tableManager, _transaction, viewMetadataStorageFilename);

            viewManager.CreateView("view1", "viewDefinition1", _transaction);

            var viewDefinition = viewManager.GetViewDefinition("view1", _transaction);

            _transaction.Commit();

            Assert.AreEqual("viewDefinition1", viewDefinition);
        }
예제 #7
0
        public void CanGetViewDefinitionInOtherTransaction()
        {
            var viewMetadataStorageFilename = RandomFilename;

            viewManager = new ViewManager(true, tableManager, _transaction, viewMetadataStorageFilename);

            viewManager.CreateView("view1", "viewDefinition1", _transaction);

            _transaction.Commit();
            _concurrencyManager = new ConcurrencyManager();
            _transaction        = new Transaction(_dispatcher, _bufferManager, _concurrencyManager, _fileManager, _logManager);

            var viewDefinition = viewManager.GetViewDefinition("view1", _transaction);

            Assert.AreEqual("viewDefinition1", viewDefinition);
        }
예제 #8
0
        public void WouldGetEmptyStringIfViewWasNotFound()
        {
            var viewMetadataStorageFilename = RandomFilename;

            viewManager = new ViewManager(true, tableManager, _transaction, viewMetadataStorageFilename);

            viewManager.CreateView("view1", "viewDefinition1", _transaction);

            _transaction.Commit();
            _concurrencyManager = new ConcurrencyManager();
            _transaction        = new Transaction(_dispatcher, _bufferManager, _concurrencyManager, _fileManager, _logManager);

            viewManager = new ViewManager(false, tableManager, _transaction, viewMetadataStorageFilename);

            var viewDefinition = viewManager.GetViewDefinition("view2", _transaction);

            Assert.AreEqual(string.Empty, viewDefinition);
        }
        public void ViewManagerCreateView()
        {
            DynamicMock useCase             = new DynamicMock(typeof(IUseCase));
            IUseCase    useCaseMockInstance = (IUseCase)useCase.MockInstance;

            IRegexEngine engine = new DotNetRegexEngine();
            IRegexView   view   = new ReplaceView();

            useCase.ExpectAndReturn("CreateNewView", view);
            useCase.ExpectAndReturn("CreateNewEngine", engine);


            ViewManager factory = new ViewManager();
            IRegexView  newView = factory.CreateView(useCaseMockInstance);
            Form        frm     = (Form)newView;

            frm.ShowDialog();
        }