Esempio n. 1
0
        public ProjectViewModel(IStatusNotificationService statusNotificationServiceParam, IProjectDataService projectDataServiceParam, ITabNavigationService tabNavigationServiceParam)
        {
            ProjectFiles = new ObservableCollection <BaseMd>();

            tabNavigationService              = tabNavigationServiceParam;
            statusNotificationService         = statusNotificationServiceParam;
            projectDataService                = projectDataServiceParam;
            projectDataService.ProjectLoaded += ProjectDataService_ProjectLoaded;

            ViewTeamCommand = new AnotherCommandImplementation(t =>
            {
                statusNotificationServiceParam.SendMessage(new Notification()
                {
                    Kind = NotificationKind.Other, Message = t.ToString(), Title = "DEBUG Team", Time = DateTime.Now
                });
            });

            ViewReadmeCommand = new AnotherCommandImplementation(r =>
            {
                if (r is ReadMe readMe)
                {
                    tabNavigationService.CreateTab("ReadMeTab", r);
                }
            });
        }
Esempio n. 2
0
        public PickPTabViewModel(IStatusNotificationService statusNotificationServiceParam,
                                 ITabNavigationService tabNavigationServiceParam,
                                 IDatabaseService databaseServiceParam,
                                 IProjectDataService projectDataServiceParam)
        {
            statusNotificationService       = statusNotificationServiceParam;
            tabNavigationService            = tabNavigationServiceParam;
            databaseService                 = databaseServiceParam;
            projectDataService              = projectDataServiceParam;
            databaseService.DatabaseChange += DatabaseService_DatabaseChange;

            //Initialize commands.
            ProjectCreateCommand = new AnotherCommandImplementation(t =>
            {
            });

            ProjectOpenCommand = new AnotherCommandImplementation(t =>
            {
                if (CommonFileDialog.IsPlatformSupported)
                {
                    CommonOpenFileDialog folderDialog = new CommonOpenFileDialog("Project Picker")
                    {
                        IsFolderPicker = true,
                    };

                    var diagRes = folderDialog.ShowDialog();
                    if (diagRes == CommonFileDialogResult.Ok)
                    {
                        ProjectLoading(folderDialog.FileName);
                    }
                }
                else
                {
                    statusNotificationService.SendMessage(new Notification()
                    {
                        Kind = NotificationKind.Error, Message = "This Application requires Windows Vista(I think) or up, because I simply refuse to also spawn the classic folder picker. Sorry.", Title = "For the love of everything holy: UPDATE!", Time = DateTime.Now
                    });
                }
            });

            ProjectSelectCommand = new AnotherCommandImplementation(o =>
            {
                if (o is RecentProject project)
                {
                    ProjectLoading(project.Location);
                }
                else
                {
                    statusNotificationService.SendMessage(new Notification()
                    {
                        Kind = NotificationKind.Error, Message = "The picker failed to load the selected project. There might be an issue with the database.", Title = "Loading Failure", Time = DateTime.Now
                    });
                    // TODO: add interaction to remove reference from picker.
                }
            }
                                                                    );
        }
Esempio n. 3
0
        //readonly IProjectDataService projectDataService;

        public NotificationViewModel(IStatusNotificationService statusNotificationServiceParam,
                                     ITabNavigationService tabNavigationServiceParam
                                     //            ,IProjectDataService projectDataServiceParam
                                     )
        {
            NotificationCollection = new ObservableCollection <NotificationItemViewModel>();

            statusNotificationService = statusNotificationServiceParam;
            tabNavigationService      = tabNavigationServiceParam;
            //   projectDataService = projectDataServiceParam;

            statusNotificationService.MessageSent += StatusNotificationService_MessageSent;
            tabNavigationService.TabNavigatedTo   += TabNavigationService_TabNavigatedTo;
            //projectDataService.ProjectLoaded += ProjectDataService_ProjectLoaded;
        }
Esempio n. 4
0
        public MainViewModel(ITabNavigationService tabNavigationService)
        {
            _tabNavigationService = tabNavigationService;

            SetupCommands();

            ////if (IsInDesignMode)
            ////{
            ////    // Code runs in Blend --> create design time data.
            ////}
            ////else
            ////{
            ////    // Code runs "for real"
            ////}
        }
Esempio n. 5
0
 public ClassMenuViewModel(ITabNavigationService tabNavigationService)
 {
     _tabNavigationService = tabNavigationService;
 }
Esempio n. 6
0
 public MainWindow()
 {
     InitializeComponent();
     tabNavigationService = NinjectServiceLocator.GetStuff <ITabNavigationService>();
     //   projectDataService = NinjectServiceLocator.GetStuff<IProjectDataService>();
 }
Esempio n. 7
0
 public AboutViewModel(ITabNavigationService tabNavigationService)
 {
     _tabNavigationService = tabNavigationService;
 }
Esempio n. 8
0
 public SettingsViewModel(ITabNavigationService tabNavigationService)
 {
     _tabNavigationService = tabNavigationService;
     _classLogic           = new ClassLogic();
 }