예제 #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            SetContentView(Resource.Layout.activity_main);

            mToolbar = FindViewById <Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            SetSupportActionBar(mToolbar);
            mRecyclerViewSubReddit   = FindViewById <RecyclerView>(Resource.Id.rvSubReddit);
            mTextInputEditTextSearch = FindViewById <TextInputEditText>(Resource.Id.tvSearchInputValue);
            mProgressBarSearch       = FindViewById <ProgressBar>(Resource.Id.progressbarSearch);
            //mSearchViewRedditKeyword = FindViewById<Android.Support.V7.Widget.SearchView>(Resource.Id.sVSubRedditKeyword);

            redditApi = RestService.For <IRedditApi>(Constants.REDDIT_URL);


            mSubRedditItemsViewPresenter = new SubRedditItemsViewPresenter(this);

            //mProgressDialog = new ProgressDialog(this);
            //mProgressDialog.SetMessage(GetString(Resource.String.url_loading));
            //mProgressDialog.SetCancelable(true);


            //init adapter
            mLayoutManager = new LinearLayoutManager(this);
            mRecyclerViewSubReddit.SetLayoutManager(mLayoutManager);
            DividerItemDecoration itemDecorator = new DividerItemDecoration(this, DividerItemDecoration.Vertical);

            itemDecorator.SetDrawable(ContextCompat.GetDrawable(this, Resource.Drawable.item_divider));

            mRecyclerViewSubReddit.AddItemDecoration(itemDecorator);

            mSearchButton        = FindViewById <Button>(Resource.Id.search_button);
            mSearchButton.Click += SearchButton_Click;
        }
예제 #2
0
 private PostCollection(IRedditApi api, string subreddit, string sortMode, int count)
 {
     this.api = api;
     this.subreddit = subreddit;
     this.sortMode = sortMode;
     this.count = count;
 }
예제 #3
0
        /// <summary>
        /// Initializes a new instance of the MainViewModel class.
        /// </summary>
        public MainViewModel(IRedditApi dataService)
        {
            this._dataService = dataService;
            this.Subreddits = new ObservableCollection<SubredditViewModel>();
            this.BackArrowPress = new RelayCommand(BackArrowPressAction);
            this.QuickNavigate = new RelayCommand(QuickNavigateAction);

            Messenger.Default.Register<PropertyChangedMessage<PostViewModel>>(this, (msg) =>
            {
                if (msg.PropertyName == "SelectedPost")
                {
                    this.CurrentPost = msg.NewValue;
                }
            });

            Messenger.Default.Register<LinkClickedMessage>(this, (msg) =>
            {
                if (this.IsShowingComments)
                {
                    ChangeViewAction();
                }
            });

            _changeView = new RelayCommand(ChangeViewAction);
        }
예제 #4
0
 private PostCollection(IRedditApi api, string subreddit, string sortMode, int count)
 {
     this.api       = api;
     this.subreddit = subreddit;
     this.sortMode  = sortMode;
     this.count     = count;
 }
예제 #5
0
        public SettingsViewModel(IRedditApi dataService)
        {
            _dataService = dataService;

            if (PasswordVaultWrapper.IsStored())
            {
                _currentState = FormState.LoggedIn;
                _username = PasswordVaultWrapper.GetUsername();
                _password = PasswordVaultWrapper.GetPassword();
            }
            else
            {
                _currentState = FormState.LoggedOut;
                _username = "";
                _password = "";
            }

            Login = new RelayCommand(DoLogin, () => { return _currentState != FormState.LoggingIn; });
        }
예제 #6
0
 public CommentCollection(IRedditApi api, string subreddit, string postId)
 {
     this.api = api;
     this.subreddit = subreddit;
     this.postId = postId;
 }
예제 #7
0
 public RedditClient()
 {
     this.api = RestClient.For<IRedditApi>("http://reddit.com");
 }
예제 #8
0
 public PostCollection(IRedditApi api, string subreddit, string sortMode)
     : this(api, subreddit, sortMode, 0) { }
예제 #9
0
 public CommentCollection(IRedditApi api, string subreddit, string postId)
 {
     this.api       = api;
     this.subreddit = subreddit;
     this.postId    = postId;
 }
예제 #10
0
 public AdminController(IConfiguration configuration, IRedditApi redditApi, DatabaseFactory dbFactory)
 {
     Configuration  = configuration;
     this.redditApi = redditApi;
     this.dbFactory = dbFactory;
 }
예제 #11
0
 public SubRedditItemsViewPresenter(ISubRedditItemsView subRedditItemsView) : base(subRedditItemsView)
 {
     this.subRedditItemsView = subRedditItemsView;
     redditApi = RestService.For <IRedditApi>("https://reddit.com");
 }
예제 #12
0
 public PostCollection(IRedditApi api, string subreddit, string sortMode)
     : this(api, subreddit, sortMode, 0)
 {
 }
예제 #13
0
 public RedditClient()
 {
     this.api = RestClient.For <IRedditApi>("http://reddit.com");
 }