Exemple #1
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Hubb.App.UWP.Views", "Hubb.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("Hubb.Core.ViewModels", "Hubb.App.UWP.Views");

            container = new WinRTContainer();
            container.RegisterWinRTServices();

            container.Instance <IGitHubClient>(new GitHubClient(new ProductHeaderValue("hubb-uwp", "1.0.0")));

            container
            .Singleton <IAppNavigationService, AppNavigationService>()
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IRepositoryService, RepositoryService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <RepositorySearchViewModel>();

            Coroutine.Completed += (s, e) =>
            {
                if (e.Error == null)
                {
                    return;
                }

                Debug.Write(e.Error.Message);
            };

            ConventionManager.AddElementConvention <AutoSuggestBox>(AutoSuggestBox.TextProperty, "Text", "QuerySubmitted");
        }
Exemple #2
0
        public Application(SimpleContainer container)
        {
            this.container = container;

            Initialize();

            ViewModelLocator.AddNamespaceMapping("NDC.Build.Forms.Core.Views", "NDC.Build.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("NDC.Build.Core.ViewModels", "NDC.Build.Forms.Core.Views");

            MessageBinder.SpecialValues.Add("$tappedItem", GetTappedItem);

            container.Instance <FormsApplication>(this);

            container
            .Singleton <ITeamServicesClient, OfflineTeamServicesClient>()
            .Singleton <IAuthenticationService, OfflineAuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <IDialogService, ActionSheetDialogService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <ProjectsViewModel>()
            .PerRequest <BuildsViewModel>();

            DisplayRootView <LoginView>();
        }
Exemple #3
0
        public Application(SimpleContainer container)
        {
            this.container = container;

            ConventionManager.AddElementConvention <SearchBar>(SearchBar.TextProperty, "Text", "SearchButtonPressed");

            ViewModelLocator.AddNamespaceMapping("Hubb.Forms.Core.Views", "Hubb.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("Hubb.Core.ViewModels", "Hubb.Forms.Core.Views");

            Initialize();

            container
            .Instance <IGitHubClient>(new GitHubClient(new ProductHeaderValue("hubb-forms", "1.0.0")));

            container
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IRepositoryService, RepositoryService>()
            .Singleton <IAppNavigationService, AppNavigationService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <RepositorySearchViewModel>();

            DisplayRootView <LoginView>();
        }
Exemple #4
0
        static void AddCustomConventions()
        {
            ViewModelLocator.AddNamespaceMapping("TivoAhoy.Phone.Views", "TivoAhoy.Common.ViewModels", "View");
            ViewModelLocator.AddNamespaceMapping("TivoAhoy.Phone.Views", "TivoAhoy.Common.ViewModels", "Page");
            ViewLocator.AddNamespaceMapping("TivoAhoy.Common.ViewModels", "TivoAhoy.Phone.Views", "View");
            ViewLocator.AddNamespaceMapping("TivoAhoy.Common.ViewModels", "TivoAhoy.Phone.Views", "Page");

            ConventionManager.AddElementConvention <PerformanceProgressBar>(PerformanceProgressBar.IsIndeterminateProperty, "IsIndeterminate", "Loaded");

            ConventionManager.AddElementConvention <Pivot>(Pivot.ItemsSourceProperty, "SelectedItem", "SelectionChanged").ApplyBinding =
                (viewModelType, path, property, element, convention) =>
            {
                if (ConventionManager
                    .GetElementConvention(typeof(ItemsControl))
                    .ApplyBinding(viewModelType, path, property, element, convention))
                {
                    ConventionManager
                    .ConfigureSelectedItem(element, Pivot.SelectedItemProperty, viewModelType, path);
                    ConventionManager
                    .ApplyHeaderTemplate(element, Pivot.HeaderTemplateProperty, null, viewModelType);
                    return(true);
                }

                return(false);
            };

            ConventionManager.AddElementConvention <Panorama>(Panorama.ItemsSourceProperty, "SelectedItem", "SelectionChanged").ApplyBinding =
                (viewModelType, path, property, element, convention) =>
            {
                if (ConventionManager
                    .GetElementConvention(typeof(ItemsControl))
                    .ApplyBinding(viewModelType, path, property, element, convention))
                {
                    ConventionManager
                    .ConfigureSelectedItem(element, Panorama.SelectedItemProperty, viewModelType, path);
                    ConventionManager
                    .ApplyHeaderTemplate(element, Panorama.HeaderTemplateProperty, null, viewModelType);
                    return(true);
                }

                return(false);
            };

            ConventionManager.AddElementConvention <ListPicker>(ListPicker.ItemsSourceProperty, "SelectedItem", "SelectionChanged")
            .ApplyBinding =
                (viewModelType, path, property, element, convention) =>
            {
                if (ConventionManager.GetElementConvention(typeof(ItemsControl))
                    .ApplyBinding(viewModelType, path, property, element, convention))
                {
                    ConventionManager
                    .ConfigureSelectedItem(element, ListPicker.SelectedItemProperty, viewModelType, path);
                    //ConventionManager
                    //    .ApplyHeaderTemplate(element, ListPicker.HeaderTemplateProperty, null, viewModelType);
                    return(true);
                }

                return(false);
            };
        }
Exemple #5
0
        public Application(SimpleContainer container)
        {
            _container = container;

            Initialize();

            ViewModelLocator.AddNamespaceMapping("Shell.Views", "Shared.ViewModels");
            ViewLocator.AddNamespaceMapping("Shared.ViewModels", "Shell.Views");

            MessageBinder.SpecialValues.Add("$tappedItem", GetTappedItem);

            container.Instance <FormsApplication>(this);

            container
            .Singleton <ITeamServicesClient, OfflineTeamServicesClient>()
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <IDialogService, ApplicationDialogService>();

            container
            .PerRequest <RootViewModel>()
            .PerRequest <ShellViewModel>()
            .PerRequest <LoginViewModel>()
            .PerRequest <LoginPopupViewModel>()
            .PerRequest <MainViewModel>()
            .PerRequest <LoginOldViewModel>()
            .PerRequest <ProjectsViewModel>()
            .PerRequest <BuildsViewModel>();

            DisplayRootView <RootView>();
        }
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Hello.Xamarin.iOS", "Hello.Xamarin.Core.ViewModels");

            container = new SimpleContainer();

            container
            .PerRequest <LoginViewModel>();
        }
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Hello.Xamarin.Windows.Views", "Hello.Xamarin.Core.ViewModels");

            container = new WinRTContainer();
            container.RegisterWinRTServices();

            container
            .PerRequest <LoginViewModel>();
        }
