}                                                                  // toolbar items which should always be displayed

        public ContentContainerViewModel(IAnalyticsService analytics, INavigator navigator
                                         , Func <LocationsViewModel> locationFactory, Func <Location, LanguagesViewModel> languageFactory
                                         , IViewFactory viewFactory, DataLoaderProvider dataLoaderProvider, Func <ContentContainerViewModel, SettingsPageViewModel> settingsFactory)
            : base(analytics)
        {
            _navigator          = navigator;
            _locationFactory    = locationFactory;
            _languageFactory    = languageFactory;
            _dataLoaderProvider = dataLoaderProvider;
            _settingsFactory    = settingsFactory;

            _viewFactory = viewFactory;

            LoadLanguage();
            Current = this;

            DefaultToolbarItems = new List <ToolbarItem>();
        }
        public MainContentPageViewModel(IAnalyticsService analytics, INavigator navigator,
                                        DataLoaderProvider dataLoaderProvider, Func <Page, PageViewModel> pageViewModelFactory
                                        , IDialogProvider dialogProvider
                                        , Func <PageViewModel, IList <PageViewModel>, MainTwoLevelViewModel> twoLevelViewModelFactory
                                        , Func <IEnumerable <PageViewModel>, SearchViewModel> pageSearchViewModelFactory
                                        , IViewFactory viewFactory, Func <string, GeneralWebViewPageViewModel> generalWebViewFactory
                                        , Func <string, PdfWebViewPageViewModel> pdfWebViewFactory,
                                        Func <string, ImagePageViewModel> imagePageFactory)
            : base(analytics, dataLoaderProvider)
        {
            Title      = AppResources.Categories;
            Icon       = Device.RuntimePlatform == Device.Android ? null : "home150";
            _navigator = navigator;
            _navigator.HideToolbar(this);
            _dataLoaderProvider         = dataLoaderProvider;
            _pageViewModelFactory       = pageViewModelFactory;
            _twoLevelViewModelFactory   = twoLevelViewModelFactory;
            _dialogProvider             = dialogProvider;
            _pageSearchViewModelFactory = pageSearchViewModelFactory;
            _viewFactory           = viewFactory;
            _generalWebViewFactory = generalWebViewFactory;
            _pdfWebViewFactory     = pdfWebViewFactory;
            _imagePageFactory      = imagePageFactory;

            _shownPages = new Stack <PageViewModel>();

            ItemTappedCommand     = new Command(OnPageTapped);
            OpenSearchCommand     = new Command(OnOpenSearch);
            ChangeLanguageCommand = new Command(OnChangeLanguage);
            ChangeLocationCommand = new Command(OnChangeLocation);
            OpenContactsCommand   = new Command(OnOpenContacts);

            // add search icon to toolbar
            ToolbarItems = new List <ToolbarItem>
            {
                new ToolbarItem {
                    Text = AppResources.Search, Icon = "search.png", Command = OpenSearchCommand
                }
            };

            Current = this;
        }
Esempio n. 3
0
        private readonly ContentContainerViewModel _contentContainer; // content container needed to open location selection after clearing settings

        public SettingsPageViewModel(IAnalyticsService analyticsService, INavigator navigator,
                                     ContentContainerViewModel contentContainer, DataLoaderProvider dataLoaderProvider
                                     , IViewFactory viewFactory, Func <string, GeneralWebViewPageViewModel> generalWebViewFactory) : base(
                analyticsService, dataLoaderProvider)
        {
            _navigator             = navigator;
            _contentContainer      = contentContainer;
            _generalWebViewFactory = generalWebViewFactory;
            HtmlRawViewCommand     = new Command(HtmlRawView);

            Title                      = AppResources.Settings;
            ClearCacheCommand          = new Command(ClearCache);
            ResetSettingsCommand       = new Command(ResetSettings);
            OpenDisclaimerCommand      = new Command(OpenDisclaimer);
            SwitchRefreshOptionCommand = new Command(SwitchRefreshOption);
            UpdateCacheSizeText();

            _tapCount = 0;
            OnRefresh();
        }
Esempio n. 4
0
 protected BaseContentViewModel(IAnalyticsService analyticsService, DataLoaderProvider dataLoaderProvider) : base(analyticsService)
 {
     _dataLoaderProvider = dataLoaderProvider;
     _loaderLocks        = new ConcurrentDictionary <string, bool>();
     LoadSettings();
 }
        public SprungbrettViewModel(IAnalyticsService analytics, INavigator navigator, DataLoaderProvider dataLoaderProvider, Func <string, GeneralWebViewPageViewModel> generalWebViewFactory)
            : base(analytics, dataLoaderProvider)
        {
            Title                  = "Sprungbrett";
            HeaderImage            = "sbi_logo";
            _navigator             = navigator;
            _generalWebViewFactory = generalWebViewFactory;

            _navigator.HideToolbar(this);
        }