public void SetColors(ProjectDagViewProjectUur vpu, int quarter) { switch (quarter) { case 1: if (vpu.IsEnabledQ1) { SetButtonColor(vpu.btn15, vpu.IsIngeplandQ1, vpu.IsAangevraagdQ1, vpu.IsSelectedQ1, vpu.IsOwner, vpu.IsEnabledQ1, vpu.isErgensAangevraagdQ1, vpu.IsDeSelectedQ1, vpu.IsAangevraagdQ1AndCancelled, true, vpu.IsErgensDoorMijIngeplandQ1, vpu.IsErgensDoorMijAangevraagdQ1, vpu.IsErgensDoorMijAangevraagdQ1AndCancelled); } break; case 2: if (vpu.IsEnabledQ2) { SetButtonColor(vpu.btn30, vpu.IsIngeplandQ2, vpu.IsAangevraagdQ2, vpu.IsSelectedQ2, vpu.IsOwner, vpu.IsEnabledQ2, vpu.isErgensAangevraagdQ2, vpu.IsDeSelectedQ2, vpu.IsAangevraagdQ2AndCancelled, true, vpu.IsErgensDoorMijIngeplandQ2, vpu.IsErgensDoorMijAangevraagdQ2, vpu.IsErgensDoorMijAangevraagdQ2AndCancelled); } break; case 3: if (vpu.IsEnabledQ3) { SetButtonColor(vpu.btn45, vpu.IsIngeplandQ3, vpu.IsAangevraagdQ3, vpu.IsSelectedQ3, vpu.IsOwner, vpu.IsEnabledQ3, vpu.isErgensAangevraagdQ3, vpu.IsDeSelectedQ3, vpu.IsAangevraagdQ3AndCancelled, true, vpu.IsErgensDoorMijIngeplandQ3, vpu.IsErgensDoorMijAangevraagdQ3, vpu.IsErgensDoorMijAangevraagdQ3AndCancelled); } break; case 4: if (vpu.IsEnabledQ4) { SetButtonColor(vpu.btn60, vpu.IsIngeplandQ4, vpu.IsAangevraagdQ4, vpu.IsSelectedQ4, vpu.IsOwner, vpu.IsEnabledQ4, vpu.isErgensAangevraagdQ4, vpu.IsDeSelectedQ4, vpu.IsAangevraagdQ4AndCancelled, true, vpu.IsErgensDoorMijIngeplandQ4, vpu.IsErgensDoorMijAangevraagdQ4, vpu.IsErgensDoorMijAangevraagdQ4AndCancelled); } break; } }
/// <summary> /// /// </summary> /// <param name="vp"></param> /// <param name="Q"></param> /// <param name="state"></param> public void ToggleButtons(ProjectDagViewProjectUur vp, int Q, int state, bool hoverOverOwner) { switch (Q) { case 1: if (state == 0) { vp.IsSelectedQ1 = false; vp.IsDeSelectedQ1 = true; //if (vp.IsOwner && hoverOverOwner) //{ // vp.IsDeSelectedQ1 = true; //} SetColors(vp, 1); } break; case 2: if (state == 0) { vp.IsSelectedQ2 = false; vp.IsDeSelectedQ2 = true; //if (vp.IsOwner && hoverOverOwner) //{ // vp.IsDeSelectedQ2 = true; //} SetColors(vp, 2); } break; case 3: if (state == 0) { vp.IsSelectedQ3 = false; vp.IsDeSelectedQ3 = true; //if (vp.IsOwner && hoverOverOwner) //{ // vp.IsDeSelectedQ3 = true; //} SetColors(vp, 3); } break; case 4: if (state == 0) { vp.IsSelectedQ4 = false; vp.IsDeSelectedQ4 = true; //if (vp.IsOwner && hoverOverOwner) //{ // vp.IsDeSelectedQ4 = true; //} SetColors(vp, 4); } break; } }
/// <summary> /// /// </summary> /// <param name="vpSender"></param> /// <param name="Q"></param> /// <param name="state"></param> public void ToggleOthers(ProjectDagViewProjectUur vpSender, int Q, int state) { foreach (ProjectDagViewProjectUur vp in ((WrapPanel)this.Parent).Children) { if (vp.Uur == vpSender.Uur && vp != vpSender) { ToggleButtons(vp, Q, state, vpSender.IsOwner); } } }
public bool IsInRange(ProjectDagViewProjectUur vp, int quarter) { if ((selectionDirection)ApplicationState.GetValue <int>("selectionDirection") == selectionDirection.Right) { return((vp.Uur * 4 + quarter) >= ApplicationState.GetValue <int>("MouseFirstEnterPosition") && (vp.Uur * 4 + quarter) <= ApplicationState.GetValue <int>("MouseLastEnterPosition")); } else if ((selectionDirection)ApplicationState.GetValue <int>("selectionDirection") == selectionDirection.Left) { return((vp.Uur * 4 + quarter) >= ApplicationState.GetValue <int>("MouseLastEnterPosition") && (vp.Uur * 4 + quarter) <= ApplicationState.GetValue <int>("MouseFirstEnterPosition")); } else if ((vp.Uur * 4 + quarter) == ApplicationState.GetValue <int>("MouseFirstEnterPosition")) { return(true); } else { return(false); } }
/// <summary> /// /// </summary> /// <param name="button"></param> /// <param name="e"></param> /// <param name="isIngepland"></param> /// <param name="isAangevraagd"></param> /// <param name="isSelected"></param> /// <param name="quarter"></param> private void SetMouseActions(Border button, MouseEventArgs e, bool isIngepland, bool isAangevraagd, bool isSelected, int quarter) { try { //if (IsOwner || (quarter == 1 && IsEnabledQ1) || (quarter == 2 && IsEnabledQ2) || (quarter == 3 && IsEnabledQ3) || (quarter == 4 && IsEnabledQ4)) if (IsOwner) { if ((quarter == 1 && IsEnabledQ1) || (quarter == 2 && IsEnabledQ2) || (quarter == 3 && IsEnabledQ3) || (quarter == 4 && IsEnabledQ4)) { //Mouse.SetCursor(Cursors.SizeWE); } if (e.LeftButton == MouseButtonState.Pressed) { Point absoluteScreenPos = PointToScreen(Mouse.GetPosition(this)); ApplicationState.SetValue("MouseLastEnterPosition", this.Uur * 4 + quarter); if ((selectionDirection)ApplicationState.GetValue <int>("selectionDirection") == selectionDirection.Unknown && ApplicationState.GetValue <int>("MouseFirstEnterPosition") > 0 && ApplicationState.GetValue <int>("MouseLastEnterPosition") > 0) { if (ApplicationState.GetValue <int>("MouseFirstEnterPosition") > ApplicationState.GetValue <int>("MouseLastEnterPosition")) { ApplicationState.SetValue("selectionDirection", selectionDirection.Left); } else if (ApplicationState.GetValue <int>("MouseFirstEnterPosition") < ApplicationState.GetValue <int>("MouseLastEnterPosition")) { ApplicationState.SetValue("selectionDirection", selectionDirection.Right); } } if (!blnIsMouseButtonPressed) { //Mouse.SetCursor(Cursors.SizeWE); // test to lock the mouse System.Drawing.Rectangle r = new System.Drawing.Rectangle(10, (int)absoluteScreenPos.Y, 2000, (int)absoluteScreenPos.Y + 1); ClipCursor(ref r); intPosY = Convert.ToInt32(absoluteScreenPos.Y - Mouse.GetPosition(this).Y + 30); blnIsMouseButtonPressed = true; if (ApplicationState.GetValue <int>("MouseFirstEnterPosition") == 0) { ApplicationState.SetValue("MouseFirstEnterPosition", this.Uur * 4 + quarter); } // bij eerste click, stel de selectionMode in if ((selectionMode)ApplicationState.GetValue <int>("selectionMode") == selectionMode.Unknown) { if (isSelected) { ApplicationState.SetValue("selectionMode", (int)selectionMode.Deselecting); } else { ApplicationState.SetValue("selectionMode", (int)selectionMode.Selecting); } } } // are we selecting or deselecting selectionMode smode = (selectionMode)ApplicationState.GetValue <int>("selectionMode"); MoveCursor(); if (IsAllowedToChange(quarter, true)) { switch (quarter) { case 1: if (isEnabledQ1) { if (smode == selectionMode.Selecting) { IsSelectedQ1 = true; IsDeSelectedQ1 = false; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); //ToggleOthers(vpSender, quarter, 0); } else if (smode == selectionMode.Deselecting) { IsSelectedQ1 = false; IsDeSelectedQ1 = true; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); } } break; case 2: if (isEnabledQ2) { if (smode == selectionMode.Selecting) { IsSelectedQ2 = true; IsDeSelectedQ2 = false; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); //ToggleOthers(vpSender, quarter, 0); } else if (smode == selectionMode.Deselecting) { IsSelectedQ2 = false; IsDeSelectedQ2 = true; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); } } break; case 3: if (isEnabledQ3) { if (smode == selectionMode.Selecting) { IsSelectedQ3 = true; IsDeSelectedQ3 = false; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); //ToggleOthers(vpSender, quarter, 0); } else if (smode == selectionMode.Deselecting) { IsSelectedQ3 = false; IsDeSelectedQ3 = true; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); } } break; case 4: if (isEnabledQ4) { if (smode == selectionMode.Selecting) { IsSelectedQ4 = true; IsDeSelectedQ4 = false; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); //ToggleOthers(vpSender, quarter, 0); } else if (smode == selectionMode.Deselecting) { IsSelectedQ4 = false; IsDeSelectedQ4 = true; ProjectDagViewProjectUur vpSender = (ProjectDagViewProjectUur)this; SetAllColors(vpSender); } } break; } } } else if (e.LeftButton == MouseButtonState.Released) { // test release mouse again ClipCursor(IntPtr.Zero); if (blnIsMouseButtonPressed) { ApplicationState.SetValue("selectionDirection", (int)selectionDirection.Unknown); ApplicationState.SetValue("selectionMode", (int)selectionMode.Unknown); ApplicationState.SetValue("LastMouseLeavePosition", 0); ApplicationState.SetValue("MouseFirstEnterPosition", 0); RaiseEvent(new RoutedEventArgs(VakmanDagViewEvent, this)); blnIsMouseButtonPressed = false; } } else if (e.RightButton == MouseButtonState.Released) { if (blnIsMouseButtonPressed) { ApplicationState.SetValue("selectionDirection", (int)selectionDirection.Unknown); ApplicationState.SetValue("selectionMode", (int)selectionMode.Unknown); ApplicationState.SetValue("LastMouseLeavePosition", 0); ApplicationState.SetValue("MouseFirstEnterPosition", 0); RaiseEvent(new RoutedEventArgs(VakmanDagViewEvent, this)); blnIsMouseButtonPressed = false; } } } } catch (Exception ex) { // do something here //MessageBox.Show("Er is een error opgetreden, het systeem was nog niet klaar met het verwerken van de uren van de vorige actie. U kunt nu weer verder gaan."); } }
public void SetAllColors(ProjectDagViewProjectUur vpSender) { foreach (ProjectDagViewProjectUur vp in ((WrapPanel)this.Parent).Children) { if (vp.vakman == vpSender.vakman) { if ((selectionMode)ApplicationState.GetValue <int>("selectionMode") == selectionMode.Selecting) { if (IsInRange(vp, 1)) { vp.IsSelectedQ1 = true; vp.IsDeSelectedQ1 = false; } else if (!vp.IsIngeplandQ1) { vp.IsSelectedQ1 = false; vp.IsDeSelectedQ1 = true; } if (IsInRange(vp, 2)) { vp.IsSelectedQ2 = true; vp.IsDeSelectedQ2 = false; } else if (!vp.IsIngeplandQ2) { vp.IsSelectedQ2 = false; vp.IsDeSelectedQ2 = true; } if (IsInRange(vp, 3)) { vp.IsSelectedQ3 = true; vp.IsDeSelectedQ3 = false; } else if (!vp.IsIngeplandQ3) { vp.IsSelectedQ3 = false; vp.IsDeSelectedQ3 = true; } if (IsInRange(vp, 4)) { vp.IsSelectedQ4 = true; vp.IsDeSelectedQ4 = false; } else if (!vp.IsIngeplandQ4) { vp.IsSelectedQ4 = false; vp.IsDeSelectedQ4 = true; } } else if ((selectionMode)ApplicationState.GetValue <int>("selectionMode") == selectionMode.Deselecting) { if (IsInRange(vp, 1)) { vp.IsSelectedQ1 = false; vp.IsDeSelectedQ1 = true; } else if (vp.IsIngeplandQ1) { vp.IsSelectedQ1 = true; vp.IsDeSelectedQ1 = false; } if (IsInRange(vp, 2)) { vp.IsSelectedQ2 = false; vp.IsDeSelectedQ2 = true; } else if (vp.IsIngeplandQ2) { vp.IsSelectedQ2 = true; vp.IsDeSelectedQ2 = false; } if (IsInRange(vp, 3)) { vp.IsSelectedQ3 = false; vp.IsDeSelectedQ3 = true; } else if (vp.IsIngeplandQ3) { vp.IsSelectedQ3 = true; vp.IsDeSelectedQ3 = false; } if (IsInRange(vp, 4)) { vp.IsSelectedQ4 = false; vp.IsDeSelectedQ4 = true; } else if (vp.IsIngeplandQ4) { vp.IsSelectedQ4 = true; vp.IsDeSelectedQ4 = false; } } vp.SetColors(); } } }