Files
Upsilon/apps/graph/even_odd_cell.cpp
Émilie Feral 96a9ac3a9c [apps/graph] Wrap in namespace Graph
Change-Id: I08b37438f42749ff86e105770cd5aa566f84a237
2016-10-14 11:47:19 +02:00

44 lines
1.1 KiB
C++

#include "even_odd_cell.h"
namespace Graph {
constexpr KDColor EvenOddCell::k_evenLineBackgroundColor;
constexpr KDColor EvenOddCell::k_oddLineBackgroundColor;
constexpr KDColor EvenOddCell::k_selectedLineBackgroundColor;
EvenOddCell::EvenOddCell() :
ChildlessView(),
m_highlighted(false),
m_even(false)
{
}
void EvenOddCell::setEven(bool even) {
m_even = even;
markRectAsDirty(bounds());
}
void EvenOddCell::setHighlighted(bool highlight) {
m_highlighted = highlight;
markRectAsDirty(bounds());
}
void EvenOddCell::reloadCell() {
markRectAsDirty(bounds());
}
KDColor EvenOddCell::backgroundColor() const {
// Select the background color according to the even line and the cursor selection
KDColor background = m_even ? EvenOddCell::k_evenLineBackgroundColor : EvenOddCell::k_oddLineBackgroundColor;
background = m_highlighted ? EvenOddCell::k_selectedLineBackgroundColor : background;
return background;
}
void EvenOddCell::drawRect(KDContext * ctx, KDRect rect) const {
KDColor background = backgroundColor();
ctx->fillRect(rect, background);
}
}