From 3ac949199282319d7b755bb7b7e4d792d89bde45 Mon Sep 17 00:00:00 2001 From: Fred Gleason Date: Thu, 21 Nov 2019 17:35:27 -0500 Subject: [PATCH] 2019-11-21 Fred Gleason * Implemented support for non-realtime library filtering in the 'Editing Event' dialog in rdlogmanager(1). --- ChangeLog | 3 ++ rdlogmanager/edit_event.cpp | 47 ++++++++++++++++++++++++++---- rdlogmanager/edit_event.h | 2 ++ rdlogmanager/rdlogmanager_cs.ts | 4 +++ rdlogmanager/rdlogmanager_de.ts | 4 +++ rdlogmanager/rdlogmanager_es.ts | 4 +++ rdlogmanager/rdlogmanager_fr.ts | 4 +++ rdlogmanager/rdlogmanager_nb.ts | 4 +++ rdlogmanager/rdlogmanager_nn.ts | 4 +++ rdlogmanager/rdlogmanager_pt_BR.ts | 4 +++ 10 files changed, 75 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index c27f96e9..a4eec135 100644 --- a/ChangeLog +++ b/ChangeLog @@ -19256,3 +19256,6 @@ * Restored 'End of List' markers to the 'PRE-IMPORT CARTS' and 'POST-IMPORT CARTS' lists in the 'Editing Event' dialog in rdlogmanager(1). +2019-11-21 Fred Gleason + * Implemented support for non-realtime library filtering in the + 'Editing Event' dialog in rdlogmanager(1). diff --git a/rdlogmanager/edit_event.cpp b/rdlogmanager/edit_event.cpp index 63528891..7a8480e9 100644 --- a/rdlogmanager/edit_event.cpp +++ b/rdlogmanager/edit_event.cpp @@ -68,13 +68,27 @@ EditEvent::EditEvent(QString eventname,bool new_event, // Text Filter // event_lib_filter_edit=new QLineEdit(this); - event_lib_filter_edit->setGeometry(55,2,CENTER_LINE-70,20); + if(rda->station()->filterMode()==RDStation::FilterAsynchronous) { + event_lib_filter_edit->setGeometry(55,2,CENTER_LINE-135,20); + connect(event_lib_filter_edit,SIGNAL(returnPressed()), + this,SLOT(searchData())); + } + else { + event_lib_filter_edit->setGeometry(55,2,CENTER_LINE-70,20); + } connect(event_lib_filter_edit,SIGNAL(textChanged(const QString &)), this,SLOT(filterChangedData(const QString &))); QLabel *label=new QLabel(event_lib_filter_edit,tr("Filter:"),this); label->setFont(labelFont()); label->setGeometry(5,2,45,20); label->setAlignment(Qt::AlignVCenter|Qt::AlignRight); + event_search_button=new QPushButton(tr("Search"),this); + event_search_button->setFont(subButtonFont()); + event_search_button->setGeometry(CENTER_LINE-70,2,60,20); + event_search_button->setDisabled(true); + connect(event_search_button,SIGNAL(clicked()),this,SLOT(searchData())); + event_search_button-> + setVisible(rda->station()->filterMode()==RDStation::FilterAsynchronous); // // Group Filter @@ -94,7 +108,6 @@ EditEvent::EditEvent(QString eventname,bool new_event, event_lib_type_group=new QButtonGroup(this); connect(event_lib_type_group,SIGNAL(buttonClicked(int)), this,SLOT(filterClickedData(int))); - QRadioButton *rbutton=new QRadioButton(this); rbutton->setGeometry(55,55,15,15); event_lib_type_group->addButton(rbutton,0); @@ -698,7 +711,9 @@ EditEvent::EditEvent(QString eventname,bool new_event, // button=new QPushButton(this); button->setGeometry(sizeHint().width()-180,sizeHint().height()-60,80,50); - button->setDefault(true); + if(rda->station()->filterMode()==RDStation::FilterSynchronous) { + button->setDefault(true); + } button->setFont(buttonFont()); button->setText(tr("&OK")); connect(button,SIGNAL(clicked()),this,SLOT(okData())); @@ -830,19 +845,41 @@ QSizePolicy EditEvent::sizePolicy() const void EditEvent::filterChangedData(const QString &str) { - RefreshLibrary(); + if(rda->station()->filterMode()==RDStation::FilterSynchronous) { + RefreshLibrary(); + } + else { + event_search_button->setEnabled(true); + } } void EditEvent::filterActivatedData(const QString &str) { - RefreshLibrary(); + if(rda->station()->filterMode()==RDStation::FilterSynchronous) { + RefreshLibrary(); + } + else { + event_search_button->setEnabled(true); + } } void EditEvent::filterClickedData(int id) +{ + if(rda->station()->filterMode()==RDStation::FilterSynchronous) { + RefreshLibrary(); + } + else { + event_search_button->setEnabled(true); + } +} + + +void EditEvent::searchData() { RefreshLibrary(); + event_search_button->setDisabled(true); } diff --git a/rdlogmanager/edit_event.h b/rdlogmanager/edit_event.h index c7fb1395..0553c380 100644 --- a/rdlogmanager/edit_event.h +++ b/rdlogmanager/edit_event.h @@ -59,6 +59,7 @@ class EditEvent : public RDDialog void filterChangedData(const QString &str); void filterActivatedData(const QString &str); void filterClickedData(int id); + void searchData(); void cartClickedData(Q3ListViewItem *item); void prepositionToggledData(bool state); void timeToggledData(bool); @@ -110,6 +111,7 @@ class EditEvent : public RDDialog QComboBox* event_have_code2_box; QLabel *event_have_code2_label; LibListView *event_lib_list; + QPushButton *event_search_button; QPixmap *event_playout_map; QPixmap *event_macro_map; QLabel *event_position_header; diff --git a/rdlogmanager/rdlogmanager_cs.ts b/rdlogmanager/rdlogmanager_cs.ts index 03146a59..f5305f72 100644 --- a/rdlogmanager/rdlogmanager_cs.ts +++ b/rdlogmanager/rdlogmanager_cs.ts @@ -599,6 +599,10 @@ Chcete ji přepsat? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_de.ts b/rdlogmanager/rdlogmanager_de.ts index 059c0152..ce23762d 100644 --- a/rdlogmanager/rdlogmanager_de.ts +++ b/rdlogmanager/rdlogmanager_de.ts @@ -599,6 +599,10 @@ Wollen Sie es überschreiben? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_es.ts b/rdlogmanager/rdlogmanager_es.ts index 16aae396..fd492459 100644 --- a/rdlogmanager/rdlogmanager_es.ts +++ b/rdlogmanager/rdlogmanager_es.ts @@ -601,6 +601,10 @@ Do you want to overwrite it? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_fr.ts b/rdlogmanager/rdlogmanager_fr.ts index a4d3c3de..2630b4e6 100644 --- a/rdlogmanager/rdlogmanager_fr.ts +++ b/rdlogmanager/rdlogmanager_fr.ts @@ -533,6 +533,10 @@ Do you want to overwrite it? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_nb.ts b/rdlogmanager/rdlogmanager_nb.ts index 1cd958a1..0df253ad 100644 --- a/rdlogmanager/rdlogmanager_nb.ts +++ b/rdlogmanager/rdlogmanager_nb.ts @@ -608,6 +608,10 @@ Vil du byta henne ut? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_nn.ts b/rdlogmanager/rdlogmanager_nn.ts index 1cd958a1..0df253ad 100644 --- a/rdlogmanager/rdlogmanager_nn.ts +++ b/rdlogmanager/rdlogmanager_nn.ts @@ -608,6 +608,10 @@ Vil du byta henne ut? Artist Separation + + Search + + EditEventLine diff --git a/rdlogmanager/rdlogmanager_pt_BR.ts b/rdlogmanager/rdlogmanager_pt_BR.ts index 4b6971c2..77449b6e 100644 --- a/rdlogmanager/rdlogmanager_pt_BR.ts +++ b/rdlogmanager/rdlogmanager_pt_BR.ts @@ -601,6 +601,10 @@ Você quer sobreescrêve-lo? Artist Separation + + Search + + EditEventLine