Exemple #8
0
        protected override void Configure()
        {
            MessageBinder.SpecialValues.Add("$clickeditem", c => ((ItemClickEventArgs)c.EventArgs).ClickedItem);

            ViewModelLocator.AddNamespaceMapping("Caliburn.Micro.HelloPortable.Views", "Caliburn.Micro.HelloPortable.Portable.ViewModels");


            container = new WinRTContainer();

            container.RegisterWinRTServices();

            container.PerRequest <MainViewModel>();

            PrepareViewFirst();
        }
Exemple #9
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Hubb.App.UWP.Views", "Hubb.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("Hubb.Core.ViewModels", "Hubb.App.UWP.Views");

            MessageBinder.SpecialValues.Add("$clickedItem", c => ((ItemClickEventArgs)c.EventArgs).ClickedItem);

            container = new WinRTContainer();

            container.RegisterWinRTServices();

            container.Instance <IGitHubClient>(new GitHubClient(new ProductHeaderValue("Hubb", "0.0.1")));
            container.Singleton <IHubbClient, OfflineHubbClient>();
            container.PerRequest <ShellViewModel>();
        }
Exemple #10
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Hubb.App.Android.Activities", "Hubb.Core.ViewModels");

            container = new SimpleContainer();

            container
            .Instance <IGitHubClient>(new GitHubClient(new ProductHeaderValue("hubb-android", "1.0.0")))
            .Instance <IAppNavigationService>(new AppNavigationService(this));

            container
            .Singleton <IAuthenticationService, NoNetworkAuthenticationService>()
            .Singleton <IRepositoryService, NoNetworkRepositoryService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <RepositorySearchViewModel>();
        }
        private static void RegisterConventions()
        {
            // Add FBReader.AppServices dll to Caliburn assembly list
            AssemblySource.Instance.Add(typeof(MainPageViewModel).Assembly);

            MessageBinder.CustomConverters.Add(
                typeof(int?),
                (val, ctx) =>
            {
                if (val == null)
                {
                    return(null);
                }
                return(Convert.ToInt32(val));
            });

            AddGenericItemsControlConvention <Pivot>(
                () => Pivot.HeaderTemplateProperty,
                () => Pivot.SelectedItemProperty);

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages", "FBReader.AppServices.ViewModels.Pages", "Page");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages", "FBReader.App.Views.Pages", "Page");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Settings", "FBReader.AppServices.ViewModels.Pages.Settings", "");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Settings", "FBReader.App.Views.Pages.Settings", "");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Settings", "FBReader.AppServices.ViewModels.Pages.Settings", "View");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Settings", "FBReader.App.Views.Pages.Settings", "View");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Settings", "FBReader.AppServices.ViewModels.Pages.Settings", "Page");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Settings", "FBReader.App.Views.Pages.Settings", "Page");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.MainHub", "FBReader.AppServices.ViewModels.Pages.MainHub");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.MainHub", "FBReader.App.Views.Pages.MainHub");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Bookmarks", "FBReader.AppServices.ViewModels.Pages.Bookmarks", "");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Bookmarks", "FBReader.App.Views.Pages.Bookmarks", "");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Bookmarks", "FBReader.AppServices.ViewModels.Pages.Bookmarks", "View");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Bookmarks", "FBReader.App.Views.Pages.Bookmarks", "View");

            ViewModelLocator.AddNamespaceMapping("FBReader.App.Views.Pages.Catalogs", "FBReader.AppServices.ViewModels.Pages.Catalogs", "");
            ViewLocator.AddNamespaceMapping("FBReader.AppServices.ViewModels.Pages.Catalogs", "FBReader.App.Views.Pages.Catalogs", "");
        }
