public DatabaseTableSolutionItemEditorProvider(IDatabaseTableDataProvider tableDataProvider,
                                                IContainerProvider containerRegistry, ITableDefinitionProvider tableDefinitionProvider)
 {
     this.tableDataProvider       = tableDataProvider;
     this.containerRegistry       = containerRegistry;
     this.tableDefinitionProvider = tableDefinitionProvider;
 }
コード例 #2
0
        protected ViewModelBase(IHistoryManager history,
                                DatabaseTableSolutionItem solutionItem,
                                ISolutionItemNameRegistry solutionItemName,
                                ISolutionManager solutionManager,
                                ISolutionTasksService solutionTasksService,
                                IEventAggregator eventAggregator,
                                IQueryGenerator queryGenerator,
                                IDatabaseTableDataProvider databaseTableDataProvider,
                                IMessageBoxService messageBoxService,
                                ITaskRunner taskRunner,
                                IParameterFactory parameterFactory,
                                ITableDefinitionProvider tableDefinitionProvider,
                                IItemFromListProvider itemFromListProvider,
                                ISolutionItemIconRegistry iconRegistry,
                                ISessionService sessionService,
                                IDatabaseTableCommandService commandService,
                                IParameterPickerService parameterPickerService,
                                IStatusBar statusBar,
                                IMySqlExecutor mySqlExecutor)
        {
            this.solutionItemName          = solutionItemName;
            this.solutionManager           = solutionManager;
            this.solutionTasksService      = solutionTasksService;
            this.queryGenerator            = queryGenerator;
            this.databaseTableDataProvider = databaseTableDataProvider;
            this.messageBoxService         = messageBoxService;
            this.taskRunner              = taskRunner;
            this.parameterFactory        = parameterFactory;
            this.tableDefinitionProvider = tableDefinitionProvider;
            this.itemFromListProvider    = itemFromListProvider;
            this.sessionService          = sessionService;
            this.commandService          = commandService;
            this.parameterPickerService  = parameterPickerService;
            this.statusBar     = statusBar;
            this.mySqlExecutor = mySqlExecutor;
            this.solutionItem  = solutionItem;
            History            = history;

            undoCommand            = new DelegateCommand(History.Undo, CanUndo);
            redoCommand            = new DelegateCommand(History.Redo, CanRedo);
            Save                   = new AsyncAutoCommand(SaveSolutionItem);
            title                  = solutionItemName.GetName(solutionItem);
            Icon                   = iconRegistry.GetIcon(solutionItem);
            nameGeneratorParameter = parameterFactory.Factory("Parameter");

            History.PropertyChanged += (_, _) =>
            {
                undoCommand.RaiseCanExecuteChanged();
                redoCommand.RaiseCanExecuteChanged();
                RaisePropertyChanged(nameof(IsModified));
            };

            tableDefinition = tableDefinitionProvider.GetDefinition(solutionItem.DefinitionId) !;
            LoadAndCreateCommands();
            nameGeneratorParameter = parameterFactory.Factory(tableDefinition.Picker);
        }
コード例 #3
0
 public QueryParserService(
     ITableDefinitionProvider tableDefinitionProvider,
     IQueryEvaluator queryEvaluator,
     ISessionService sessionService,
     IDatabaseTableDataProvider loader)
 {
     this.tableDefinitionProvider = tableDefinitionProvider;
     this.queryEvaluator          = queryEvaluator;
     this.sessionService          = sessionService;
     this.loader = loader;
 }
コード例 #4
0
 public DatabaseTableSolutionItemProviderProvider(ITableDefinitionProvider definitionProvider,
                                                  IDatabaseTableDataProvider tableDataProvider,
                                                  IItemFromListProvider itemFromListProvider,
                                                  IMessageBoxService messageBoxService,
                                                  IParameterFactory parameterFactory)
 {
     this.definitionProvider   = definitionProvider;
     this.tableDataProvider    = tableDataProvider;
     this.itemFromListProvider = itemFromListProvider;
     this.messageBoxService    = messageBoxService;
     this.parameterFactory     = parameterFactory;
 }
