summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoranbr <vdr07@deltab.de>2011-01-19 19:15:40 +0100
committeranbr <vdr07@deltab.de>2011-01-19 19:15:40 +0100
commit8b4918746de7be7046365af23444c4de85fe1802 (patch)
treede4026a88324646eb23712de3f81694fbede6c5e
parent8c18a827947737ed95448f408ce34a98725bd776 (diff)
downloadvdr-plugin-dvdswitch-8b4918746de7be7046365af23444c4de85fe1802.tar.gz
vdr-plugin-dvdswitch-8b4918746de7be7046365af23444c4de85fe1802.tar.bz2
Improve menu to read images
-rw-r--r--commands.c46
-rw-r--r--commands.h1
-rw-r--r--helpers.c6
-rw-r--r--helpers.h1
-rw-r--r--po/de_DE.po13
-rw-r--r--po/fr_FR.po12
-rwxr-xr-xpo/it_IT.po13
-rw-r--r--setup.c6
8 files changed, 40 insertions, 58 deletions
diff --git a/commands.c b/commands.c
index 0edcfc3..5b47064 100644
--- a/commands.c
+++ b/commands.c
@@ -376,7 +376,7 @@ eOSState cCMDDir::New(void)
SetDir();
cMainMenuItem *mItem = (cMainMenuItem*)First();
- Ins(new cMenuEditStrItem(tr("New"), Dir, MaxFileName, tr(" abcdefghijklmnopqrstuvwxyz0123456789-.#~")),
+ Ins(new cMenuEditStrItem(tr("New"), Dir, memberof(Dir)),
true,
mItem);
while(mItem)
@@ -463,7 +463,7 @@ eOSState cCMDDir::Edit(cMainMenuItem *mItem)
if(!strcasecmp(mItem->FileName(), LastSelDir()))
{
dsyslog("dvdswitch: Directory: Edit: Item found: %s", mItem->FileName());
- Ins(new cMenuEditStrItem(tr("Rename"), Dir, MaxFileName, tr(" abcdefghijklmnopqrstuvwxyz0123456789-_.#~")),
+ Ins(new cMenuEditStrItem(tr("Rename"), Dir, memberof(Dir)),
true,
mItem);
dmItem = mItem;
@@ -710,6 +710,7 @@ eOSState cCMDImage::Burn(const char *file)
cCMDImageRead::cCMDImageRead(cImageList &imagelist)
: cOsdMenu(tr("Read DVD"), 14)
, ImageList(imagelist)
+ , m_szItemTypes(NULL)
{
dsyslog("dvdswitch: Read DVD Image");
@@ -750,12 +751,20 @@ cCMDImageRead::cCMDImageRead(cImageList &imagelist)
}
strcpy(Dir, "\0");
strcpy(ImgTypeTxt, "\0");
- ImgType = -1;
+ ImgType = 0;
- const char* szAllowed = tr(" abcdefghijklmnopqrstuvwxyz0123456789-_.#~");
- Add(new cMenuEditStrItem(tr("Name"), File, MaxFileName, szAllowed));
- Add(new cMenuEditStrItem(tr("Directory"), Dir, MaxFileName, szAllowed));
- Add(new cMenuEditStrItem(tr("Type of image"), ImgTypeTxt, MaxFileName, szAllowed));
+ const char ** m_szItemTypes = new const char *[ImageList.Count()];
+ cImageListItem *item = ImageList.First();
+ unsigned int n = 0;
+ while(item)
+ {
+ m_szItemTypes[n++] = item->GetLName();
+ item = ImageList.Next(item);
+ }
+
+ Add(new cMenuEditStrItem(tr("Name"), File, memberof(File)));
+ Add(new cMenuEditStrItem(tr("Directory"), Dir, memberof(Dir)));
+ Add(new cMenuEditStraItem(tr("Type of image"), &ImgType, n, m_szItemTypes));
SetHelp();
Display();
@@ -765,6 +774,8 @@ cCMDImageRead::cCMDImageRead(cImageList &imagelist)
cCMDImageRead::~cCMDImageRead(void)
{
dsyslog("dvdswitch: Read DVD Image stopped");
+ if(m_szItemTypes)
+ delete m_szItemTypes;
}
void cCMDImageRead::SetHelp(void)
@@ -772,7 +783,6 @@ void cCMDImageRead::SetHelp(void)
switch(Current())
{
case 1:
- case 2:
cOsdMenu::SetHelp(tr("Read in"), NULL, NULL, tr("Select"));
break;
default:
@@ -795,14 +805,8 @@ eOSState cCMDImageRead::ProcessKey(eKeys Key)
SetHelp();
return osContinue;
case kRight:
- switch(Current())
- {
- case 1:
- case 2:
+ if(Current() == 1) {
return osContinue;
- break;
- default:
- break;
}
break;
case kRed:
@@ -811,7 +815,7 @@ eOSState cCMDImageRead::ProcessKey(eKeys Key)
OsdMsg(mtError,tr("Invalid file name for DVD-Image"));
return osContinue;
}
- if(ImgType < 0)
+ if(ImgType < 0 || ImgType >= ImageList.Count())
{
OsdMsg(mtError,tr("No type of image selected"));
return osContinue;
@@ -849,16 +853,8 @@ eOSState cCMDImageRead::ProcessKey(eKeys Key)
}
break;
case kBlue:
- switch(Current())
- {
- case 1:
+ if(Current() == 1) {
return AddSubMenu(new cCMDDir(ImageList, NULL, true, &Dir[0]));
- break;
- case 2:
- return AddSubMenu(new cMenuSetupDSITypes(ImageList, true, &ImgType, &ImgTypeTxt[0]));
- break;
- default:
- break;
}
break;
default:
diff --git a/commands.h b/commands.h
index 1e9d112..32efd10 100644
--- a/commands.h
+++ b/commands.h
@@ -125,6 +125,7 @@ class cCMDImageRead : public cOsdMenu
char ImgTypeTxt[MaxFileName];
int ImgType;
cImageList &ImageList;
+ const char ** m_szItemTypes;
public:
cCMDImageRead(cImageList &ImageList);
diff --git a/helpers.c b/helpers.c
index bd3097a..34fea93 100644
--- a/helpers.c
+++ b/helpers.c
@@ -54,12 +54,6 @@ void ChangeChars(char *name, char *chars)
}
}
-void StrRepeat(const char *input, int count, char *dest)
-{
- for(int i = 0; i < count; i++)
- strcat(dest, input);
-}
-
bool RegIMatch(const char *string, const char *pattern)
{
if(!string || !pattern)
diff --git a/helpers.h b/helpers.h
index ef7410a..48521a2 100644
--- a/helpers.h
+++ b/helpers.h
@@ -18,7 +18,6 @@
void OsdMsg(eMessageType Type, const char *Msg);
void OSDErrorNumMsg(int err, const char* szDef);
void ChangeChars(char *name, char *chars);
-void StrRepeat(const char *input, int count, char *dest);
bool RegIMatch(const char *string,const char *pattern);
char *get_strerror(int n);
diff --git a/po/de_DE.po b/po/de_DE.po
index 8816ad9..04f0531 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-dvdswitch-plugin 0.1.7\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2011-01-12 20:59+0100\n"
+"POT-Creation-Date: 2011-01-19 19:02+0100\n"
"PO-Revision-Date: 2009-10-03 14:03+0200\n"
"Last-Translator:\n"
"Language-Team: <vdr@linuxtv.org>\n"
@@ -77,18 +77,12 @@ msgstr "Verzeichnis ist nicht leer! Dennoch löschen?"
msgid "Missing rights to create directory!"
msgstr "Keine Berechtigung zum erstellen des Verzeichnis!"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
-msgstr " abcdefghijklmnopqrstuvwxyzäöüß0123456789-.#~"
-
msgid "Directory exists"
msgstr "Verzeichnis existiert bereits"
msgid "Missing rights to rename!"
msgstr "Keine Berechtigung zum umbennen!"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-_.#~"
-msgstr " abcdefghijklmnopqrstuvwxyzäöüß0123456789-_.#~"
-
msgid "Insert"
msgstr "Einfügen"
@@ -197,6 +191,9 @@ msgstr "\tVerstecke Hauptmenüeintrag"
msgid "\t Name"
msgstr "\t Name"
+msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
+msgstr " abcdefghijklmnopqrstuvwxyzäöüß0123456789-.#~"
+
msgid "\tImage Dir."
msgstr "\tImage Verz."
@@ -395,3 +392,5 @@ msgstr "Operation fehlgeschlagen"
msgid "No rights to move image"
msgstr "Keine Berechtigung zum Verschieben des Images"
+#~ msgid " abcdefghijklmnopqrstuvwxyz0123456789-_.#~"
+#~ msgstr " abcdefghijklmnopqrstuvwxyzäöüß0123456789-_.#~"
diff --git a/po/fr_FR.po b/po/fr_FR.po
index b6562ab..167c664 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-dvdswitch-plugin 0.1.7\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2011-01-12 20:59+0100\n"
+"POT-Creation-Date: 2011-01-19 19:02+0100\n"
"PO-Revision-Date: 2010-12-21 12:59+0100\n"
"Last-Translator: Nicolas Huillard <nhuillard@e-dition.fr>\n"
"Language-Team: <vdr@linuxtv.org>\n"
@@ -82,18 +82,12 @@ msgstr "Le dossier n'est pas vide. L'effacer quand même?"
msgid "Missing rights to create directory!"
msgstr "pas d'autorisation de création"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
-msgstr " aàbcçdeéèfghijklmnopqrstuvwxyz0123456789-.#~"
-
msgid "Directory exists"
msgstr "Le dossier existe déjà"
msgid "Missing rights to rename!"
msgstr "pas d'autorisation d'écriture"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-_.#~"
-msgstr ""
-
msgid "Insert"
msgstr "Introduire"
@@ -202,6 +196,9 @@ msgstr "\tCache le menu"
msgid "\t Name"
msgstr "\t Nom"
+msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
+msgstr " aàbcçdeéèfghijklmnopqrstuvwxyz0123456789-.#~"
+
msgid "\tImage Dir."
msgstr "\tDossier image"
@@ -399,4 +396,3 @@ msgstr ""
msgid "No rights to move image"
msgstr "pas d'autorisation de création"
-
diff --git a/po/it_IT.po b/po/it_IT.po
index fac522b..ed5cc68 100755
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-dvdswitch-plugin 0.1.7\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2011-01-12 20:59+0100\n"
+"POT-Creation-Date: 2011-01-19 19:02+0100\n"
"PO-Revision-Date: 2010-12-30 17:54+0100\n"
"Last-Translator: Diego Pierotto <vdr-italian@tiscali.it>\n"
"Language-Team: <vdr@linuxtv.org>\n"
@@ -80,18 +80,12 @@ msgstr "Directory non vuota. Eliminare comunque?"
msgid "Missing rights to create directory!"
msgstr "Permessi non validi per creare la directory!"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
-msgstr " aáàbcdeéèfghiìîjklmnoòpqrstuùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
-
msgid "Directory exists"
msgstr "Directory esistente"
msgid "Missing rights to rename!"
msgstr "Permessi non validi per rinominare!"
-msgid " abcdefghijklmnopqrstuvwxyz0123456789-_.#~"
-msgstr "áàbcdeéèfghiìîjklmnoòpqrstuùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
-
msgid "Insert"
msgstr "Inserisci"
@@ -200,6 +194,9 @@ msgstr "\tNascondi voce menu princ."
msgid "\t Name"
msgstr "\t Nome"
+msgid " abcdefghijklmnopqrstuvwxyz0123456789-.#~"
+msgstr " aáàbcdeéèfghiìîjklmnoòpqrstuùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
+
msgid "\tImage Dir."
msgstr "\tDir. Immagine"
@@ -398,3 +395,5 @@ msgstr "Operazione fallita"
msgid "No rights to move image"
msgstr "Nessun permesso per spostare immagine"
+#~ msgid " abcdefghijklmnopqrstuvwxyz0123456789-_.#~"
+#~ msgstr "áàbcdeéèfghiìîjklmnoòpqrstuùvwxyz0123456789-.,#~\\^$[]|()*+?{}/:%@&°"
diff --git a/setup.c b/setup.c
index bf04618..10fb8e1 100644
--- a/setup.c
+++ b/setup.c
@@ -211,8 +211,7 @@ void cMenuSetupDVDSwitch::Set(void)
if(!data.ImageDirPerParam)
Add(new cMenuEditStrItem(tr("\tImage Dir."),
data.ImageDir,
- memberof(data.ImageDir),
- "abcdefghijklmnopqrstuvwxyz0123456789-.#~/"));
+ memberof(data.ImageDir)));
Add(new cOsdItem(tr("\tType of images")));
Add(new cMenuEditBoolItem(tr("\tView free disk space"), &data.ViewFreeDiskSpace));
Add(new cOsdItem("------------------------------------------------------------------------------------------"));
@@ -491,8 +490,7 @@ cMenuEditCatItem::cMenuEditCatItem(const char *name, bool view)
else
strncpy(Name, "+\t", 119);
strncat(Name, name, 119);
- //strncat(Name, " ", memberof(Name));
- //StrRepeat("_", (119 - strlen(Name)), Name);
+
SetText(Name);
}