Exemple #1
0
        private void UseRepositoryMonitor(TinyIoCContainer container)
        {
            var repositoryInformationAggregator = container.Resolve <IRepositoryInformationAggregator>();

            _repositoryMonitor = container.Resolve <IRepositoryMonitor>();
            _repositoryMonitor.Observe();
        }
Exemple #2
0
        public MainWindow(StatusCharacterMap statusCharacterMap,
                          IRepositoryInformationAggregator aggregator,
                          IRepositoryMonitor repositoryMonitor,
                          IRepositoryActionProvider repositoryActionProvider,
                          IRepositoryIgnoreStore repositoryIgnoreStore,
                          IAppSettingsService appSettingsService)
        {
            InitializeComponent();

            DataContext = new MainWindowPageModel(appSettingsService);
            SettingsMenu.DataContext = DataContext;             // this is out of the visual tree

            _monitor = repositoryMonitor as DefaultRepositoryMonitor;
            if (_monitor != null)
            {
                _monitor.OnScanStateChanged += OnScanStateChanged;
                ShowScanningState(_monitor.Scanning);
            }

            _repositoryActionProvider   = repositoryActionProvider ?? throw new ArgumentNullException(nameof(repositoryActionProvider));
            _repositoryIgnoreStore      = repositoryIgnoreStore ?? throw new ArgumentNullException(nameof(repositoryIgnoreStore));
            lstRepositories.ItemsSource = aggregator.Repositories;
            var view = CollectionViewSource.GetDefaultView(lstRepositories.ItemsSource);

            view.CollectionChanged += View_CollectionChanged;
            view.Filter             = FilterRepositories;

            lstRepositories.Items.SortDescriptions.Add(
                new SortDescription(nameof(RepositoryView.Name),
                                    ListSortDirection.Ascending));

            txtHelp.Text = GetHelp(statusCharacterMap);

            PlaceFormToLowerRight();
        }
        public override void ViewWillAppear()
        {
            base.ViewWillAppear();

            if (_aggregator != null)
            {
                return;
            }

            _aggregator = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryInformationAggregator>();
            var actionProvider = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryActionProvider>();

            _monitor               = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryMonitor>();
            _appSettingsService    = TinyIoC.TinyIoCContainer.Current.Resolve <IAppSettingsService>();
            _repositoryIgnoreStore = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryIgnoreStore>();

            // Do any additional setup after loading the view.
            var datasource = new RepositoryTableDataSource(_aggregator.Repositories);

            RepoTab.DataSource            = datasource;
            datasource.CollectionChanged += Datasource_CollectionChanged;
            RepoTab.Delegate              = new RepositoryTableDelegate(RepoTab, datasource, actionProvider);
            SetControlVisibilityByRepositoryAvailability();

            RepoTab.BackgroundColor = NSColor.Clear;
            RepoTab.EnclosingScrollView.DrawsBackground = false;

            SearchBox.FinishInput += SearchBox_FinishInput;

            SearchBox.NextKeyView = RepoTab;
        }
Exemple #4
0
        public MainWindow(StatusCharacterMap statusCharacterMap,
                          IRepositoryInformationAggregator aggregator,
                          IRepositoryMonitor repositoryMonitor,
                          IRepositoryActionProvider repositoryActionProvider)
        {
            InitializeComponent();

            _monitor = repositoryMonitor as DefaultRepositoryMonitor;
            if (_monitor != null)
            {
                _monitor.OnScanStateChanged += OnScanStateChanged;
                ShowScanningState(_monitor.Scanning);
            }

            _repositoryActionProvider = repositoryActionProvider;

            lstRepositories.ItemsSource = aggregator.Repositories;
            var view = CollectionViewSource.GetDefaultView(lstRepositories.ItemsSource);

            view.CollectionChanged += View_CollectionChanged;
            view.Filter             = FilterRepositories;

            lstRepositories.Items.SortDescriptions.Add(
                new SortDescription(nameof(RepositoryView.Name),
                                    ListSortDirection.Ascending));

            txtHelp.Text = GetHelp(statusCharacterMap);

            PlaceFormToLowerRight();
        }
Exemple #5
0
 public EFRepositoryManager(ILogger <EFRepositoryManager> logger, IImageManager imageManager, IRepositoryMonitor repositoryMonitor, IPostsRepository postsRepository)
 {
     this.logger            = logger;
     this.imageManager      = imageManager;
     this.repositoryMonitor = repositoryMonitor;
     this.postsRepository   = postsRepository;
 }
 public WindowsRepositoryActionProvider(
     IRepositoryWriter repositoryWriter,
     IRepositoryMonitor repositoryMonitor,
     IErrorHandler errorHandler)
 {
     _repositoryWriter  = repositoryWriter ?? throw new ArgumentNullException(nameof(repositoryWriter));
     _repositoryMonitor = repositoryMonitor ?? throw new ArgumentNullException(nameof(repositoryMonitor));
     _errorHandler      = errorHandler ?? throw new ArgumentNullException(nameof(errorHandler));
 }
 public MacRepositoryActionProvider(
     IRepositoryWriter repositoryWriter,
     IRepositoryMonitor repositoryMonitor,
     IErrorHandler errorHandler,
     ITranslationService translationService)
 {
     _repositoryWriter   = repositoryWriter ?? throw new ArgumentNullException(nameof(repositoryWriter));
     _repositoryMonitor  = repositoryMonitor ?? throw new ArgumentNullException(nameof(repositoryMonitor));
     _errorHandler       = errorHandler ?? throw new ArgumentNullException(nameof(errorHandler));
     _translationService = translationService ?? throw new ArgumentNullException(nameof(translationService));
 }
