public MainWindow(VMS.TPS.Common.Model.API.Application Application)
        {
            _application = Application;

            //  _application.CurrentUser = _application.CurrentUser;

            _viewModel = new ViewModel();

            InitializeComponent();

            this.DataContext = _viewModel;
            //lstPatients.SelectedIndex = 1;
            //lstPlans.SelectedIndex=0;

            LoadRecentPatients();

            //Show list of scripts if running in ALLSCRIPTS mode
            itmScripts.Visibility = Visibility.Collapsed;
#if ALLSCRIPTS
            itmScripts.Visibility = Visibility.Visible;
            ScriptsConfiguration config = MyConfig.GetScriptsSection();
            foreach (ScriptElement script in config.Scripts)
            {
                _viewModel.Scripts.Add(new MyScript
                {
                    Name        = script.Name,
                    Description = script.Description,
                    IsChecked   = false
                });
            }
            _viewModel.Scripts[0].IsChecked = true;
#endif
        }
        public SearcherControl()
        {
            config = ProjectConfigurationProvider.LoadOrDefault <ScriptsConfiguration>();

            // Load window template.
            var windowUxmlTemplate = Resources.Load <VisualTreeAsset>("Searcher/SearcherWindow");

            // Clone Window Template.
            var windowRootVisualElement = windowUxmlTemplate.CloneTree();

            windowRootVisualElement.AddToClassList("content");

            windowRootVisualElement.StretchToParentSize();

            // Add Window VisualElement to window's RootVisualContainer
            Add(windowRootVisualElement);

            m_VisibleResults  = new List <SearcherItem>();
            m_ExpandedResults = new HashSet <SearcherItem>();

            m_ListView = this.Q <ListView>(k_WindowResultsScrollViewName);

            if (m_ListView != null)
            {
                m_ListView.bindItem = Bind;
                m_ListView.RegisterCallback <KeyDownEvent>(OnResultsScrollViewKeyDown);
                m_ListView.onItemChosen       += obj => m_SelectionCallback((SearcherItem)obj);
                m_ListView.onSelectionChanged += selectedItems => m_Searcher.Adapter.OnSelectionChanged(selectedItems.OfType <SearcherItem>());
                m_ListView.focusable           = true;
                m_ListView.tabIndex            = 1;
            }

            m_DetailsPanel = this.Q(k_WindowDetailsPanel);

            TitleLabel = this.Q <Label>(k_WindowTitleLabel);

            m_SearchTextField = this.Q <TextField>(k_WindowSearchTextFieldName);
            if (m_SearchTextField != null)
            {
                m_SearchTextField.focusable = true;
                m_SearchTextField.RegisterCallback <InputEvent>(OnSearchTextFieldTextChanged);

                m_SearchTextInput = m_SearchTextField.Q(TextInputBaseField <string> .textInputUssName);
                m_SearchTextInput.RegisterCallback <KeyDownEvent>(OnSearchTextFieldKeyDown);
            }

            m_AutoCompleteLabel = this.Q <Label>(k_WindowAutoCompleteLabelName);

            Resizer = this.Q(k_WindowResizerName);

            RegisterCallback <AttachToPanelEvent>(OnEnterPanel);
            RegisterCallback <DetachFromPanelEvent>(OnLeavePanel);

            EditorApplication.update += HackDueToListViewScrollViewStealingFocus;

            style.flexGrow = 1;
        }
Exemple #3
0
        [Order(1)]         //Тесты с указанным порядком выполняются раннее других. Нужно для сравнения обновленных баз с чистой установкой.
        public void CreateCurrentNewBaseTest(SqlServer server)
        {
            StartSqlServer(server);
            //Создаем чистую базу
            var creator = new TestingCreateDbController(server);
            var success = creator.StartCreation(ScriptsConfiguration.MakeCreationScript(), currentDdName);

            Assert.That(success, Is.True);
        }
