MCPcopy Create free account
hub / github.com/BespokeSynth/BespokeSynth / Render

Method Render

Source/CanvasTimeline.cpp:39–107  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37}
38
39void CanvasTimeline::Render()
40{
41 ofRectangle canvasRect = mCanvas->GetRect(true);
42 SetPosition(canvasRect.x, canvasRect.y - 10);
43 SetDimensions(canvasRect.width, 10);
44
45 ofPushMatrix();
46 ofTranslate(mX, mY);
47
48 float startX = ofMap(mCanvas->mLoopStart, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
49 float endX = ofMap(mCanvas->mLoopEnd, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
50
51 if (mClick && (mHoverMode == HoverMode::kStart || mHoverMode == HoverMode::kMiddle))
52 startX += mDragOffset.x;
53 if (mClick && (mHoverMode == HoverMode::kEnd || mHoverMode == HoverMode::kMiddle))
54 endX += mDragOffset.x;
55
56 ofPushStyle();
57 if (mClick && mHoverMode == HoverMode::kMiddle)
58 {
59 ofSetColor(150, 150, 150);
60 ofNoFill();
61 float quantizedStart = GetQuantizedForX(startX, HoverMode::kMiddle);
62 float quantizedStartX = ofMap(quantizedStart, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
63 float quantizedEnd = GetQuantizedForX(endX, HoverMode::kMiddle);
64 float quantizedEndX = ofMap(quantizedEnd, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
65 ofRect(quantizedStartX, 0, quantizedEndX - quantizedStartX, mHeight / 2, 0);
66 }
67 if (mHoverMode == HoverMode::kMiddle)
68 ofSetColor(255, 200, 0);
69 else
70 ofSetColor(100, 100, 100);
71 ofFill();
72 ofRect(startX, 0, endX - startX, mHeight / 2, 0);
73
74 if (mClick && mHoverMode == HoverMode::kStart)
75 {
76 ofSetColor(150, 150, 150);
77 ofNoFill();
78 float quantized = GetQuantizedForX(startX, HoverMode::kStart);
79 float quantizedX = ofMap(quantized, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
80 DrawTriangle(quantizedX, 1);
81 }
82 if (mHoverMode == HoverMode::kStart)
83 ofSetColor(255, 200, 0);
84 else
85 ofSetColor(150, 150, 150);
86 ofFill();
87 DrawTriangle(startX, 1);
88
89
90 if (mClick && mHoverMode == HoverMode::kEnd)
91 {
92 ofSetColor(150, 150, 150);
93 ofNoFill();
94 float quantized = GetQuantizedForX(endX, HoverMode::kEnd);
95 float quantizedX = ofMap(quantized, mCanvas->mViewStart, mCanvas->mViewEnd, 0, mWidth);
96 DrawTriangle(quantizedX, -1);

Callers

nothing calls this directly

Calls 11

ofPushMatrixFunction · 0.85
ofTranslateFunction · 0.85
ofMapFunction · 0.85
ofPushStyleFunction · 0.85
ofSetColorFunction · 0.85
ofNoFillFunction · 0.85
ofRectFunction · 0.85
ofFillFunction · 0.85
ofPopStyleFunction · 0.85
ofPopMatrixFunction · 0.85
GetRectMethod · 0.45

Tested by

no test coverage detected