コード例 #1
0
        protected override void DoMouseUp(Point p)
        {
            if (m_dragging) {
                m_dragging = false;
                double diff = p.X - m_startPos.X;
                double x = m_startX + diff;
                x = Math.Max(StartX, Math.Min(EndX, x));
                DateTime t = new DateTime();
                m_dragLine = Bar.GetTimeAtPos(x - StartX, ref t);
                if (m_dragLine != null) {
                    Bar.FireSelectedEvent(new TimelineEventArg(m_dragLine, t));
                } else {
                    this.X = m_startX;
                }

                m_dragLine = null;
                Draw();
            }
        }
コード例 #2
0
        protected override void DoMouseMove(Point p, bool pushed)
        {
            if (m_dragging) {
                if (pushed) {
                    double diff = p.X - m_startPos.X;
                    double x = m_startX + diff;
                    x = Math.Max(StartX, Math.Min(EndX, x));
                    DateTime t = new DateTime();
                    m_dragLine = Bar.GetTimeAtPos(x - StartX, ref t);
                    m_dragTime = t;
                    this.X = x;
                    Draw();

                } else {
                    m_dragging = false;
                }
            }
        }