void printTableGroup(sqlite3 * db, char * sql, int id){ int i, j, k, timeId; double seconds = .0, secondsNow = .0; values * val, * ids; if(id > 0) { val = selectFromTable(db, sql, id); } else val = selectFromTable(db, sql); int count = val->columns * val->rows + val->columns; for (i = val->columns, j = 1; i < count; i++) { switch(j) { case 1: timeId = atoi(val->result[i]); printf("[%d]\t", timeId); ids = selectFromTable(db, "SELECT id FROM time WHERE groupid = %d", timeId); int tcount = ids->columns * ids->rows + ids->columns; for (k = ids->columns; k < tcount; k++) { seconds += getTaskTime(db, "select START, STOP from TASK where TIMEID = %d;", atoi(ids->result[k])); secondsNow += getTaskTime(db, "select START, STOP from TASK where TIMEID = %d AND strftime('%%Y-%%m-%%d', STOP) = date('now');", atoi(ids->result[k])); } freeStructValues(ids); j++; break; case 3: printf("%s\n", val->result[i]); j = 1; break; } if(j == 2){ cl hms = secToTime(seconds); cl hmsNow = secToTime(secondsNow); printf("%.2d:%.2d:%.2d\t", hms.hours, hms.min, hms.sec); printf("%.2d:%.2d:%.2d\t", hmsNow.hours, hmsNow.min, hmsNow.sec); seconds = 0.0; secondsNow = 0.0; j++; } } freeStructValues(val); }
void printTableTask(sqlite3 * db, char * sql, int id){ int i, j, timeId; double seconds = 0.0; values * val; if(id > 0) { val = selectFromTable(db, sql, id); } else val = selectFromTable(db, sql); int count = val->columns * val->rows + val->columns; for (i = val->columns, j = 1; i < count; i++) { if(j == 1) { timeId = atoi(val->result[i]); printf("[%d]\t", timeId); j++; continue; } if(j == val->columns) { printf("%s\n", val->result[i]); j = 1; } else { seconds = getTaskTime(db, "select START, STOP from TASK where TIMEID = %d;", timeId); cl hms = secToTime(seconds); printf("%.2d:%.2d:%.2d\t", hms.hours, hms.min, hms.sec); printf("%s\t", atoi(val->result[i]) ? "Start" : "Pause"); j++; } } freeStructValues(val); }
void Player::onPBarChanged(int pos) { if (mplayer->state == MPlayer::STOPPING) return; if (timeShow->isVisible()) // slider pressed timeShow->setText(secToTime(pos * MPlayer::UPDATE_FREQUENCY, true)); else // move by keyboard mplayer->setProgress(pos * MPlayer::UPDATE_FREQUENCY); }
void Player::onPBarPressed() { if (mplayer->state == MPlayer::STOPPING) return; QString time = secToTime(ui->progressBar->value() * MPlayer::UPDATE_FREQUENCY, true); timeShow->setText(time); timeShow->show(); timeShow->move(mplayer->pos()); }
static inline QString secToString(int s, const QString &fmt = _LS("hh:mm:ss")) {return secToTime(s).toString(fmt);}