예제 #1
0
 public DrawerToggle(Android.Support.V7.App.AppCompatActivity host, DrawerLayout drawerLayout, int openedResource, int closedResource)
     : base(host, drawerLayout, openedResource, closedResource)
 {
     mHostActivity   = host;
     mOpenedResource = openedResource;
     mClosedResource = closedResource;
 }
예제 #2
0
 public override bool OnOptionsItemSelected(IMenuItem item)
 {
     if (item.ItemId == Android.Resource.Id.Home)
     {
         Activity.OnBackPressed();
     }
     return(base.OnOptionsItemSelected(item));
 }
예제 #3
0
 private void OnModelLoaded(object sender, EventArgs e)
 {
     if (!viewModel.IsLoading)
     {
         if (viewModel.Model == null)
         {
             Activity.Finish();
         }
     }
 }
예제 #4
0
        public override void OnActivityResult(int requestCode, int resultCode, Intent data)
        {
            base.OnActivityResult(requestCode, resultCode, data);

            if (requestCode == ProjectCreatedRequestCode)
            {
                if (resultCode == (int)Result.Ok)
                {
                    Activity.Finish();
                }
            }
        }
예제 #5
0
        private async void OnItemSelected(object m)
        {
            ProjectModel   project   = null;
            WorkspaceModel workspace = null;
            TaskData       task      = null;

            if (m is WorkspaceProjectsView.Project)
            {
                var wrap = (WorkspaceProjectsView.Project)m;
                if (wrap.IsNoProject)
                {
                    workspace = new WorkspaceModel(wrap.WorkspaceId);
                }
                else if (wrap.IsNewProject)
                {
                    // Show create project activity instead
                    var entryList = new List <TimeEntryData> (viewModel.TimeEntryList);
                    var intent    = BaseActivity.CreateDataIntent <NewProjectActivity, List <TimeEntryData> >
                                        (Activity, entryList, NewProjectActivity.ExtraTimeEntryDataListId);
                    StartActivityForResult(intent, ProjectCreatedRequestCode);
                }
                else
                {
                    project   = (ProjectModel)wrap.Data;
                    workspace = project.Workspace;
                }
            }
            else if (m is ProjectAndTaskView.Workspace)
            {
                var wrap = (ProjectAndTaskView.Workspace)m;
                workspace = (WorkspaceModel)wrap.Data;
            }
            else if (m is TaskData)
            {
                task      = (TaskData)m;
                project   = new ProjectModel(task.ProjectId);
                workspace = new WorkspaceModel(task.WorkspaceId);
            }

            if (project != null || workspace != null)
            {
                await viewModel.SaveModelAsync(project, workspace, task);

                Activity.Finish();
            }
        }
예제 #6
0
        public async override void OnViewCreated(View view, Bundle savedInstanceState)
        {
            base.OnViewCreated(view, savedInstanceState);

            if (viewModel == null)
            {
                var timeEntryList = await ProjectListActivity.GetIntentTimeEntryData(Activity.Intent);

                if (timeEntryList.Count == 0)
                {
                    Activity.Finish();
                    return;
                }
                viewModel = new ProjectListViewModel(timeEntryList);
            }

            var adapter = new ProjectListAdapter(recyclerView, viewModel.ProjectList);

            adapter.HandleProjectSelection = OnItemSelected;
            recyclerView.SetAdapter(adapter);

            viewModel.OnIsLoadingChanged += OnModelLoaded;
            await viewModel.Init();
        }
예제 #7
0
 public LeaderboardPageAdapter(Android.Support.V4.App.FragmentManager fm, Android.Support.V7.App.AppCompatActivity theActivity)
     : base(fm)
 {
     activity = theActivity;
 }