Exemple #8
0
        public DefaultRepositoryActionProvider(
            IRepositoryActionConfigurationStore repositoryActionConfigurationStore,
            IRepositoryWriter repositoryWriter,
            IRepositoryMonitor repositoryMonitor,
            IErrorHandler errorHandler,
            ITranslationService translationService)
        {
            _repositoryActionConfigurationStore = repositoryActionConfigurationStore ?? throw new ArgumentNullException(nameof(repositoryActionConfigurationStore));
            _repositoryWriter   = repositoryWriter ?? throw new ArgumentNullException(nameof(repositoryWriter));
            _repositoryMonitor  = repositoryMonitor ?? throw new ArgumentNullException(nameof(repositoryMonitor));
            _errorHandler       = errorHandler ?? throw new ArgumentNullException(nameof(errorHandler));
            _translationService = translationService ?? throw new ArgumentNullException(nameof(translationService));

            _configuration = _repositoryActionConfigurationStore.RepositoryActionConfiguration;
        }
 //private DbContext context;
 public PostsController(
     IPostsRepository repo,
     ILogger <PostsController> logger,
     IHostEnvironment environment,
     IRepositoryMonitor repositoryMonitor,
     IRepositoryManager repositoryManager,
     IImageManager imageManager,
     IUserPostsHandler userPostsHandler)
 {
     repository          = repo;
     _logger             = logger;
     _hostingEnvironment = environment;
     _userPostsHandler   = userPostsHandler;
     _repositoryMonitor  = repositoryMonitor;
     _repositoryManager  = repositoryManager;
     this.imageManager   = imageManager;
     //imageManager = new LocalImageManager(_hostingEnvironment, _logger, "StaticFiles");
 }
Exemple #10
0
        public MainWindow(StatusCharacterMap statusCharacterMap,
                          IRepositoryInformationAggregator aggregator,
                          IRepositoryMonitor repositoryMonitor,
                          IRepositoryActionProvider repositoryActionProvider,
                          IRepositoryIgnoreStore repositoryIgnoreStore,
                          IAppSettingsService appSettingsService,
                          ITranslationService translationService)
        {
            _translationService = translationService;

            InitializeComponent();

            AcrylicWindow.SetAcrylicWindowStyle(this, AcrylicWindowStyle.None);

            DataContext = new MainWindowPageModel(appSettingsService);
            SettingsMenu.DataContext = DataContext;             // this is out of the visual tree

            _monitor = repositoryMonitor as DefaultRepositoryMonitor;
            if (_monitor != null)
            {
                _monitor.OnScanStateChanged += OnScanStateChanged;
                ShowScanningState(_monitor.Scanning);
            }

            _repositoryActionProvider   = repositoryActionProvider ?? throw new ArgumentNullException(nameof(repositoryActionProvider));
            _repositoryIgnoreStore      = repositoryIgnoreStore ?? throw new ArgumentNullException(nameof(repositoryIgnoreStore));
            lstRepositories.ItemsSource = aggregator.Repositories;
            var view = CollectionViewSource.GetDefaultView(lstRepositories.ItemsSource);

            view.CollectionChanged += View_CollectionChanged;
            view.Filter             = FilterRepositories;

            lstRepositories.Items.SortDescriptions.Add(
                new SortDescription(nameof(RepositoryView.Name),
                                    ListSortDirection.Ascending));

            var appName = System.Reflection.Assembly.GetEntryAssembly().GetName();

            txtHelpCaption.Text = appName.Name + " " + appName.Version.ToString(2);
            txtHelp.Text        = GetHelp(statusCharacterMap);

            PlaceFormByTaskbarLocation();
        }
        public override void ViewWillAppear()
        {
            base.ViewWillAppear();

            if (_aggregator != null)
            {
                return;
            }

            _aggregator = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryInformationAggregator>();
            var actionProvider = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryActionProvider>();

            _monitor = TinyIoC.TinyIoCContainer.Current.Resolve <IRepositoryMonitor>();
            _monitor.OnScanStateChanged += _monitor_OnScanStateChanged;

            _stringCommandHandler.Define(new string[] { "help", "man", "?" }, ShowCommandReference, "Shows this help page");
            _stringCommandHandler.Define(new string[] { "scan" }, async() => await _monitor.ScanForLocalRepositoriesAsync(), "Scans this Mac for git repositories");
            _stringCommandHandler.Define(new string[] { "reset" }, _monitor.Reset, "Resets the repository cache");
            _stringCommandHandler.Define(new string[] { "info", "stats" }, ShowStats, "Shows process informations");
            _stringCommandHandler.Define(new string[] { "quit", "close", "exit" }, () => NSApplication.SharedApplication.Terminate(this), "Closes the application");

            // Do any additional setup after loading the view.
            var datasource = new RepositoryTableDataSource(_aggregator.Repositories);

            RepoTab.DataSource            = datasource;
            datasource.CollectionChanged += Datasource_CollectionChanged;
            RepoTab.Delegate              = new RepositoryTableDelegate(RepoTab, datasource, actionProvider);
            SetControlVisibilityByRepositoryAvailability();

            RepoTab.BackgroundColor = NSColor.Clear;
            RepoTab.EnclosingScrollView.DrawsBackground = false;

            SearchBox.FinishInput += SearchBox_FinishInput;

            SearchBox.NextKeyView = RepoTab;
        }
Exemple #12
0
 private void UseRepositoryMonitor(TinyIoCContainer container)
 {
     _repositoryMonitor = container.Resolve <IRepositoryMonitor>();
     _repositoryMonitor.Observe();
 }