mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-05-29 23:22:35 +02:00
Add RDEvent HaveCode2 to select Cart with a second scheduler code when defined
This commit is contained in:
parent
d244ef75af
commit
44cff9e37a
@ -408,6 +408,17 @@ void RDEvent::setHaveCode(QString str)
|
||||
SetRow("HAVE_CODE",str,true);
|
||||
}
|
||||
|
||||
QString RDEvent::HaveCode2()
|
||||
{
|
||||
bool ok;
|
||||
return GetStringValue("HAVE_CODE2",&ok);
|
||||
}
|
||||
|
||||
|
||||
void RDEvent::setHaveCode2(QString str)
|
||||
{
|
||||
SetRow("HAVE_CODE2",str,true);
|
||||
}
|
||||
|
||||
unsigned RDEvent::titleSep()
|
||||
{
|
||||
|
@ -73,6 +73,8 @@ class RDEvent
|
||||
void setSchedGroup(QString str);
|
||||
QString HaveCode();
|
||||
void setHaveCode(QString str);
|
||||
QString HaveCode2();
|
||||
void setHaveCode2(QString str);
|
||||
unsigned titleSep();
|
||||
void setTitleSep(unsigned titlesep);
|
||||
static QString preimportTableName(const QString event_name);
|
||||
|
@ -244,6 +244,16 @@ void RDEventLine::setHaveCode(QString str)
|
||||
event_have_code=str;
|
||||
}
|
||||
|
||||
QString RDEventLine::HaveCode2() const
|
||||
{
|
||||
return event_have_code2;
|
||||
}
|
||||
|
||||
|
||||
void RDEventLine::setHaveCode2(QString str)
|
||||
{
|
||||
event_have_code2=str;
|
||||
}
|
||||
|
||||
unsigned RDEventLine::titleSep() const
|
||||
{
|
||||
@ -317,6 +327,7 @@ void RDEventLine::clear()
|
||||
event_autofill_slop=-1;
|
||||
event_sched_group="";
|
||||
event_have_code="";
|
||||
event_have_code2="";
|
||||
event_title_sep=100;
|
||||
event_nested_event="";
|
||||
}
|
||||
@ -328,7 +339,7 @@ bool RDEventLine::load()
|
||||
GRACE_TIME,POST_POINT,USE_AUTOFILL,\
|
||||
USE_TIMESCALE,IMPORT_SOURCE,START_SLOP,\
|
||||
END_SLOP,FIRST_TRANS_TYPE,DEFAULT_TRANS_TYPE,\
|
||||
COLOR,AUTOFILL_SLOP,NESTED_EVENT,SCHED_GROUP,TITLE_SEP,HAVE_CODE \
|
||||
COLOR,AUTOFILL_SLOP,NESTED_EVENT,SCHED_GROUP,TITLE_SEP,HAVE_CODE,HAVE_CODE2 \
|
||||
from EVENTS where NAME=\"%s\"",
|
||||
(const char *)event_name);
|
||||
RDSqlQuery *q=new RDSqlQuery(sql);
|
||||
@ -361,7 +372,8 @@ bool RDEventLine::load()
|
||||
event_sched_group=q->value(15).toString();
|
||||
event_title_sep=q->value(16).toUInt();
|
||||
event_have_code=q->value(17).toString();
|
||||
|
||||
event_have_code2=q->value(18).toString();
|
||||
|
||||
delete q;
|
||||
event_preimport_log->load();
|
||||
event_postimport_log->load();
|
||||
@ -383,7 +395,7 @@ bool RDEventLine::save()
|
||||
END_SLOP=%d,FIRST_TRANS_TYPE=%d,\
|
||||
DEFAULT_TRANS_TYPE=%d,COLOR=\"%s\"\
|
||||
AUTOFILL_SLOP=%d,NESTED_EVENT=\"%s\",\
|
||||
SCHED_GROUP=\"%s\",TITLE_SEP=%d,HAVE_CODE=\"%s\" \
|
||||
SCHED_GROUP=\"%s\",TITLE_SEP=%d,HAVE_CODE=\"%s\",HAVE_CODE2=\"%s\" \
|
||||
where NAME=\"%s\"",
|
||||
(const char *)RDEscapeString(event_properties),
|
||||
event_preposition,event_time_type,
|
||||
@ -400,6 +412,7 @@ bool RDEventLine::save()
|
||||
(const char *)RDEscapeString(event_sched_group),
|
||||
event_title_sep,
|
||||
(const char*)event_have_code,
|
||||
(const char*)event_have_code2,
|
||||
(const char *)RDEscapeString(event_name));
|
||||
}
|
||||
else {
|
||||
@ -696,8 +709,25 @@ bool RDEventLine::generateLog(QString logname,const QString &svcname,
|
||||
*errors+=QString().sprintf("%s Rule broken: Must have code %s\n",(const char *)time.toString("hh:mm:ss"),(const char*)event_have_code);
|
||||
schedCL->restore();
|
||||
}
|
||||
|
||||
// Scheduler Codes
|
||||
|
||||
// Must have second scheduler code
|
||||
if(event_have_code2!="")
|
||||
{
|
||||
schedCL->save();
|
||||
for(counter=0;counter<schedCL->getNumberOfItems();counter++)
|
||||
{
|
||||
if(!schedCL->itemHasCode(counter,event_have_code2))
|
||||
{
|
||||
schedCL->removeItem(counter);
|
||||
counter--;
|
||||
}
|
||||
}
|
||||
if(schedCL->getNumberOfItems()==0)
|
||||
*errors+=QString().sprintf("%s Rule broken: Must have second code %s\n",(const char *)time.toString("hh:mm:ss"),(const char*)event_have_code2);
|
||||
schedCL->restore();
|
||||
}
|
||||
|
||||
// Scheduler Codes
|
||||
sql=QString().sprintf("select CODE,MAX_ROW,MIN_WAIT,NOT_AFTER, OR_AFTER,OR_AFTER_II from %s_RULES",(const char *)clockname);
|
||||
q=new RDSqlQuery(sql);
|
||||
while (q->next())
|
||||
|
@ -70,6 +70,8 @@ class RDEventLine
|
||||
void setSchedGroup(QString str);
|
||||
QString HaveCode() const;
|
||||
void setHaveCode(QString str);
|
||||
QString HaveCode2() const;
|
||||
void setHaveCode2(QString str);
|
||||
unsigned titleSep() const;
|
||||
void setTitleSep(unsigned titlesep);
|
||||
RDLogEvent *preimportCarts();
|
||||
@ -112,6 +114,7 @@ class RDEventLine
|
||||
QString event_nested_event;
|
||||
QString event_sched_group;
|
||||
QString event_have_code;
|
||||
QString event_have_code2;
|
||||
unsigned event_title_sep;
|
||||
};
|
||||
|
||||
|
@ -8034,8 +8034,12 @@ int UpdateDb(int ver)
|
||||
delete q;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(ver<240) {
|
||||
sql=QString("alter table EVENTS add column ")+
|
||||
"HAVE_CODE2 VARCHAR(10) after HAVE_CODE";
|
||||
q=new QSqlQuery(sql);
|
||||
delete q;
|
||||
}
|
||||
// **** End of version updates ****
|
||||
|
||||
//
|
||||
|
@ -529,6 +529,23 @@ EditEvent::EditEvent(QString eventname,bool new_event,
|
||||
}
|
||||
delete q2;
|
||||
|
||||
// And code
|
||||
|
||||
event_have_code2_label=
|
||||
new QLabel(tr("and code"),this,"event_have_code2_label");
|
||||
event_have_code2_label->setFont(bold_font);
|
||||
event_have_code2_label->setGeometry(CENTER_LINE+420,425,100,20);
|
||||
|
||||
event_have_code2_box=new QComboBox(this,"event_have_code2_box");
|
||||
event_have_code2_box->setGeometry(CENTER_LINE+510,425,100,20);
|
||||
event_have_code2_box->insertItem("");
|
||||
sql2="select CODE from SCHED_CODES order by CODE";
|
||||
q2=new RDSqlQuery(sql2);
|
||||
while(q2->next()) {
|
||||
event_have_code2_box->insertItem(q2->value(0).toString());
|
||||
}
|
||||
delete q2;
|
||||
|
||||
|
||||
//
|
||||
// Start Slop Time
|
||||
@ -798,6 +815,7 @@ EditEvent::EditEvent(QString eventname,bool new_event,
|
||||
}
|
||||
event_title_sep_spinbox->setValue(event_event->titleSep());
|
||||
event_have_code_box->setCurrentText(event_event->HaveCode());
|
||||
event_have_code2_box->setCurrentText(event_event->HaveCode2());
|
||||
QColor color=event_event->color();
|
||||
if(color.isValid()) {
|
||||
event_color_button->setPalette(QPalette(color,backgroundColor()));
|
||||
@ -1070,6 +1088,8 @@ void EditEvent::importClickedData(int id)
|
||||
event_title_sep_spinbox->setEnabled(stateschedinv);
|
||||
event_have_code_box->setEnabled(stateschedinv);
|
||||
event_have_code_label->setEnabled(stateschedinv);
|
||||
event_have_code2_box->setEnabled(stateschedinv);
|
||||
event_have_code2_label->setEnabled(stateschedinv);
|
||||
}
|
||||
|
||||
|
||||
@ -1511,7 +1531,14 @@ void EditEvent::Save()
|
||||
event_event->setProperties(GetProperties());
|
||||
event_event->setSchedGroup(event_sched_group_box->currentText());
|
||||
event_event->setTitleSep(event_title_sep_spinbox->value());
|
||||
event_event->setHaveCode(event_have_code_box->currentText());
|
||||
event_event->setHaveCode(event_have_code_box->currentText());
|
||||
if (event_have_code_box->currentText() != QString("")) {
|
||||
event_event->setHaveCode2(event_have_code2_box->currentText());
|
||||
} else {
|
||||
// save second code as first code when first code isn't defined
|
||||
event_event->setHaveCode(event_have_code2_box->currentText());
|
||||
event_event->setHaveCode2(QString(""));
|
||||
}
|
||||
listname=event_name;
|
||||
listname.replace(" ","_");
|
||||
event_preimport_list->logEvent()->
|
||||
|
@ -110,6 +110,8 @@ class EditEvent : public QDialog
|
||||
QLabel *event_title_sep_label;
|
||||
QComboBox* event_have_code_box;
|
||||
QLabel *event_have_code_label;
|
||||
QComboBox* event_have_code2_box;
|
||||
QLabel *event_have_code2_label;
|
||||
LibListView *event_lib_list;
|
||||
QPixmap *event_playout_map;
|
||||
QPixmap *event_macro_map;
|
||||
|
Loading…
x
Reference in New Issue
Block a user