mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-10-11 17:13:47 +02:00
2016-07-20 Fred Gleason <fredg@paravelsystems.com>
* Added a 'settime' command to rdclilogedit(1) in 'utils/rdclilogedit/rdclilogedit.cpp' and 'utils/rdclilogedit/rdclilogedit.h'.
This commit is contained in:
@@ -15330,3 +15330,7 @@
|
|||||||
* Added a 'settrans' command to rdclilogedit(1) in
|
* Added a 'settrans' command to rdclilogedit(1) in
|
||||||
'utils/rdclilogedit/rdclilogedit.cpp' and
|
'utils/rdclilogedit/rdclilogedit.cpp' and
|
||||||
'utils/rdclilogedit/rdclilogedit.h'.
|
'utils/rdclilogedit/rdclilogedit.h'.
|
||||||
|
2016-07-20 Fred Gleason <fredg@paravelsystems.com>
|
||||||
|
* Added a 'settime' command to rdclilogedit(1) in
|
||||||
|
'utils/rdclilogedit/rdclilogedit.cpp' and
|
||||||
|
'utils/rdclilogedit/rdclilogedit.h'.
|
||||||
|
@@ -28,7 +28,7 @@ void MainObject::Help(const QStringList &cmds) const
|
|||||||
printf("\n");
|
printf("\n");
|
||||||
printf("The following commands are available:\n");
|
printf("The following commands are available:\n");
|
||||||
printf("?, addcart, bye, exit, help, list, listlogs, load, quit, remove,\n");
|
printf("?, addcart, bye, exit, help, list, listlogs, load, quit, remove,\n");
|
||||||
printf("save, saveas, setcart, unload\n");
|
printf("save, saveas, setcart, settime, settrans, unload\n");
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf("Enter \"? <cmd-name>\" for specific help.\n");
|
printf("Enter \"? <cmd-name>\" for specific help.\n");
|
||||||
printf("\n");
|
printf("\n");
|
||||||
@@ -108,6 +108,16 @@ void MainObject::Help(const QStringList &cmds) const
|
|||||||
printf("\n");
|
printf("\n");
|
||||||
processed=true;
|
processed=true;
|
||||||
}
|
}
|
||||||
|
if(verb=="settime") {
|
||||||
|
printf("\n");
|
||||||
|
printf(" settime <line> hard|none <time>\n");
|
||||||
|
printf("\n");
|
||||||
|
printf("Set the start time type and value of the event at line <line>.\n");
|
||||||
|
printf("The <time> parameter is in format \"HH:MM:SS\", and is optional when\n");
|
||||||
|
printf("when setting \"none\".\n");
|
||||||
|
printf("\n");
|
||||||
|
processed=true;
|
||||||
|
}
|
||||||
if(verb=="settrans") {
|
if(verb=="settrans") {
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf(" settrans <line> play|segue|stop\n");
|
printf(" settrans <line> play|segue|stop\n");
|
||||||
|
@@ -32,6 +32,7 @@
|
|||||||
#include <rdconf.h>
|
#include <rdconf.h>
|
||||||
#include <rdcreate_log.h>
|
#include <rdcreate_log.h>
|
||||||
#include <rdescape_string.h>
|
#include <rdescape_string.h>
|
||||||
|
#include <rdweb.h>
|
||||||
|
|
||||||
#include "rdclilogedit.h"
|
#include "rdclilogedit.h"
|
||||||
|
|
||||||
@@ -305,6 +306,17 @@ void MainObject::Setcart(int line,unsigned cartnum)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void MainObject::Settime(int line,RDLogLine::TimeType type,const QTime &time)
|
||||||
|
{
|
||||||
|
if(edit_log_event==NULL) {
|
||||||
|
fprintf(stderr,"settime: no log loaded\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
edit_log_event->logLine(line)->setTimeType(type);
|
||||||
|
edit_log_event->logLine(line)->setStartTime(RDLogLine::Logged,time);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void MainObject::Settrans(int line,RDLogLine::TransType type)
|
void MainObject::Settrans(int line,RDLogLine::TransType type)
|
||||||
{
|
{
|
||||||
edit_log_event->logLine(line)->setTransType(type);
|
edit_log_event->logLine(line)->setTransType(type);
|
||||||
@@ -331,6 +343,7 @@ void MainObject::DispatchCommand(const QString &cmd)
|
|||||||
QString verb=cmds[0].lower();
|
QString verb=cmds[0].lower();
|
||||||
bool processed=false;
|
bool processed=false;
|
||||||
int line;
|
int line;
|
||||||
|
QTime time;
|
||||||
bool ok=false;
|
bool ok=false;
|
||||||
|
|
||||||
if(verb=="addcart") {
|
if(verb=="addcart") {
|
||||||
@@ -440,6 +453,52 @@ void MainObject::DispatchCommand(const QString &cmd)
|
|||||||
processed=true;
|
processed=true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(verb=="settime") {
|
||||||
|
if(cmds.size()>=3) {
|
||||||
|
line=cmds[1].toInt(&ok);
|
||||||
|
if(ok&&(line>=0)&&(line<edit_log_event->size())) {
|
||||||
|
RDLogLine::TimeType ttype=RDLogLine::NoTime;
|
||||||
|
if(cmds[2].lower()=="hard") {
|
||||||
|
ttype=RDLogLine::Hard;
|
||||||
|
}
|
||||||
|
if(cmds[2].lower()=="none") {
|
||||||
|
ttype=RDLogLine::Relative;
|
||||||
|
}
|
||||||
|
switch(ttype) {
|
||||||
|
case RDLogLine::Hard:
|
||||||
|
if(cmds.size()>=4) {
|
||||||
|
time=RDGetWebTime(cmds[3],&ok);
|
||||||
|
if(ok) {
|
||||||
|
Settime(line,ttype,time);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fprintf(stderr,"settime: invalid time value\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fprintf(stderr,"settime: missing time value\n");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case RDLogLine::Relative:
|
||||||
|
Settime(line,ttype);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case RDLogLine::NoTime:
|
||||||
|
fprintf(stderr,"settime: invalid time type\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fprintf(stderr,"settime: invalid line number\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
fprintf(stderr,"settime: invalid command arguments\n");
|
||||||
|
}
|
||||||
|
processed=true;
|
||||||
|
}
|
||||||
|
|
||||||
if(verb=="settrans") {
|
if(verb=="settrans") {
|
||||||
if(cmds.size()==3) {
|
if(cmds.size()==3) {
|
||||||
line=cmds[1].toInt(&ok);
|
line=cmds[1].toInt(&ok);
|
||||||
|
@@ -55,6 +55,7 @@ class MainObject : public QObject
|
|||||||
void Save();
|
void Save();
|
||||||
void Saveas(const QString &logname);
|
void Saveas(const QString &logname);
|
||||||
void Setcart(int line,unsigned cartnum);
|
void Setcart(int line,unsigned cartnum);
|
||||||
|
void Settime(int line,RDLogLine::TimeType type,const QTime &time=QTime());
|
||||||
void Settrans(int line,RDLogLine::TransType type);
|
void Settrans(int line,RDLogLine::TransType type);
|
||||||
void Unload();
|
void Unload();
|
||||||
void DispatchCommand(const QString &cmd);
|
void DispatchCommand(const QString &cmd);
|
||||||
|
Reference in New Issue
Block a user