summaryrefslogtreecommitdiff
path: root/recmenus.c
diff options
context:
space:
mode:
authorkamel5 <vdr.kamel5 (at) gmx (dot) net>2019-11-09 14:48:47 +0100
committerkamel5 <vdr.kamel5 (at) gmx (dot) net>2022-06-18 17:03:15 +0200
commit5cc50e465d88f540fc4418f22918591476083c08 (patch)
tree454db8e2b2b2af44938f5716a1da47cfea53662a /recmenus.c
parenta3dc78f70a69d7927ea743b0690e2559a9ebe265 (diff)
downloadvdr-plugin-tvguide-5cc50e465d88f540fc4418f22918591476083c08.tar.gz
vdr-plugin-tvguide-5cc50e465d88f540fc4418f22918591476083c08.tar.bz2
Refactor cRecMenuSearch
Diffstat (limited to 'recmenus.c')
-rw-r--r--recmenus.c31
1 files changed, 17 insertions, 14 deletions
diff --git a/recmenus.c b/recmenus.c
index 93c9496..e09b325 100644
--- a/recmenus.c
+++ b/recmenus.c
@@ -1152,33 +1152,36 @@ cRecMenuSwitchTimerDelete::cRecMenuSwitchTimerDelete(void) { // OK
// --- cRecMenuSearch ---------------------------------------------------------
-cRecMenuSearch::cRecMenuSearch(std::string searchString, bool withOptions) {
+cRecMenuSearch::cRecMenuSearch(std::string searchString, bool withOptions) { // OK
+ SetWidthPercent(60);
+
strncpy(this->searchString, searchString.c_str(), TEXTINPUTLENGTH);
mode = 0;
channelNr = 0;
useTitle = true;
useSubTitle = true;
useDescription = false;
- SetWidthPercent(60);
- cString infoText = tr("Search");
- cRecMenuItemInfo *infoItem = new cRecMenuItemInfo(*infoText, true);
- infoItem->CalculateHeight(width - 2 * border);
- SetHeader(infoItem);
+
+ const cString line1 = tr("Search");
+
+ AddHeader(new cRecMenuItemInfo(*line1, 1, "", "", "", width - 2 * border, true));
+ AddFooter(new cRecMenuItemButtonYesNo(tr("Perform Search"), tr("Cancel"), rmsSearchPerform, rmsClose, true));
+
AddMenuItem(new cRecMenuItemText(tr("Search Expression:"), TEXTINPUTLENGTH, false, this->searchString));
+
if (withOptions) {
std::vector<std::string> searchModes;
cTVGuideSearchTimer searchTimer;
searchTimer.GetSearchModes(&searchModes);
- AddMenuItemInitial(new cRecMenuItemSelect(tr("Search Mode"), searchModes, false, &mode));
- AddMenuItemInitial(new cRecMenuItemChannelChooser(tr("Channel to Search"), false, &channelNr));
- AddMenuItemInitial(new cRecMenuItemBool(tr("Search in title"), false, &useTitle));
- AddMenuItemInitial(new cRecMenuItemBool(tr("Search in Subtitle"), false, &useSubTitle));
- AddMenuItemInitial(new cRecMenuItemBool(tr("Search in Description"), false, &useDescription));
+ AddMenuItem(new cRecMenuItemSelect(tr("Search Mode"), searchModes, false, &mode));
+ AddMenuItem(new cRecMenuItemChannelChooser(tr("Channel to Search"), false, &channelNr));
+ AddMenuItem(new cRecMenuItemBool(tr("Search in title"), false, &useTitle));
+ AddMenuItem(new cRecMenuItemBool(tr("Search in Subtitle"), false, &useSubTitle));
+ AddMenuItem(new cRecMenuItemBool(tr("Search in Description"), false, &useDescription));
} else {
- AddMenuItemInitial(new cRecMenuItemButton(tr("Show Search Options"), rmsSearchWithOptions, false));
+ AddMenuItem(new cRecMenuItemButton(tr("Show Search Options"), rmsSearchWithOptions, false));
}
- cRecMenuItemButtonYesNo *button = new cRecMenuItemButtonYesNo(tr("Perform Search"), tr("Cancel"), rmsSearchPerform, rmsClose, true);
- SetFooter(button);
+
CalculateHeight();
CreatePixmap();
Arrange();