2020-06-19 Fred Gleason <fredg@paravelsystems.com>

* Modified the 'Edit Event' dialog in rdlogmanager(1) to show '[auto]'
	as the transition type for the leading event in Pre-/Post-Import
	lists.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2020-06-19 17:38:09 -04:00
parent dcf2076087
commit a994558a89
14 changed files with 155 additions and 194 deletions

View File

@@ -309,7 +309,9 @@ EditEvent::EditEvent(QString eventname,bool new_event,
20);
event_firsttrans_label->setAlignment(Qt::AlignVCenter|Qt::AlignLeft);
event_firsttrans_box=new QComboBox(this);
event_firsttrans_box->setGeometry(event_firsttrans_label->geometry().x()+event_firsttrans_label->geometry().width(),134,90,20);
event_firsttrans_box->setGeometry(event_firsttrans_label->geometry().x()+
event_firsttrans_label->geometry().width(),
134,90,20);
event_firsttrans_box->insertItem(tr("Play"));
event_firsttrans_box->insertItem(tr("Segue"));
event_firsttrans_box->insertItem(tr("Stop"));
@@ -436,8 +438,8 @@ EditEvent::EditEvent(QString eventname,bool new_event,
event_preimport_list->setItemMargin(5);
event_preimport_list->load(event_name,RDEventImportList::PreImport);
event_preimport_list->setSortColumn(-1);
connect(event_preimport_list,SIGNAL(sizeChanged(int)),
this,SLOT(preimportChangedData(int)));
connect(event_preimport_list,SIGNAL(validationNeeded()),
this,SLOT(validate()));
event_preimport_list->addColumn("");
event_preimport_list->addColumn(tr("Cart"));
event_preimport_list->addColumn(tr("Group"));
@@ -460,9 +462,9 @@ EditEvent::EditEvent(QString eventname,bool new_event,
connect(event_preimport_down_button,SIGNAL(clicked()),
this,SLOT(preimportDownData()));
// *************************
// Import Section
// *************************
//
// Imports
//
label=new QLabel(tr("IMPORT"),this);
label->setFont(labelFont());
label->setGeometry(CENTER_LINE+15,387,200,16);
@@ -657,7 +659,6 @@ EditEvent::EditEvent(QString eventname,bool new_event,
event_postimport_list->setAllColumnsShowFocus(true);
event_postimport_list->setItemMargin(5);
event_postimport_list->setSortColumn(-1);
event_postimport_list->setAllowStop(false);
event_postimport_list->load(event_name,RDEventImportList::PostImport);
event_postimport_list->addColumn("");
event_postimport_list->addColumn(tr("Cart"));
@@ -671,6 +672,8 @@ EditEvent::EditEvent(QString eventname,bool new_event,
this,SLOT(cartClickedData(Q3ListViewItem *)));
connect(event_postimport_list,SIGNAL(lengthChanged(int)),
this,SLOT(postimportLengthChangedData(int)));
connect(event_postimport_list,SIGNAL(validationNeeded()),
this,SLOT(validate()));
event_postimport_up_button=
new RDTransportButton(RDTransportButton::Up,this);
event_postimport_up_button->setGeometry(sizeHint().width()-50,532-3,40,40);
@@ -803,7 +806,7 @@ EditEvent::EditEvent(QString eventname,bool new_event,
event_firsttrans_box->setCurrentItem(event_event->firstTransType());
}
else {
if(event_preimport_list->eventImportList()->size()>=1) {
if(event_preimport_list->eventImportList()->size()>=2) {
event_firsttrans_box->
setCurrentItem(event_preimport_list->eventImportList()->
item(0)->transType());
@@ -855,8 +858,8 @@ EditEvent::EditEvent(QString eventname,bool new_event,
prepositionToggledData(event_position_box->isChecked());
timeToggledData(event_timetype_check->isChecked());
importClickedData(event_source_group->checkedId());
preimportChangedData(event_preimport_list->childCount());
SetPostTransition();
event_postimport_list->refreshList();
validate();
}
@@ -961,21 +964,7 @@ void EditEvent::prepositionToggledData(bool state)
//
// CART STACK Section
//
if(state) {
event_preimport_list->setForceTrans(RDLogLine::Stop);
}
else {
if(event_timetype_check->isChecked()) {
event_preimport_list->
setForceTrans((RDLogLine::TransType)event_firsttrans_box->
currentItem());
}
else {
event_preimport_list->setForceTrans(RDLogLine::NoTrans);
}
}
event_preimport_list->refreshList();
SetPostTransition();
}
@@ -986,18 +975,6 @@ void EditEvent::timeToggledData(bool state)
event_next_button->setEnabled(state);
event_wait_button->setEnabled(state);
event_grace_edit->setEnabled(state);
if(state) {
event_preimport_list->
setForceTrans((RDLogLine::TransType)event_firsttrans_box->currentItem());
}
else {
if(event_position_box->isChecked()) {
event_preimport_list->setForceTrans(RDLogLine::Stop);
}
else {
event_preimport_list->setForceTrans(RDLogLine::NoTrans);
}
}
event_preimport_list->refreshList();
if(state) {
graceClickedData(event_grace_group->checkedId());
@@ -1022,7 +999,6 @@ void EditEvent::timeToggledData(bool state)
(event_preimport_list->childCount()==0)) {
}
}
SetPostTransition();
}
@@ -1044,16 +1020,12 @@ void EditEvent::graceClickedData(int id)
event_grace_edit->setEnabled(true);
break;
}
SetPostTransition();
}
void EditEvent::timeTransitionData(int id)
{
event_preimport_list->
setForceTrans((RDLogLine::TransType)event_firsttrans_box->currentItem());
event_preimport_list->refreshList();
SetPostTransition();
}
@@ -1103,7 +1075,6 @@ void EditEvent::importClickedData(int id)
state=(id==2)&&state;
event_nestevent_label->setEnabled(state);
event_nestevent_box->setEnabled(state);
SetPostTransition();
event_sched_group_box->setEnabled(stateschedinv);
event_artist_sep_label->setEnabled(stateschedinv);
event_artist_sep_spinbox->setEnabled(stateschedinv);
@@ -1118,12 +1089,6 @@ void EditEvent::importClickedData(int id)
}
void EditEvent::preimportChangedData(int size)
{
SetPostTransition();
}
void EditEvent::preimportLengthChangedData(int msecs)
{
event_preimport_length_edit->setText(RDGetTimeLength(msecs,true,false));
@@ -1143,7 +1108,6 @@ void EditEvent::preimportUpData()
return;
}
event_preimport_list->move(line,line-1);
event_preimport_list->validateTransitions();
event_preimport_list->refreshList(line-1);
}
@@ -1161,7 +1125,6 @@ void EditEvent::preimportDownData()
return;
}
event_preimport_list->move(line,line+1);
event_preimport_list->validateTransitions();
event_preimport_list->refreshList(line+1);
event_preimport_list->ensureItemVisible(item);
}
@@ -1180,7 +1143,6 @@ void EditEvent::postimportUpData()
return;
}
event_postimport_list->move(line,line-1);
event_postimport_list->validateTransitions();
event_postimport_list->refreshList(line-1);
}
@@ -1198,7 +1160,6 @@ void EditEvent::postimportDownData()
return;
}
event_postimport_list->move(line,line+1);
event_postimport_list->validateTransitions();
event_postimport_list->refreshList(line+1);
}
@@ -1252,7 +1213,8 @@ void EditEvent::saveAsData()
if(event_new_event) {
AbandonEvent(old_name);
}
setCaption("RDLogManager - "+tr("Editing Event")+" - "+event_event->name());
setWindowTitle("RDLogManager - "+tr("Editing Event")+" - "+
event_event->name());
}
else {
if(QMessageBox::question(this,tr("RDLogManager"),
@@ -1297,6 +1259,62 @@ void EditEvent::colorData()
}
void EditEvent::validate()
{
RDEventImportList *pre_list=event_preimport_list->eventImportList();
RDEventImportList *post_list=event_postimport_list->eventImportList();
//
// Pre-Position Log
//
if(event_position_box->isChecked()) {
event_firsttrans_box->setCurrentIndex((int)RDLogLine::Stop);
}
//
// Pre-Position Log / Timed Start
//
if(event_position_box->isChecked()||event_timetype_check->isChecked()) {
if(pre_list->size()>=2) {
pre_list->item(0)->
setTransType((RDLogLine::TransType)event_firsttrans_box->
currentIndex());
event_postimport_list->setAllowFirstTrans(true);
if(post_list->size()>=2) {
if(post_list->item(0)->transType()==RDLogLine::Stop) {
post_list->item(0)->setTransType(RDLogLine::Play);
event_postimport_list->refreshList(0);
}
}
}
else {
event_postimport_list->setAllowFirstTrans(false);
}
}
else {
event_postimport_list->setAllowFirstTrans(pre_list->size()>=2);
if(pre_list->size()>=2) {
if(post_list->size()>=2) {
if(post_list->item(0)->transType()==RDLogLine::Stop) {
post_list->item(0)->setTransType(RDLogLine::Play);
event_postimport_list->refreshList(0);
}
}
}
}
//
// Fixup added list members
//
event_preimport_list->
fixupTransitions((RDLogLine::TransType)event_firsttrans_box->
currentIndex());
event_postimport_list->
fixupTransitions((RDLogLine::TransType)event_firsttrans_box->
currentIndex());
}
void EditEvent::okData()
{
Save();
@@ -1409,43 +1427,6 @@ void EditEvent::RefreshLibrary()
}
void EditEvent::SetPostTransition()
{
if((event_position_box->isChecked())||
(event_timetype_check->isChecked())||
(event_preimport_list->childCount()!=0)||
(event_source_group->checkedId()!=0)) {
event_postimport_list->setAllowStop(false);
}
else {
event_postimport_list->setAllowStop(true);
}
if(event_preimport_list->childCount()==0) {
if(event_position_box->isChecked()) {
event_postimport_list->setAllowFirstTrans(false);
event_postimport_list->setForceTrans(RDLogLine::Stop);
}
else {
if(event_timetype_check->isChecked()) {
event_postimport_list->
setForceTrans((RDLogLine::TransType)event_firsttrans_box->
currentItem());
event_postimport_list->setAllowFirstTrans(false);
}
else {
event_postimport_list->setAllowFirstTrans(true);
event_postimport_list->setForceTrans(RDLogLine::NoTrans);
}
}
}
else {
event_postimport_list->setAllowFirstTrans(true);
event_postimport_list->setForceTrans(RDLogLine::NoTrans);
}
event_postimport_list->refreshList();
}
void EditEvent::Save()
{
QString properties;
@@ -1459,7 +1440,6 @@ void EditEvent::Save()
}
if(event_timetype_check->isChecked()) {
event_event->setTimeType(RDLogLine::Hard);
// event_event->setPostPoint(event_post_box->isChecked());
event_event->setFirstTransType((RDLogLine::TransType)
event_firsttrans_box->currentItem());
switch(event_grace_group->checkedId()) {
@@ -1479,7 +1459,6 @@ void EditEvent::Save()
else {
event_event->setTimeType(RDLogLine::Relative);
event_event->setGraceTime(0);
// event_event->setPostPoint(false);
event_event->setFirstTransType(RDLogLine::Play);
}
@@ -1539,9 +1518,11 @@ void EditEvent::Save()
}
event_preimport_list->setEventName(event_name);
event_preimport_list->save();
event_preimport_list->
save((RDLogLine::TransType)event_firsttrans_box->currentIndex());
event_postimport_list->setEventName(event_name);
event_postimport_list->save();
event_postimport_list->
save((RDLogLine::TransType)event_firsttrans_box->currentIndex());
event_saved=true;
}