protected override void OnMouseMove(MouseEventArgs e)
        {
            base.OnMouseMove(e);

            var hit = HitTest(e.Location);

            if (hit.Item != null)
            {
                var item = (hit.Item.Tag as CloudTaskItem);

                if (item != null)
                {
                    Cursor cursor = null;

                    if (item.IsLocked)
                    {
                        cursor = UIExtension.AppCursor(UIExtension.AppCursorType.LockedTask);
                    }
                    else if (CalcIconRect(hit.Item.Bounds).Contains(e.Location))
                    {
                        cursor = UIExtension.HandCursor();
                    }

                    if (cursor != null)
                    {
                        Cursor = cursor;
                        return;
                    }
                }
            }

            // all else
            Cursor = Cursors.Arrow;
        }
Ejemplo n.º 2
0
        protected override void OnMouseMove(MouseEventArgs e)
        {
            base.OnMouseMove(e);

            var node = HitTestPositions(e.Location);

            if (!ReadOnly && (node != null) && !HitTestExpansionButton(node, e.Location))
            {
                var taskItem = RealTaskItem(node);

                if (taskItem != null)
                {
                    Cursor cursor = null;

                    if (taskItem.IsLocked)
                    {
                        cursor = UIExtension.AppCursor(UIExtension.AppCursorType.LockedTask);
                    }
                    else if (TaskHasIcon(taskItem) && HitTestIcon(node, e.Location))
                    {
                        cursor = UIExtension.HandCursor();
                    }

                    if (cursor != null)
                    {
                        Cursor = cursor;
                        return;
                    }
                }
            }

            // all else
            Cursor = Cursors.Arrow;
        }
Ejemplo n.º 3
0
        protected override void OnMouseMove(MouseEventArgs e)
        {
            var selTool = ActiveTool as Calendar.SelectionTool;

            if (selTool == null)
            {
                selTool = new Calendar.SelectionTool();
            }

            if (selTool.IsResizing())
            {
                if (ReadOnly)
                {
                    return;
                }
            }
            else // Extra-over cursor handling
            {
                Calendar.Appointment appointment = GetAppointmentAt(e.Location.X, e.Location.Y);
                Cursor = Cursors.Default;

                if (!ReadOnly && (appointment != null))
                {
                    selTool.DayView = this;
                    selTool.UpdateCursor(e, appointment);

                    var taskItem = (appointment as CalendarItem);

                    if (taskItem != null)
                    {
                        Cursor temp = null;

                        if (taskItem.IsLocked)
                        {
                            temp = UIExtension.AppCursor(UIExtension.AppCursorType.LockedTask);
                        }
                        else if (taskItem.IconRect.Contains(e.Location))
                        {
                            temp = UIExtension.HandCursor();
                        }

                        if (temp != null)
                        {
                            Cursor = temp;
                        }
                    }
                }
            }

            base.OnMouseMove(e);
        }
Ejemplo n.º 4
0
        private Cursor GetCursor(MouseEventArgs e)
        {
            if (IsResizingAppointment())
            {
                return(Cursor);
            }

            // Note: base class only shows 'resize' cursors for the currently
            // selected item but we want them for all tasks
            var taskItem = (GetAppointmentAt(e.Location.X, e.Location.Y) as CalendarItem);

            if ((taskItem != null) && !ReadOnly)
            {
                if (taskItem.Locked)
                {
                    return(UIExtension.AppCursor(UIExtension.AppCursorType.LockedTask));
                }

                if (taskItem.IconRect.Contains(e.Location))
                {
                    return(UIExtension.HandCursor());
                }

                var mode = GetMode(taskItem, e.Location);

                if (!CanResizeTask(taskItem, mode))
                {
                    return(UIExtension.AppCursor(UIExtension.AppCursorType.NoDrag));
                }

                // Same as Calendar.SelectionTool
                switch (mode)
                {
                case Calendar.SelectionTool.Mode.ResizeBottom:
                case Calendar.SelectionTool.Mode.ResizeTop:
                    return(Cursors.SizeNS);

                case Calendar.SelectionTool.Mode.ResizeLeft:
                case Calendar.SelectionTool.Mode.ResizeRight:
                    return(Cursors.SizeWE);

                case Calendar.SelectionTool.Mode.Move:
                    // default cursor below
                    break;
                }
            }

            // All else
            return(Cursors.Default);
        }