コード例 #5
0
 internal DatabaseTableSolutionItemProvider(DatabaseTableDefinitionJson definition,
                                            IDatabaseTableDataProvider tableDataProvider,
                                            IItemFromListProvider itemFromListProvider,
                                            IMessageBoxService messageBoxService,
                                            IParameterFactory parameterFactory)
 {
     this.tableDataProvider    = tableDataProvider;
     this.itemFromListProvider = itemFromListProvider;
     this.messageBoxService    = messageBoxService;
     this.parameterFactory     = parameterFactory;
     this.definition           = definition;
     this.itemIcon             = new ImageUri($"Resources/SmartScriptGeneric.png");
 }
コード例 #6
0
 internal DatabaseTableSolutionItemProvider(DatabaseTableDefinitionJson definition,
                                            IDatabaseTableDataProvider tableDataProvider,
                                            IItemFromListProvider itemFromListProvider,
                                            IMessageBoxService messageBoxService,
                                            IParameterFactory parameterFactory)
 {
     this.tableDataProvider    = tableDataProvider;
     this.itemFromListProvider = itemFromListProvider;
     this.messageBoxService    = messageBoxService;
     this.parameterFactory     = parameterFactory;
     this.definition           = definition;
     this.itemIcon             = new ImageUri($"Icons/document_big.png");
 }
コード例 #7
0
 public TableOpenService(
     IParameterFactory parameterFactory,
     IItemFromListProvider itemFromListProvider,
     IDatabaseTableDataProvider tableDataProvider,
     ITableDefinitionProvider definitionProvider,
     IMessageBoxService messageBoxService)
 {
     this.parameterFactory     = parameterFactory;
     this.itemFromListProvider = itemFromListProvider;
     this.tableDataProvider    = tableDataProvider;
     this.definitionProvider   = definitionProvider;
     this.messageBoxService    = messageBoxService;
 }
コード例 #8
0
        protected ViewModelBase(IHistoryManager history,
                                DatabaseTableSolutionItem solutionItem,
                                ISolutionItemNameRegistry solutionItemName,
                                ISolutionManager solutionManager,
                                ISolutionTasksService solutionTasksService,
                                IEventAggregator eventAggregator,
                                IQueryGenerator queryGenerator,
                                IDatabaseTableDataProvider databaseTableDataProvider,
                                IMessageBoxService messageBoxService,
                                ITaskRunner taskRunner,
                                IParameterFactory parameterFactory,
                                ITableDefinitionProvider tableDefinitionProvider,
                                IItemFromListProvider itemFromListProvider,
                                ISolutionItemIconRegistry iconRegistry)
        {
            this.solutionItemName          = solutionItemName;
            this.solutionManager           = solutionManager;
            this.solutionTasksService      = solutionTasksService;
            this.queryGenerator            = queryGenerator;
            this.databaseTableDataProvider = databaseTableDataProvider;
            this.messageBoxService         = messageBoxService;
            this.taskRunner           = taskRunner;
            this.parameterFactory     = parameterFactory;
            this.itemFromListProvider = itemFromListProvider;
            this.solutionItem         = solutionItem;
            History = history;

            undoCommand            = new DelegateCommand(History.Undo, CanUndo);
            redoCommand            = new DelegateCommand(History.Redo, CanRedo);
            Save                   = new DelegateCommand(SaveSolutionItem);
            title                  = solutionItemName.GetName(solutionItem);
            Icon                   = iconRegistry.GetIcon(solutionItem);
            nameGeneratorParameter = parameterFactory.Factory("Parameter");

            History.PropertyChanged += (_, _) =>
            {
                undoCommand.RaiseCanExecuteChanged();
                redoCommand.RaiseCanExecuteChanged();
                RaisePropertyChanged(nameof(IsModified));
            };

            tableDefinition        = tableDefinitionProvider.GetDefinition(solutionItem.DefinitionId) !;
            nameGeneratorParameter = parameterFactory.Factory(tableDefinition.Picker);

            AutoDispose(eventAggregator.GetEvent <EventRequestGenerateSql>()
                        .Subscribe(ExecuteSql));
        }
コード例 #9
0
 public DatabaseTableSolutionItemSqlProvider(IDatabaseTableDataProvider tableDataProvider,
                                             IQueryGenerator queryGenerator)
 {
     this.tableDataProvider = tableDataProvider;
     this.queryGenerator    = queryGenerator;
 }