mirror of
https://projects.vdr-developer.org/git/vdr-plugin-tvguide.git
synced 2023-10-05 15:01:48 +02:00
Revert "Diplay the current TimeBase throughout the whole timeline"
This reverts commit b707292
because of a segfault.
This commit is contained in:
parent
fc784f34e5
commit
cdb5a46145
31
timeline.c
31
timeline.c
@ -16,7 +16,11 @@ cTimeLine::cTimeLine(cTimeManager *timeManager) {
|
||||
, cRect(0,
|
||||
0,
|
||||
geoManager.timeLineWidth,
|
||||
1440 * geoManager.minutePixel));
|
||||
1440*geoManager.minutePixel));
|
||||
timeBase = osdManager.requestPixmap(3, cRect(0,
|
||||
geoManager.statusHeaderHeight + geoManager.channelGroupsHeight + geoManager.channelHeaderHeight,
|
||||
geoManager.osdWidth,
|
||||
geoManager.timeLineGridHeight));
|
||||
} else if (config.displayMode == eHorizontal) {
|
||||
dateViewer = new cStyledPixmap(osdManager.requestPixmap(1, cRect(geoManager.clockWidth,
|
||||
geoManager.statusHeaderHeight,
|
||||
@ -28,9 +32,14 @@ cTimeLine::cTimeLine(cTimeManager *timeManager) {
|
||||
geoManager.timeLineHeight)
|
||||
, cRect(0,
|
||||
0,
|
||||
1440 * geoManager.minutePixel,
|
||||
1440*geoManager.minutePixel,
|
||||
geoManager.timeLineHeight));
|
||||
timeBase = osdManager.requestPixmap(3, cRect(geoManager.channelGroupsWidth + geoManager.channelHeaderWidth,
|
||||
geoManager.statusHeaderHeight,
|
||||
geoManager.timeLineGridWidth,
|
||||
geoManager.timeLineHeight + config.channelRows * geoManager.rowHeight));
|
||||
}
|
||||
timeBase->Fill(clrTransparent);
|
||||
int clockY;
|
||||
int clockX;
|
||||
if (config.displayMode == eVertical) {
|
||||
@ -198,29 +207,19 @@ void cTimeLine::drawRoundedCorners(int posX, int posY, int width, int height, in
|
||||
}
|
||||
|
||||
void cTimeLine::drawCurrentTimeBase(void) {
|
||||
timeBase->Fill(clrTransparent);
|
||||
bool nowVisible = timeManager->NowVisible();
|
||||
if (timeBase)
|
||||
osdManager.releasePixmap(timeBase);
|
||||
if (!nowVisible)
|
||||
return;
|
||||
int deltaTime = (timeManager->GetNow() - timeManager->GetStart()) / 60 * geoManager.minutePixel;
|
||||
int x1, x2, y1, y2;
|
||||
if (config.displayMode == eVertical) {
|
||||
x1 = 0;
|
||||
y1 = geoManager.statusHeaderHeight + geoManager.channelGroupsHeight + geoManager.channelHeaderHeight + deltaTime - 2;
|
||||
x2 = geoManager.osdWidth;
|
||||
y2 = 4;
|
||||
timeBase->DrawRectangle(cRect(0, deltaTime - 2, timeBase->ViewPort().Width(), 4), theme.Color(clrTimeBase));
|
||||
} else {
|
||||
x1 = geoManager.channelGroupsWidth + geoManager.channelHeaderWidth + deltaTime - 2;
|
||||
y1 = geoManager.statusHeaderHeight;
|
||||
x2 = 4;
|
||||
y2 = geoManager.timeLineHeight + config.channelRows * geoManager.rowHeight;
|
||||
timeBase->DrawRectangle(cRect(deltaTime-2, 0, 4, timeBase->ViewPort().Height()), theme.Color(clrTimeBase));
|
||||
}
|
||||
timeBase = osdManager.requestPixmap(3, cRect(x1, y1, x2, y2));
|
||||
timeBase->Fill(clrTransparent);
|
||||
timeBase->DrawRectangle(cRect(0, 0, timeBase->ViewPort().Width(), timeBase->ViewPort().Height()), theme.Color(clrTimeBase));
|
||||
}
|
||||
|
||||
|
||||
cImage *cTimeLine::createBackgroundImage(int width, int height, tColor clrBgr, tColor clrBlend) {
|
||||
cImage *image = NULL;
|
||||
if (config.style == eStyleBlendingDefault) {
|
||||
|
@ -9,7 +9,7 @@ cTimeManager::~cTimeManager(void) {
|
||||
cString cTimeManager::printTime(time_t displayTime) {
|
||||
struct tm *ts;
|
||||
ts = localtime(&displayTime);
|
||||
cString strTime = cString::sprintf("%d.%d-%d:%d.%d", ts->tm_mday, ts->tm_mon + 1, ts->tm_hour, ts->tm_min, ts->tm_sec);
|
||||
cString strTime = cString::sprintf("%d.%d-%d:%d.%d", ts->tm_mday, ts->tm_mon+1, ts->tm_hour, ts->tm_min, ts->tm_sec);
|
||||
return strTime;
|
||||
}
|
||||
|
||||
@ -19,43 +19,43 @@ void cTimeManager::Now() {
|
||||
tStart = t;
|
||||
tStart = GetRounded();
|
||||
if (config.displayMode == eVertical) {
|
||||
tEnd = tStart + (geoManager.osdHeight - geoManager.statusHeaderHeight - geoManager.channelHeaderHeight - geoManager.channelGroupsHeight - geoManager.footerHeight) / geoManager.minutePixel * 60;
|
||||
tEnd = tStart + (geoManager.osdHeight - geoManager.statusHeaderHeight - geoManager.channelHeaderHeight - geoManager.channelGroupsHeight - geoManager.footerHeight)/geoManager.minutePixel*60;
|
||||
} else if (config.displayMode == eHorizontal) {
|
||||
tEnd = tStart + (geoManager.osdWidth - geoManager.channelHeaderWidth - geoManager.channelGroupsWidth) / geoManager.minutePixel * 60;
|
||||
tEnd = tStart + (geoManager.osdWidth - geoManager.channelHeaderWidth - geoManager.channelGroupsWidth)/geoManager.minutePixel*60;
|
||||
}
|
||||
}
|
||||
|
||||
void cTimeManager::AddStep(int step) {
|
||||
tStart += step * 60;
|
||||
tEnd += step * 60;
|
||||
tStart += step*60;
|
||||
tEnd += step*60;
|
||||
}
|
||||
|
||||
bool cTimeManager::DelStep(int step) {
|
||||
if ((tStart - step * 60) + 30 * 60 < t) {
|
||||
if ((tStart - step*60)+30*60 < t) {
|
||||
return true;
|
||||
}
|
||||
tStart -= step * 60;
|
||||
tEnd -= step * 60;
|
||||
tStart -= step*60;
|
||||
tEnd -= step*60;
|
||||
return false;
|
||||
}
|
||||
|
||||
void cTimeManager::SetTime(time_t newTime) {
|
||||
tStart = newTime;
|
||||
if (config.displayMode == eVertical) {
|
||||
tEnd = tStart + (geoManager.osdHeight - geoManager.statusHeaderHeight - geoManager.channelHeaderHeight - geoManager.channelGroupsHeight - geoManager.footerHeight) / geoManager.minutePixel * 60;
|
||||
tEnd = tStart + (geoManager.osdHeight - geoManager.statusHeaderHeight - geoManager.channelHeaderHeight - geoManager.channelGroupsHeight - geoManager.footerHeight)/geoManager.minutePixel*60;
|
||||
} else if (config.displayMode == eHorizontal) {
|
||||
tEnd = tStart + (geoManager.osdWidth - geoManager.channelHeaderWidth - geoManager.channelGroupsWidth) / geoManager.minutePixel * 60;
|
||||
tEnd = tStart + (geoManager.osdWidth - geoManager.channelHeaderWidth - geoManager.channelGroupsWidth)/geoManager.minutePixel*60;
|
||||
}
|
||||
}
|
||||
|
||||
time_t cTimeManager::getPrevPrimetime(time_t current) {
|
||||
tm *st = localtime(¤t);
|
||||
if (st->tm_hour < 21) {
|
||||
current -= 24 * 60 * 60;
|
||||
current -= 24 * 60* 60;
|
||||
st = localtime(¤t);
|
||||
}
|
||||
st->tm_hour = 20;
|
||||
st->tm_min = 0;
|
||||
st->tm_min = 0;
|
||||
time_t primeTime = mktime(st);
|
||||
return primeTime;
|
||||
}
|
||||
@ -63,11 +63,11 @@ time_t cTimeManager::getPrevPrimetime(time_t current) {
|
||||
time_t cTimeManager::getNextPrimetime(time_t current){
|
||||
tm *st = localtime(¤t);
|
||||
if (st->tm_hour > 19) {
|
||||
current += 24 * 60 * 60;
|
||||
current += 24 * 60* 60;
|
||||
st = localtime(¤t);
|
||||
}
|
||||
st->tm_hour = 20;
|
||||
st->tm_min = 0;
|
||||
st->tm_min = 0;
|
||||
time_t primeTime = mktime(st);
|
||||
return primeTime;
|
||||
}
|
||||
@ -105,7 +105,7 @@ cString cTimeManager::GetWeekday() {
|
||||
|
||||
int cTimeManager::GetTimelineOffset() {
|
||||
tm *st = localtime(&tStart);
|
||||
int offset = st->tm_hour * 60;
|
||||
int offset = st->tm_hour*60;
|
||||
offset += st->tm_min;
|
||||
return offset;
|
||||
}
|
||||
@ -126,6 +126,7 @@ bool cTimeManager::NowVisible(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
void cTimeManager::debug() {
|
||||
esyslog("t: %s, tStart: %s, tEnd: %s", *TimeString(t), *TimeString(tStart), *TimeString(tEnd));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user