Example #1
0
 public void RemoveCip(Clip clip)
 {
     clips.Remove(clip);
 }
 private void clip_StateChanged(Clip clip)
 {
     Invalidate();
 }
Example #3
0
 public void AddClip(Clip clip)
 {
     clips.Add(clip);
     clip.ChannelNumber = channelNumber;
 }
Example #4
0
        private bool Resize(Clip clip, int x)
        {
            Rectangle dim = clip.Dimension;
            dim.Width += x;
            clip.Dimension = new Rectangle(dim.X, dim.Y, dim.Width, dim.Height);

            return true;
        }
Example #5
0
        public void AddClip(Clip clip, Point location, int beats)
        {
            if (location.X < 0 || beats <= 0 || location.Y < 0 || location.Y >= channels.Count)
                return;

            clip.Dimension = new Rectangle(location.X, location.Y, beats, 1);
            channels[location.Y].AddClip(clip);
            OnClipAdded(clip);
            clip.StateChanged += clipStateChangedHandler;

            UpdateCoreClips();
        }
Example #6
0
 private void clip_StateChanged(Clip clip)
 {
     OnClipStateChanged(clip);
 }
Example #7
0
        private bool Move(Clip clip, Point point)
        {
            Rectangle dim = clip.Dimension;
            dim.X += point.X;
            dim.Y += point.Y;

            channels[clip.Dimension.Y].RemoveCip(clip);
            clip.Dimension = new Rectangle(dim.X, dim.Y, dim.Width, dim.Height);
            channels[dim.Y].AddClip(clip);

            return true;
        }
Example #8
0
        private void TimelineChannelsView_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (timeline == null)
                return;

            Clip clip = timeline.GetClipAt(PixelPointToBeatPoint(new Point(e.X, e.Y)));

            if (clip == null)
                return;

            ViewedClip = clip;
        }
Example #9
0
 protected void OnClipStateChanged(Clip clip)
 {
     List<Clip> clips = new List<Clip>();
     clips.Add(clip);
     if (ClipStateChanged != null)
         ClipStateChanged(new Timeline.EventArgs(null, clips));
 }
Example #10
0
 private void PaintResizingClip(Clip clip, PaintEventArgs e)
 {
     int x = CalculateResizeX();
     Rectangle dim = clip.Dimension;
     dim.Width += x;
     dim = BeatDimensionToPixelDimension(dim);
     dim.Height = channelHeight;
     e.Graphics.DrawRectangle(Pens.White, new Rectangle(dim.X, dim.Y, dim.Width - 1, dim.Height - 1));
 }
Example #11
0
 private void PaintMovingClip(Clip clip, PaintEventArgs e)
 {
     Point p = CalculateMovePoint();
     Rectangle dim = clip.Dimension;
     dim.X += p.X;
     dim.Y += p.Y;
     dim = BeatDimensionToPixelDimension(dim);
     dim.Height = channelHeight;
     e.Graphics.DrawRectangle(Pens.White, new Rectangle(dim.X, dim.Y, dim.Width - 1, dim.Height - 1));
 }
Example #12
0
        private void PaintClip(PaintEventArgs e, Clip clip)
        {
            Rectangle dimension = ClipDimensionToPixelDimension(clip);
            Region graphicsClip = e.Graphics.Clip;
            e.Graphics.Clip = new Region(dimension);

            double brightness = 1.0;
            if (clip.IsSelected)
                brightness = 1.3;

            Color color = RGBHSL.ModifyBrightness(Color.FromArgb(70, 90, 150), brightness);
            Color lightColor = RGBHSL.ModifyBrightness(color, 1.3);
            Color notSoDarkColor = RGBHSL.ModifyBrightness(color, 0.9);
            Color darkColor = RGBHSL.ModifyBrightness(color, 0.7);
            Color previewColor = RGBHSL.ModifyBrightness(Color.FromArgb(70, 90, 150), 0.75);

            Brush b = new SolidBrush(color);
            Pen p1 = new Pen(notSoDarkColor);
            Pen p2 = new Pen(lightColor);
            Pen p3 = new Pen(darkColor);

            e.Graphics.FillRectangle(b, dimension);
            e.Graphics.DrawLine(p1, dimension.Left, dimension.Top + dimension.Height / 2, dimension.Left + dimension.Width - 1, dimension.Top + dimension.Height / 2);
            Bitmap preview = clip.GetPreview(dimension.Width, dimension.Height - 2, previewColor);
            e.Graphics.DrawImage(preview, dimension.Left, dimension.Top + 2);
            e.Graphics.DrawLine(p2, dimension.Left, dimension.Top, dimension.Left + dimension.Width - 1, dimension.Top);
            e.Graphics.DrawLine(p2, dimension.Left, dimension.Top, dimension.Left, dimension.Top + dimension.Height - 1);
            e.Graphics.DrawLine(p2, dimension.Left + dimension.Width - 1, dimension.Top, dimension.Left + dimension.Width - 1, dimension.Top + dimension.Height - 1);
            e.Graphics.DrawLine(p3, dimension.Left + 1, dimension.Top + dimension.Height - 2, dimension.Left + dimension.Width - 2, dimension.Top + dimension.Height - 2);
            e.Graphics.DrawLine(p3, dimension.Left + 1, dimension.Top + dimension.Height - 1, dimension.Left + dimension.Width - 2, dimension.Top + dimension.Height - 1);
            p1.Dispose();
            p2.Dispose();
            p3.Dispose();
            b.Dispose();

            e.Graphics.Clip = graphicsClip;
        }
Example #13
0
 private Rectangle ClipDimensionToPixelDimension(Clip clip)
 {
     Rectangle result = BeatDimensionToPixelDimension(clip.Dimension);
     result.Height = channelHeight;
     return result;
 }
Example #14
0
 private Rectangle CalculateResizeAreaForClip(Clip clip)
 {
     Rectangle dimension = ClipDimensionToPixelDimension(clip);
     Rectangle result = new Rectangle();
     result.X = dimension.X + dimension.Width - (beatWidth - 5);
     result.Y = dimension.Y;
     result.Width = beatWidth - 5;
     result.Height = dimension.Height;
     return result;
 }