public bool SwitchActivity(ActivityType activity_type, ActivitySwitchMethod method, KaikeiSystemBody.models.Context context, object option = null) { var next_activity = GetActivity(activity_type); var form_x = CurrentActivity.Form.Left; var form_y = CurrentActivity.Form.Top; var form_w = CurrentActivity.Form.Width; var form_h = CurrentActivity.Form.Height; switch (method) { case ActivitySwitchMethod.Change: CurrentActivity.HideForm(); activityStack.Pop(); activityStack.Push(next_activity); CurrentActivity.ShowForm(form_x, form_y, context, option); break; case ActivitySwitchMethod.Push: CurrentActivity.HideForm(); activityStack.Push(next_activity); CurrentActivity.ShowForm(form_x, form_y, context, option); break; case ActivitySwitchMethod.PushModal: activityStack.Push(next_activity); CurrentActivity.ShowFormModal(form_x + form_w / 2, form_y + form_h / 2, context, option); break; } return(true); }
public bool PopActivity() { if (activityStack.Count >= 2) { int x = CurrentActivity.Form.Left; int y = CurrentActivity.Form.Top; CurrentActivity.HideForm(); activityStack.Pop(); if (CurrentActivity.FormState == AbstractActivity.State.Hide) { CurrentActivity.ShowForm(x, y, CurrentActivity.Context, null); } return(true); } else { return(false); } }