Exemple #12
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("NDC.Build.App.Droid.Activities", "NDC.Build.Core.ViewModels");

            container = new SimpleContainer();

            container.Instance(this);

            container
            .Singleton <ITeamServicesClient, OfflineTeamServicesClient>()
            .Singleton <IAuthenticationService, OfflineAuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <ICredentialsService, PreferencesCredentialsService>()
            .Singleton <IDialogService, AlertDialogService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <ProjectsViewModel>()
            .PerRequest <BuildsViewModel>();
        }
Exemple #13
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("NDC.Build.App.iOS", "NDC.Build.Core.ViewModels");

            container = new SimpleContainer();

            container.Instance(this);

            container
            .Singleton <ITeamServicesClient, TeamServicesClient>()
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IApplicationNavigationService, StoryboardNavigationService>()
            .Singleton <ICredentialsService, UserDefaultsCredentialsService>()
            .Singleton <IDialogService, ActionSheetDialogService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <ProjectsViewModel>()
            .PerRequest <BuildsViewModel>();
        }
Exemple #14
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Spending.App.Android.Activities", "Spending.Core.ViewModels");

            container = new SimpleContainer();

            container
            .Instance <IMobileServiceClient>(new MobileServiceClient("https://spending.azurewebsites.net"))
            .Instance(this);

            container
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <IExpenseService, ExpenseService>()
            .Singleton <INotificationsService, NotificationsService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <CurrentExpensesViewModel>()
            .PerRequest <AddExpenseViewModel>();
        }
Exemple #15
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("Spending.App.Windows.Views", "Spending.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("Spending.Core.ViewModels", "Spending.App.Windows.Views");

            container = new WinRTContainer();
            container.RegisterWinRTServices();

            container
            .Instance <IMobileServiceClient>(new MobileServiceClient("https://spending.azurewebsites.net"));

            container
            .Singleton <IAuthenticationService, AuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <IExpenseService, ExpenseService>()
            .Singleton <INotificationsService, NotificationsService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <CurrentExpensesViewModel>()
            .PerRequest <AddExpenseViewModel>();
        }
Exemple #16
0
        protected override void Configure()
        {
            ConfigureTitleBar();

            ViewModelLocator.AddNamespaceMapping("Demo.App.Views", "Demo.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("Demo.Core.ViewModels", "Demo.App.Views");

            container = new WinRTContainer();
            container.RegisterWinRTServices();

            container.Singleton <ISettingsService, StorageSettingsService>();
            container.Singleton <IRepositoryService, RepositoryService>();
            container.Singleton <IIssuesService, IssuesService>();

            container.Instance(CreateClient());

            container
            .ViewModel <ShellViewModel>()
            .ViewModel <MenuViewModel>()
            .ViewModel <RepositoryDetailsViewModel>()
            .ViewModel <IssuesListViewModel>();
        }
Exemple #17
0
        protected override void Configure()
        {
            ViewModelLocator.AddNamespaceMapping("NDC.Build.App.UWP.Views", "NDC.Build.Core.ViewModels");
            ViewLocator.AddNamespaceMapping("NDC.Build.Core.ViewModels", "NDC.Build.App.UWP.Views");

            MessageBinder.SpecialValues.Add("$clickedItem", c => ((ItemClickEventArgs)c.EventArgs).ClickedItem);

            container = new WinRTContainer();

            container.RegisterWinRTServices();

            container
            .Singleton <ITeamServicesClient, OfflineTeamServicesClient>()
            .Singleton <IAuthenticationService, OfflineAuthenticationService>()
            .Singleton <IApplicationNavigationService, ApplicationNavigationService>()
            .Singleton <ICredentialsService, SettingsCredentialsService>()
            .Singleton <IDialogService, ContentDialogService>();

            container
            .PerRequest <LoginViewModel>()
            .PerRequest <ProjectsViewModel>()
            .PerRequest <BuildsViewModel>();
        }