private void BindProjectButton(ProjectClientTaskButton v) { var projectName = "EditEntryProjectHint".Tr(); var projectColor = Color.White; var clientName = String.Empty; var taskName = String.Empty; if (model.Project != null) { projectName = model.Project.Name; projectColor = UIColor.Clear.FromHex(model.Project.GetHexColor()); if (model.Project.Client != null) { clientName = model.Project.Client.Name; } if (model.Task != null) { taskName = model.Task.Name; } } v.ProjectColor = projectColor; v.ProjectName = projectName; v.ClientName = clientName; v.TaskName = taskName; }
public override void LoadView () { durationButton = new UIButton ().Apply (Style.NavTimer.DurationButton); durationButton.SetTitle (DefaultDurationText, UIControlState.Normal); // Dummy content to use for sizing of the label durationButton.SizeToFit (); durationButton.TouchUpInside += OnDurationButtonTouchUpInside; NavigationItem.TitleView = durationButton; var scrollView = new UIScrollView ().Apply (Style.Screen); scrollView.Add (wrapper = new UIView () { TranslatesAutoresizingMaskIntoConstraints = false, }); wrapper.Add (startStopView = new StartStopView { TranslatesAutoresizingMaskIntoConstraints = false, StartTime = ViewModel.StartDate, StopTime = ViewModel.StopDate, }); startStopView.SelectedChanged += OnStartStopViewSelectedChanged; wrapper.Add (datePicker = new UIDatePicker { TranslatesAutoresizingMaskIntoConstraints = false, Hidden = DatePickerHidden, Alpha = 0, } .Apply (Style.EditTimeEntry.DatePicker)); datePicker.ValueChanged += OnDatePickerValueChanged; wrapper.Add (projectButton = new ProjectClientTaskButton { TranslatesAutoresizingMaskIntoConstraints = false, }); projectButton.TouchUpInside += OnProjectButtonTouchUpInside; wrapper.Add (descriptionTextField = new TextField { TranslatesAutoresizingMaskIntoConstraints = false, AttributedPlaceholder = new NSAttributedString ( "EditEntryDesciptionTimerHint".Tr (), foregroundColor: Color.Gray ), ShouldReturn = tf => tf.ResignFirstResponder (), } .Apply (Style.EditTimeEntry.DescriptionField)); descriptionTextField.ShouldBeginEditing += (s) => { ForceDimissDatePicker(); return true; }; descriptionTextField.ShouldEndEditing += s => { return true; }; wrapper.Add (tagsButton = new UIButton () { TranslatesAutoresizingMaskIntoConstraints = false, } .Apply (Style.EditTimeEntry.TagsButton)); tagsButton.TouchUpInside += OnTagsButtonTouchUpInside; wrapper.Add (billableSwitch = new LabelSwitchView () { TranslatesAutoresizingMaskIntoConstraints = false, Text = "EditEntryBillable".Tr (), } .Apply (Style.EditTimeEntry.BillableContainer)); billableSwitch.Label.Apply (Style.EditTimeEntry.BillableLabel); wrapper.Add (deleteButton = new UIButton () { TranslatesAutoresizingMaskIntoConstraints = false, } .Apply (Style.EditTimeEntry.DeleteButton)); deleteButton.SetTitle ("EditEntryDelete".Tr (), UIControlState.Normal); deleteButton.TouchUpInside += OnDeleteButtonTouchUpInside; ResetWrapperConstraints (); scrollView.AddConstraints ( wrapper.AtTopOf (scrollView), wrapper.AtBottomOf (scrollView), wrapper.AtLeftOf (scrollView), wrapper.AtRightOf (scrollView), wrapper.WithSameWidth (scrollView), wrapper.Height ().GreaterThanOrEqualTo ().HeightOf (scrollView).Minus (64f), null ); View = scrollView; }
public override void LoadView() { var scrollView = new UIScrollView().Apply(Style.Screen); scrollView.Add(wrapper = new UIView() { TranslatesAutoresizingMaskIntoConstraints = false, }); wrapper.Add(startStopView = new StartStopView() { TranslatesAutoresizingMaskIntoConstraints = false, StartTime = model.StartTime, StopTime = model.StopTime, }.Apply(BindStartStopView)); startStopView.SelectedChanged += OnStartStopViewSelectedChanged; wrapper.Add(datePicker = new UIDatePicker() { TranslatesAutoresizingMaskIntoConstraints = false, Hidden = DatePickerHidden, Alpha = 0, }.Apply(Style.EditTimeEntry.DatePicker).Apply(BindDatePicker)); datePicker.ValueChanged += OnDatePickerValueChanged; wrapper.Add(projectButton = new ProjectClientTaskButton() { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply(BindProjectButton)); projectButton.TouchUpInside += OnProjectButtonTouchUpInside; wrapper.Add(descriptionTextField = new TextField() { TranslatesAutoresizingMaskIntoConstraints = false, AttributedPlaceholder = new NSAttributedString( "EditEntryDesciptionTimerHint".Tr(), foregroundColor: Color.Gray ), ShouldReturn = (tf) => tf.ResignFirstResponder(), }.Apply(Style.EditTimeEntry.DescriptionField).Apply(BindDescriptionField)); descriptionTextField.EditingChanged += OnDescriptionFieldEditingChanged; descriptionTextField.EditingDidEnd += (s, e) => CommitDescriptionChanges(); wrapper.Add(tagsButton = new UIButton() { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply(Style.EditTimeEntry.TagsButton).Apply(BindTagsButton)); tagsButton.TouchUpInside += OnTagsButtonTouchUpInside; wrapper.Add(billableSwitch = new LabelSwitchView() { TranslatesAutoresizingMaskIntoConstraints = false, Text = "EditEntryBillable".Tr(), }.Apply(Style.EditTimeEntry.BillableContainer).Apply(BindBillableSwitch)); billableSwitch.Label.Apply(Style.EditTimeEntry.BillableLabel); billableSwitch.Switch.ValueChanged += OnBillableSwitchValueChanged; wrapper.Add(deleteButton = new UIButton() { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply(Style.EditTimeEntry.DeleteButton)); deleteButton.SetTitle("EditEntryDelete".Tr(), UIControlState.Normal); deleteButton.TouchUpInside += OnDeleteButtonTouchUpInside; wrapper.AddConstraints(VerticalLinearLayout(wrapper)); scrollView.AddConstraints( wrapper.AtTopOf(scrollView), wrapper.AtBottomOf(scrollView), wrapper.AtLeftOf(scrollView), wrapper.AtRightOf(scrollView), wrapper.WithSameWidth(scrollView), wrapper.Height().GreaterThanOrEqualTo().HeightOf(scrollView).Minus(64f), null ); View = scrollView; }
public override void LoadView () { var scrollView = new UIScrollView ().Apply (Style.Screen); scrollView.Add (wrapper = new UIView () { TranslatesAutoresizingMaskIntoConstraints = false, }); wrapper.Add (startStopView = new StartStopView () { TranslatesAutoresizingMaskIntoConstraints = false, StartTime = model.StartTime, StopTime = model.StopTime, }.Apply (BindStartStopView)); startStopView.SelectedChanged += OnStartStopViewSelectedChanged; wrapper.Add (datePicker = new UIDatePicker () { TranslatesAutoresizingMaskIntoConstraints = false, Hidden = DatePickerHidden, Alpha = 0, }.Apply (Style.EditTimeEntry.DatePicker).Apply (BindDatePicker)); datePicker.ValueChanged += OnDatePickerValueChanged; wrapper.Add (projectButton = new ProjectClientTaskButton () { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply (BindProjectButton)); projectButton.TouchUpInside += OnProjectButtonTouchUpInside; wrapper.Add (descriptionTextField = new TextField () { TranslatesAutoresizingMaskIntoConstraints = false, AttributedPlaceholder = new NSAttributedString ( "EditEntryDesciptionTimerHint".Tr (), foregroundColor: Color.Gray ), ShouldReturn = (tf) => tf.ResignFirstResponder (), }.Apply (Style.EditTimeEntry.DescriptionField).Apply (BindDescriptionField)); descriptionTextField.EditingChanged += OnDescriptionFieldEditingChanged; descriptionTextField.EditingDidEnd += (s, e) => CommitDescriptionChanges (); wrapper.Add (tagsButton = new UIButton () { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply (Style.EditTimeEntry.TagsButton).Apply (BindTagsButton)); tagsButton.TouchUpInside += OnTagsButtonTouchUpInside; wrapper.Add (billableSwitch = new LabelSwitchView () { TranslatesAutoresizingMaskIntoConstraints = false, Text = "EditEntryBillable".Tr (), }.Apply (Style.EditTimeEntry.BillableContainer).Apply (BindBillableSwitch)); billableSwitch.Label.Apply (Style.EditTimeEntry.BillableLabel); billableSwitch.Switch.ValueChanged += OnBillableSwitchValueChanged; wrapper.Add (deleteButton = new UIButton () { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply (Style.EditTimeEntry.DeleteButton)); deleteButton.SetTitle ("EditEntryDelete".Tr (), UIControlState.Normal); deleteButton.TouchUpInside += OnDeleteButtonTouchUpInside; wrapper.AddConstraints (VerticalLinearLayout (wrapper)); scrollView.AddConstraints ( wrapper.AtTopOf (scrollView), wrapper.AtBottomOf (scrollView), wrapper.AtLeftOf (scrollView), wrapper.AtRightOf (scrollView), wrapper.WithSameWidth (scrollView), wrapper.Height ().GreaterThanOrEqualTo ().HeightOf (scrollView).Minus (64f), null ); View = scrollView; }
private void BindProjectButton (ProjectClientTaskButton v) { var projectName = "EditEntryProjectHint".Tr (); var projectColor = Color.White; var clientName = String.Empty; var taskName = String.Empty; if (model.Project != null) { projectName = model.Project.Name; projectColor = UIColor.Clear.FromHex (model.Project.GetHexColor ()); if (model.Project.Client != null) { clientName = model.Project.Client.Name; } if (model.Task != null) { taskName = model.Task.Name; } } v.ProjectColor = projectColor; v.ProjectName = projectName; v.ClientName = clientName; v.TaskName = taskName; }
public override void LoadView() { durationButton = new UIButton().Apply(Style.NavTimer.DurationButton); durationButton.SetTitle(DefaultDurationText, UIControlState.Normal); // Dummy content to use for sizing of the label durationButton.SizeToFit(); durationButton.TouchUpInside += OnDurationButtonTouchUpInside; NavigationItem.TitleView = durationButton; var scrollView = new UIScrollView().Apply(Style.Screen); scrollView.Add(wrapper = new UIView() { TranslatesAutoresizingMaskIntoConstraints = false, }); wrapper.Add(startStopView = new StartStopView { TranslatesAutoresizingMaskIntoConstraints = false, StartTime = ViewModel.StartDate, StopTime = ViewModel.StopDate, }); startStopView.SelectedChanged += OnStartStopViewSelectedChanged; wrapper.Add(datePicker = new UIDatePicker { TranslatesAutoresizingMaskIntoConstraints = false, Hidden = DatePickerHidden, Alpha = 0, }.Apply(Style.EditTimeEntry.DatePicker)); datePicker.ValueChanged += OnDatePickerValueChanged; wrapper.Add(projectButton = new ProjectClientTaskButton { TranslatesAutoresizingMaskIntoConstraints = false, }); projectButton.TouchUpInside += OnProjectButtonTouchUpInside; wrapper.Add(descriptionTextField = new TextField { TranslatesAutoresizingMaskIntoConstraints = false, AttributedPlaceholder = new NSAttributedString( "EditEntryDesciptionTimerHint".Tr(), foregroundColor: Color.Gray ), ShouldReturn = tf => tf.ResignFirstResponder(), }.Apply(Style.EditTimeEntry.DescriptionField)); descriptionTextField.ShouldBeginEditing += (s) => { ForceDimissDatePicker(); return(true); }; descriptionTextField.ShouldEndEditing += s => { return(true); }; wrapper.Add(tagsButton = new UIButton() { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply(Style.EditTimeEntry.TagsButton)); tagsButton.TouchUpInside += OnTagsButtonTouchUpInside; wrapper.Add(billableSwitch = new LabelSwitchView() { TranslatesAutoresizingMaskIntoConstraints = false, Text = "EditEntryBillable".Tr(), }.Apply(Style.EditTimeEntry.BillableContainer)); billableSwitch.Label.Apply(Style.EditTimeEntry.BillableLabel); wrapper.Add(deleteButton = new UIButton() { TranslatesAutoresizingMaskIntoConstraints = false, }.Apply(Style.EditTimeEntry.DeleteButton)); deleteButton.SetTitle("EditEntryDelete".Tr(), UIControlState.Normal); deleteButton.TouchUpInside += OnDeleteButtonTouchUpInside; ResetWrapperConstraints(); scrollView.AddConstraints( wrapper.AtTopOf(scrollView), wrapper.AtBottomOf(scrollView), wrapper.AtLeftOf(scrollView), wrapper.AtRightOf(scrollView), wrapper.WithSameWidth(scrollView), wrapper.Height().GreaterThanOrEqualTo().HeightOf(scrollView).Minus(64f), null ); View = scrollView; }