Exemple #4
0
        static void AutofacStartupConfig(ContainerBuilder containerBuilder)
        {
            #region GtkUI
            containerBuilder.RegisterType <GtkMessageDialogsInteractive>().As <IInteractiveMessage>();
            containerBuilder.RegisterType <GtkQuestionDialogsInteractive>().As <IInteractiveQuestion>();
            containerBuilder.RegisterType <GtkInteractiveService>().As <IInteractiveService>();
            containerBuilder.RegisterType <GtkGuiDispatcher>().As <IGuiDispatcher>();
            containerBuilder.RegisterType <GtkRunOperationService>().As <IRunOperationService>();
            #endregion GtkUI

            #region Versioning
            containerBuilder.RegisterType <ApplicationVersionInfo>().As <IApplicationInfo>();
            #endregion

            #region ErrorReporting
            containerBuilder.RegisterType <DesktopErrorReporter>().As <IErrorReporter>();
            containerBuilder.RegisterType <LogService>().As <ILogService>();
                        #if DEBUG
            containerBuilder.Register(c => new ErrorReportingSettings(false, true, false, 300)).As <IErrorReportingSettings>();
                        #else
            containerBuilder.Register(c => new  ErrorReportingSettings(true, false, true, 300)).As <IErrorReportingSettings>();
                        #endif

            containerBuilder.RegisterType <MySqlException1055OnlyFullGroupBy>().As <IErrorHandler>();
            containerBuilder.RegisterType <MySqlException1366IncorrectStringValue>().As <IErrorHandler>();
            containerBuilder.RegisterType <NHibernateFlushAfterException>().As <IErrorHandler>();
            containerBuilder.RegisterType <ConnectionIsLost>().As <IErrorHandler>();
            #endregion

            #region Обновления и версии
            containerBuilder.RegisterModule(new UpdaterAutofacModule());
            containerBuilder.Register(c => ScriptsConfiguration.MakeUpdateConfiguration()).AsSelf();
            containerBuilder.Register(c => ScriptsConfiguration.MakeCreationScript()).AsSelf();
            #endregion

            #region Временные будут переопределены
            containerBuilder.RegisterType <GtkWindowsNavigationManager>().AsSelf().As <INavigationManager>().SingleInstance();
            containerBuilder.Register((ctx) => new AutofacViewModelsGtkPageFactory(startupContainer)).As <IViewModelsPageFactory>();
            containerBuilder.Register(cc => new ClassNamesBaseGtkViewResolver(
                                          typeof(UpdateProcessView)
                                          )).As <IGtkViewResolver>();
            #endregion
        }
Exemple #5
0
        public void ApplyUpdatesTest(SqlServer server, DbSample sample)
        {
            var updateConfiguration = ScriptsConfiguration.MakeUpdateConfiguration();

            //Проверяем нужно ли обновлять
            if (!updateConfiguration.GetHopsToLast(sample.TypedVersion).Any())
            {
                Assert.Ignore($"Образец базы {sample} версии пропущен. Так как версию базы {sample.Version} невозможно обновить.");
            }

            //Создаем чистую базу
            StartSqlServer(server);
            var creator = new TestingCreateDbController(server);
            var success = creator.StartCreation(sample);

            Assert.That(success, Is.True);
            //Выполняем обновление
            var builder = server.ConnectionStringBuilder;

            builder.Database = sample.DbName;
            var connectionstring = builder.GetConnectionString(true);

            using (var connection = new MySqlConnection(connectionstring))
            {
                connection.Open();
                foreach (var hop in updateConfiguration.GetHopsToLast(sample.TypedVersion))
                {
                    TestContext.Progress.WriteLine($"Выполняем скрипт {hop.Source.VersionToShortString()} → {hop.Destination.VersionToShortString()}");
                    RunOneUpdate(connection, hop);
                }

                //Версии баз до 2.5 отличаются не принципиально, например порядком индексов,
                //Это не имеет смысл специально исправлять. Поэтому проверка этих версия пропущена.
                if (sample.TypedVersion >= new Version(2, 5))
                {
                    ComparisonSchema(connection, currentDdName, sample.DbName);
                }
            }
        }
 public void SequenceCheckTest()
 {
     base.SequenceCheckTest(ScriptsConfiguration.MakeUpdateConfiguration());
 }