moviebrowser: add menu to allow copy, cat or truncate movies

TODO: add good hints to explain these functions


Origin commit data
------------------
Branch: ni/coolstream
Commit: d8a4dd2c0d
Author: vanhofen <vanhofen@gmx.de>
Date: 2015-05-21 (Thu, 21 May 2015)

Origin message was:
------------------
- moviebrowser: add menu to allow copy, cat or truncate movies

 TODO: add good hints to explain these functions


------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2015-05-21 08:59:07 +02:00
parent 3cf69035d6
commit 375073b01a
6 changed files with 207 additions and 70 deletions

View File

@@ -1565,11 +1565,15 @@ moviebrowser.head_filter Filme nach Kategorie filtern:
moviebrowser.head_playlist Zuletzt gesehen: moviebrowser.head_playlist Zuletzt gesehen:
moviebrowser.head_recordlist Zuletzt aufgenommen: moviebrowser.head_recordlist Zuletzt aufgenommen:
moviebrowser.hide_series Verstecke Serien moviebrowser.hide_series Verstecke Serien
moviebrowser.hint_copy_onefile
moviebrowser.hint_copy_several
moviebrowser.hint_cut
moviebrowser.hint_jumpbackward Rücksprung in 5 s\n '0' zum Weitersehen moviebrowser.hint_jumpbackward Rücksprung in 5 s\n '0' zum Weitersehen
moviebrowser.hint_jumpforward Werbung überspringen in 5 s\n '0' zum Ansehen moviebrowser.hint_jumpforward Werbung überspringen in 5 s\n '0' zum Ansehen
moviebrowser.hint_movieend Filmende in 5 s\n '0' zum Weitersehen moviebrowser.hint_movieend Filmende in 5 s\n '0' zum Weitersehen
moviebrowser.hint_newbook_backward Neue Wiederholung\n 'blue' für Endposition moviebrowser.hint_newbook_backward Neue Wiederholung\n 'blue' für Endposition
moviebrowser.hint_newbook_forward Neuer Werbesprung\n 'blue' für Endposition moviebrowser.hint_newbook_forward Neuer Werbesprung\n 'blue' für Endposition
moviebrowser.hint_truncate
moviebrowser.info_audio Audio moviebrowser.info_audio Audio
moviebrowser.info_channel Kanal moviebrowser.info_channel Kanal
moviebrowser.info_file Datei moviebrowser.info_file Datei
@@ -1601,6 +1605,10 @@ moviebrowser.info_videoformat Bildformat
moviebrowser.last_play_max_items Zeilen 'zuletzt aufgenommen' moviebrowser.last_play_max_items Zeilen 'zuletzt aufgenommen'
moviebrowser.last_record_max_items Zeilen 'zuletzt gesehen' moviebrowser.last_record_max_items Zeilen 'zuletzt gesehen'
moviebrowser.load_default Lade Voreinstellung moviebrowser.load_default Lade Voreinstellung
moviebrowser.menu_copy_onefile Film kopieren
moviebrowser.menu_copy_several Film kopieren und teilen
moviebrowser.menu_cut Film schneiden
moviebrowser.menu_cut_head Kopieren, Schneiden und Kürzen
moviebrowser.menu_directories_head Verzeichnisse/Freier Speicher moviebrowser.menu_directories_head Verzeichnisse/Freier Speicher
moviebrowser.menu_help_head Hilfe moviebrowser.menu_help_head Hilfe
moviebrowser.menu_main_bookmarks Markierungen moviebrowser.menu_main_bookmarks Markierungen
@@ -1614,6 +1622,7 @@ moviebrowser.menu_parental_lock_head Jugendschutz
moviebrowser.menu_parental_lock_rate_head Filme sperren ab moviebrowser.menu_parental_lock_rate_head Filme sperren ab
moviebrowser.menu_save Veränderungen speichern moviebrowser.menu_save Veränderungen speichern
moviebrowser.menu_save_all Starte Übernahme in allen sichtbaren Filminfos moviebrowser.menu_save_all Starte Übernahme in allen sichtbaren Filminfos
moviebrowser.menu_truncate Film kürzen
moviebrowser.option_browser Anzeigeoptionen moviebrowser.option_browser Anzeigeoptionen
moviebrowser.reload_at_start Filminfos neu laden bei Start moviebrowser.reload_at_start Filminfos neu laden bei Start
moviebrowser.remount_at_start Filmdepot verbinden bei Start moviebrowser.remount_at_start Filmdepot verbinden bei Start

View File

@@ -1567,11 +1567,15 @@ moviebrowser.head_filter Filter movies by category:
moviebrowser.head_playlist Last played: moviebrowser.head_playlist Last played:
moviebrowser.head_recordlist Last recorded: moviebrowser.head_recordlist Last recorded:
moviebrowser.hide_series Hide series moviebrowser.hide_series Hide series
moviebrowser.hint_copy_onefile
moviebrowser.hint_copy_several
moviebrowser.hint_cut
moviebrowser.hint_jumpbackward Jump back in 5 s\n '0' to cancel moviebrowser.hint_jumpbackward Jump back in 5 s\n '0' to cancel
moviebrowser.hint_jumpforward Jump forward in 5 s\n '0' to cancel moviebrowser.hint_jumpforward Jump forward in 5 s\n '0' to cancel
moviebrowser.hint_movieend Film end in 5 s\n '0' to cancel moviebrowser.hint_movieend Film end in 5 s\n '0' to cancel
moviebrowser.hint_newbook_backward New jump back\n 'blue' for endposition moviebrowser.hint_newbook_backward New jump back\n 'blue' for endposition
moviebrowser.hint_newbook_forward New jump forward\n 'blue' for endposition moviebrowser.hint_newbook_forward New jump forward\n 'blue' for endposition
moviebrowser.hint_truncate
moviebrowser.info_audio Audio moviebrowser.info_audio Audio
moviebrowser.info_channel Channel moviebrowser.info_channel Channel
moviebrowser.info_file File moviebrowser.info_file File
@@ -1603,6 +1607,10 @@ moviebrowser.info_videoformat Picture
moviebrowser.last_play_max_items Number of lines last play moviebrowser.last_play_max_items Number of lines last play
moviebrowser.last_record_max_items Number of lines last record moviebrowser.last_record_max_items Number of lines last record
moviebrowser.load_default Load default settings moviebrowser.load_default Load default settings
moviebrowser.menu_copy_onefile Copy movie
moviebrowser.menu_copy_several Copy and split movie
moviebrowser.menu_cut Cut movie
moviebrowser.menu_cut_head Copy, cut and truncate
moviebrowser.menu_directories_head Paths moviebrowser.menu_directories_head Paths
moviebrowser.menu_help_head Help moviebrowser.menu_help_head Help
moviebrowser.menu_main_bookmarks Bookmarks moviebrowser.menu_main_bookmarks Bookmarks
@@ -1616,6 +1624,7 @@ moviebrowser.menu_parental_lock_head Parental Lock
moviebrowser.menu_parental_lock_rate_head Lock movies from moviebrowser.menu_parental_lock_rate_head Lock movies from
moviebrowser.menu_save Save changes moviebrowser.menu_save Save changes
moviebrowser.menu_save_all Start update of movie info files moviebrowser.menu_save_all Start update of movie info files
moviebrowser.menu_truncate Truncate movie
moviebrowser.option_browser Browser Options moviebrowser.option_browser Browser Options
moviebrowser.reload_at_start Reload movie info at start moviebrowser.reload_at_start Reload movie info at start
moviebrowser.remount_at_start Remount at start moviebrowser.remount_at_start Remount at start

View File

@@ -497,6 +497,9 @@ void CMovieBrowser::init(void)
show_mode = MB_SHOW_RECORDS; //FIXME show_mode = MB_SHOW_RECORDS; //FIXME
CChannelLogo = NULL; CChannelLogo = NULL;
m_doRefresh = false;
m_doLoadMovies = false;
} }
void CMovieBrowser::initGlobalSettings(void) void CMovieBrowser::initGlobalSettings(void)
@@ -794,6 +797,15 @@ int CMovieBrowser::exec(CMenuTarget* parent, const std::string & actionKey)
if (m_movieSelectionHandler != NULL) if (m_movieSelectionHandler != NULL)
return showMovieInfoMenu(m_movieSelectionHandler); return showMovieInfoMenu(m_movieSelectionHandler);
} }
else if (actionKey == "show_movie_cut_menu")
{
if (m_movieSelectionHandler != NULL)
{
if (parent)
parent->hide();
return showMovieCutMenu();
}
}
else if (actionKey == "save_movie_info") else if (actionKey == "save_movie_info")
{ {
m_movieInfo.saveMovieInfo(*m_movieSelectionHandler); m_movieInfo.saveMovieInfo(*m_movieSelectionHandler);
@@ -868,6 +880,84 @@ int CMovieBrowser::exec(CMenuTarget* parent, const std::string & actionKey)
showYTMenu(true); showYTMenu(true);
saveSettings(&m_settings); saveSettings(&m_settings);
} }
else if (actionKey == "copy_onefile" || actionKey == "copy_several")
{
bool onefile = (actionKey == "copy_onefile");
if ((show_mode == MB_SHOW_RECORDS) && (ShowMsg(LOCALE_MESSAGEBOX_INFO, onefile ? LOCALE_MOVIEBROWSER_COPY : LOCALE_MOVIEBROWSER_COPIES, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes))
{
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_COPYING);
hintBox->paint();
sleep(1);
hintBox->hide();
delete hintBox;
framebuffer->paintBackground(); // clear screen
CMovieCut mc;
bool res = mc.copyMovie(m_movieSelectionHandler, &m_movieInfo, onefile);
//g_RCInput->clearRCMsg();
if (res == 0)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_COPY_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
m_doLoadMovies = true;
m_doRefresh = true;
}
}
else if (actionKey == "cut")
{
#if 0
if ((m_movieSelectionHandler == playing_info) && (NeutrinoMessages::mode_ts == CNeutrinoApp::getInstance()->getMode()))
ShowMsg(LOCALE_MESSAGEBOX_ERROR, "Impossible to cut playing movie.", CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
#endif
if ((show_mode == MB_SHOW_RECORDS) && (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_CUT, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes))
{
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_CUTTING);
hintBox->paint();
sleep(1);
hintBox->hide();
delete hintBox;
framebuffer->paintBackground(); // clear screen
CMovieCut mc;
bool res = mc.cutMovie(m_movieSelectionHandler, &m_movieInfo);
//g_RCInput->clearRCMsg();
if (!res)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_CUT_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
m_doLoadMovies = true;
m_doRefresh = true;
}
}
else if (actionKey == "truncate")
{
if ((show_mode == MB_SHOW_RECORDS) && m_movieSelectionHandler != NULL)
{
if ((m_movieSelectionHandler == playing_info) && (NeutrinoMessages::mode_ts == CNeutrinoApp::getInstance()->getMode()))
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_TRUNCATE_FAILED_PLAYING, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else if (m_movieSelectionHandler->bookmarks.end == 0)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_BOOK_NO_END, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
{
if (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_TRUNCATE, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes)
{
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_TRUNCATING);
hintBox->paint();
CMovieCut mc;
bool res = mc.truncateMovie(m_movieSelectionHandler);
hintBox->hide();
delete hintBox;
g_RCInput->clearRCMsg();
if (!res)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_TRUNCATE_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
{
//printf("New movie info: size %lld len %d\n", res, m_movieSelectionHandler->bookmarks.end/60);
m_movieInfo.saveMovieInfo(*m_movieSelectionHandler);
m_doLoadMovies = true;
}
m_doRefresh = true;
}
}
}
}
return returnval; return returnval;
} }
@@ -1142,6 +1232,8 @@ void CMovieBrowser::refresh(void)
refreshFoot(); refreshFoot();
refreshLCD(); refreshLCD();
m_doRefresh = false;
} }
std::string CMovieBrowser::getCurrentDir(void) std::string CMovieBrowser::getCurrentDir(void)
@@ -1761,81 +1853,50 @@ bool CMovieBrowser::onButtonPressMainFrame(neutrino_msg_t msg)
if (show_mode == MB_SHOW_YT) if (show_mode == MB_SHOW_YT)
showYTMenu(); showYTMenu();
else else
{
showMenu(); showMenu();
if (m_doLoadMovies)
}
else if (msg == CRCInput::RC_text || msg == CRCInput::RC_radio) {
if ((show_mode == MB_SHOW_RECORDS) &&
(ShowMsg(LOCALE_MESSAGEBOX_INFO, msg == CRCInput::RC_radio ? LOCALE_MOVIEBROWSER_COPY : LOCALE_MOVIEBROWSER_COPIES, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes)) {
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_COPYING);
hintBox->paint();
sleep(1);
hintBox->hide();
delete hintBox;
framebuffer->paintBackground(); // clear screen
CMovieCut mc;
bool res = mc.copyMovie(m_movieSelectionHandler, &m_movieInfo, msg == CRCInput::RC_radio);
//g_RCInput->clearRCMsg();
if (res == 0)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_COPY_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
loadMovies(); loadMovies();
if (m_doRefresh)
refresh(); refresh();
} }
}
else if (msg == CRCInput::RC_audio) {
#if 0
if ((m_movieSelectionHandler == playing_info) && (NeutrinoMessages::mode_ts == CNeutrinoApp::getInstance()->getMode()))
ShowMsg(LOCALE_MESSAGEBOX_ERROR, "Impossible to cut playing movie.", CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
#endif
if ((show_mode == MB_SHOW_RECORDS) &&
(ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_CUT, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes)) {
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_CUTTING);
hintBox->paint();
sleep(1);
hintBox->hide();
delete hintBox;
framebuffer->paintBackground(); // clear screen
CMovieCut mc;
bool res = mc.cutMovie(m_movieSelectionHandler, &m_movieInfo);
//g_RCInput->clearRCMsg();
if (!res)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_CUT_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else
loadMovies();
}
// just here to stay backward compatible with these horrible key assignments
else if (msg == CRCInput::RC_radio)
{
exec(NULL, "copy_onefile");
if (m_doLoadMovies)
loadMovies();
if (m_doRefresh)
refresh(); refresh();
} }
} else if (msg == CRCInput::RC_text)
else if (msg == CRCInput::RC_games) { {
if ((show_mode == MB_SHOW_RECORDS) && m_movieSelectionHandler != NULL) { exec(NULL, "copy_several");
if ((m_movieSelectionHandler == playing_info) && (NeutrinoMessages::mode_ts == CNeutrinoApp::getInstance()->getMode())) if (m_doLoadMovies)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_TRUNCATE_FAILED_PLAYING, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else if (m_movieSelectionHandler->bookmarks.end == 0)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_BOOK_NO_END, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else {
if (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_TRUNCATE, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes) {
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_TRUNCATING);
hintBox->paint();
CMovieCut mc;
bool res = mc.truncateMovie(m_movieSelectionHandler);
hintBox->hide();
delete hintBox;
g_RCInput->clearRCMsg();
if (!res)
ShowMsg(LOCALE_MESSAGEBOX_ERROR, LOCALE_MOVIEBROWSER_TRUNCATE_FAILED, CMessageBox::mbrCancel, CMessageBox::mbCancel, NEUTRINO_ICON_ERROR);
else {
//printf("New movie info: size %lld len %d\n", res, m_movieSelectionHandler->bookmarks.end/60);
m_movieInfo.saveMovieInfo(*m_movieSelectionHandler);
loadMovies(); loadMovies();
} if (m_doRefresh)
refresh(); refresh();
} }
else if (msg == CRCInput::RC_audio)
{
exec(NULL, "cut");
if (m_doLoadMovies)
loadMovies();
if (m_doRefresh)
refresh();
} }
else if (msg == CRCInput::RC_games)
{
exec(NULL, "truncate");
if (m_doLoadMovies)
loadMovies();
if (m_doRefresh)
refresh();
} }
} else if (msg == CRCInput::RC_favorites) { else if (msg == CRCInput::RC_favorites)
{
if (m_movieSelectionHandler != NULL) { if (m_movieSelectionHandler != NULL) {
if (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_DELETE_SCREENSHOT, CMessageBox::mbrNo, CMessageBox:: mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes) { if (ShowMsg(LOCALE_MESSAGEBOX_INFO, LOCALE_MOVIEBROWSER_DELETE_SCREENSHOT, CMessageBox::mbrNo, CMessageBox:: mbYes | CMessageBox::mbNo) == CMessageBox::mbrYes) {
std::string fname = getScreenshotName(m_movieSelectionHandler->file.Name, S_ISDIR(m_movieSelectionHandler->file.Mode)); std::string fname = getScreenshotName(m_movieSelectionHandler->file.Name, S_ISDIR(m_movieSelectionHandler->file.Mode));
@@ -2649,6 +2710,8 @@ void CMovieBrowser::loadMovies(bool doRefresh)
refreshLastRecordList(); refreshLastRecordList();
refreshFilterList(); refreshFilterList();
} }
m_doLoadMovies = false;
} }
void CMovieBrowser::loadAllMovieInfo(void) void CMovieBrowser::loadAllMovieInfo(void)
@@ -2783,6 +2846,39 @@ int CMovieBrowser::showMovieInfoMenu(MI_MOVIE_INFO* movie_info)
return res; return res;
} }
int CMovieBrowser::showMovieCutMenu()
{
CMenuWidget movieCutMenu(LOCALE_MOVIEBROWSER_HEAD, NEUTRINO_ICON_MOVIEPLAYER);
movieCutMenu.addIntroItems(LOCALE_MOVIEBROWSER_MENU_CUT_HEAD);
CMenuForwarder *mf;
#if 0
mf = new CMenuForwarder(m_movieSelectionHandler->epgTitle, false);
mf->setHint(NEUTRINO_ICON_HINT_MOVIE, NONEXISTANT_LOCALE);
movieCutMenu.addItem(mf);
movieCutMenu.addItem(GenericMenuSeparator);
#endif
mf = new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_COPY_ONEFILE, true, NULL, this, "copy_onefile", CRCInput::RC_red);
mf->setHint(NEUTRINO_ICON_HINT_MOVIE, LOCALE_MOVIEBROWSER_HINT_COPY_ONEFILE);
movieCutMenu.addItem(mf);
mf = new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_COPY_SEVERAL, true, NULL, this, "copy_several", CRCInput::RC_green);
mf->setHint(NEUTRINO_ICON_HINT_MOVIE, LOCALE_MOVIEBROWSER_HINT_COPY_SEVERAL);
movieCutMenu.addItem(mf);
mf = new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_CUT, true, NULL, this, "cut", CRCInput::RC_yellow);
mf->setHint(NEUTRINO_ICON_HINT_MOVIE, LOCALE_MOVIEBROWSER_HINT_CUT);
movieCutMenu.addItem(mf);
mf = new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_TRUNCATE, true, NULL, this, "truncate", CRCInput::RC_blue);
mf->setHint(NEUTRINO_ICON_HINT_MOVIE, LOCALE_MOVIEBROWSER_HINT_TRUNCATE);
movieCutMenu.addItem(mf);
int res = movieCutMenu.exec(NULL,"");
return res;
}
bool CMovieBrowser::showMenu(bool calledExternally) bool CMovieBrowser::showMenu(bool calledExternally)
{ {
/* first clear screen */ /* first clear screen */
@@ -2893,6 +2989,8 @@ bool CMovieBrowser::showMenu(bool calledExternally)
mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_SCAN_FOR_MOVIES, true, NULL, this, "reload_movie_info", CRCInput::RC_blue)); mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_SCAN_FOR_MOVIES, true, NULL, this, "reload_movie_info", CRCInput::RC_blue));
//mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_NFS_HEAD, true, NULL, nfs, NULL, CRCInput::RC_setup)); //mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_NFS_HEAD, true, NULL, nfs, NULL, CRCInput::RC_setup));
mainMenu.addItem(GenericMenuSeparatorLine); mainMenu.addItem(GenericMenuSeparatorLine);
mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_CUT_HEAD, (m_movieSelectionHandler != NULL), NULL, this, "show_movie_cut_menu", CRCInput::RC_1));
mainMenu.addItem(GenericMenuSeparatorLine);
mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_HELP_HEAD, true, NULL, movieHelp, NULL, CRCInput::RC_help)); mainMenu.addItem(new CMenuForwarder(LOCALE_MOVIEBROWSER_MENU_HELP_HEAD, true, NULL, movieHelp, NULL, CRCInput::RC_help));
//mainMenu.addItem(GenericMenuSeparator); //mainMenu.addItem(GenericMenuSeparator);

View File

@@ -308,6 +308,8 @@ class CMovieBrowser : public CMenuTarget
bool m_showMovieInfo; bool m_showMovieInfo;
bool m_showFilter; bool m_showFilter;
bool newHeader; bool newHeader;
bool m_doRefresh;
bool m_doLoadMovies;
MI_MOVIE_INFO* m_movieSelectionHandler; MI_MOVIE_INFO* m_movieSelectionHandler;
int m_currentStartPos; int m_currentStartPos;
@@ -432,6 +434,7 @@ class CMovieBrowser : public CMenuTarget
///// Menu //////////////////////////////////// ///// Menu ////////////////////////////////////
bool showMenu(bool calledExternally = false); bool showMenu(bool calledExternally = false);
int showMovieInfoMenu(MI_MOVIE_INFO* movie_info); // P2 int showMovieInfoMenu(MI_MOVIE_INFO* movie_info); // P2
int showMovieCutMenu(); // P2
int showStartPosSelectionMenu(void); // P2 int showStartPosSelectionMenu(void); // P2
///// settings /////////////////////////////////// ///// settings ///////////////////////////////////

View File

@@ -1594,11 +1594,15 @@ typedef enum
LOCALE_MOVIEBROWSER_HEAD_PLAYLIST, LOCALE_MOVIEBROWSER_HEAD_PLAYLIST,
LOCALE_MOVIEBROWSER_HEAD_RECORDLIST, LOCALE_MOVIEBROWSER_HEAD_RECORDLIST,
LOCALE_MOVIEBROWSER_HIDE_SERIES, LOCALE_MOVIEBROWSER_HIDE_SERIES,
LOCALE_MOVIEBROWSER_HINT_COPY_ONEFILE,
LOCALE_MOVIEBROWSER_HINT_COPY_SEVERAL,
LOCALE_MOVIEBROWSER_HINT_CUT,
LOCALE_MOVIEBROWSER_HINT_JUMPBACKWARD, LOCALE_MOVIEBROWSER_HINT_JUMPBACKWARD,
LOCALE_MOVIEBROWSER_HINT_JUMPFORWARD, LOCALE_MOVIEBROWSER_HINT_JUMPFORWARD,
LOCALE_MOVIEBROWSER_HINT_MOVIEEND, LOCALE_MOVIEBROWSER_HINT_MOVIEEND,
LOCALE_MOVIEBROWSER_HINT_NEWBOOK_BACKWARD, LOCALE_MOVIEBROWSER_HINT_NEWBOOK_BACKWARD,
LOCALE_MOVIEBROWSER_HINT_NEWBOOK_FORWARD, LOCALE_MOVIEBROWSER_HINT_NEWBOOK_FORWARD,
LOCALE_MOVIEBROWSER_HINT_TRUNCATE,
LOCALE_MOVIEBROWSER_INFO_AUDIO, LOCALE_MOVIEBROWSER_INFO_AUDIO,
LOCALE_MOVIEBROWSER_INFO_CHANNEL, LOCALE_MOVIEBROWSER_INFO_CHANNEL,
LOCALE_MOVIEBROWSER_INFO_FILE, LOCALE_MOVIEBROWSER_INFO_FILE,
@@ -1630,6 +1634,10 @@ typedef enum
LOCALE_MOVIEBROWSER_LAST_PLAY_MAX_ITEMS, LOCALE_MOVIEBROWSER_LAST_PLAY_MAX_ITEMS,
LOCALE_MOVIEBROWSER_LAST_RECORD_MAX_ITEMS, LOCALE_MOVIEBROWSER_LAST_RECORD_MAX_ITEMS,
LOCALE_MOVIEBROWSER_LOAD_DEFAULT, LOCALE_MOVIEBROWSER_LOAD_DEFAULT,
LOCALE_MOVIEBROWSER_MENU_COPY_ONEFILE,
LOCALE_MOVIEBROWSER_MENU_COPY_SEVERAL,
LOCALE_MOVIEBROWSER_MENU_CUT,
LOCALE_MOVIEBROWSER_MENU_CUT_HEAD,
LOCALE_MOVIEBROWSER_MENU_DIRECTORIES_HEAD, LOCALE_MOVIEBROWSER_MENU_DIRECTORIES_HEAD,
LOCALE_MOVIEBROWSER_MENU_HELP_HEAD, LOCALE_MOVIEBROWSER_MENU_HELP_HEAD,
LOCALE_MOVIEBROWSER_MENU_MAIN_BOOKMARKS, LOCALE_MOVIEBROWSER_MENU_MAIN_BOOKMARKS,
@@ -1643,6 +1651,7 @@ typedef enum
LOCALE_MOVIEBROWSER_MENU_PARENTAL_LOCK_RATE_HEAD, LOCALE_MOVIEBROWSER_MENU_PARENTAL_LOCK_RATE_HEAD,
LOCALE_MOVIEBROWSER_MENU_SAVE, LOCALE_MOVIEBROWSER_MENU_SAVE,
LOCALE_MOVIEBROWSER_MENU_SAVE_ALL, LOCALE_MOVIEBROWSER_MENU_SAVE_ALL,
LOCALE_MOVIEBROWSER_MENU_TRUNCATE,
LOCALE_MOVIEBROWSER_OPTION_BROWSER, LOCALE_MOVIEBROWSER_OPTION_BROWSER,
LOCALE_MOVIEBROWSER_RELOAD_AT_START, LOCALE_MOVIEBROWSER_RELOAD_AT_START,
LOCALE_MOVIEBROWSER_REMOUNT_AT_START, LOCALE_MOVIEBROWSER_REMOUNT_AT_START,

View File

@@ -1594,11 +1594,15 @@ const char * locale_real_names[] =
"moviebrowser.head_playlist", "moviebrowser.head_playlist",
"moviebrowser.head_recordlist", "moviebrowser.head_recordlist",
"moviebrowser.hide_series", "moviebrowser.hide_series",
"moviebrowser.hint_copy_onefile",
"moviebrowser.hint_copy_several",
"moviebrowser.hint_cut",
"moviebrowser.hint_jumpbackward", "moviebrowser.hint_jumpbackward",
"moviebrowser.hint_jumpforward", "moviebrowser.hint_jumpforward",
"moviebrowser.hint_movieend", "moviebrowser.hint_movieend",
"moviebrowser.hint_newbook_backward", "moviebrowser.hint_newbook_backward",
"moviebrowser.hint_newbook_forward", "moviebrowser.hint_newbook_forward",
"moviebrowser.hint_truncate",
"moviebrowser.info_audio", "moviebrowser.info_audio",
"moviebrowser.info_channel", "moviebrowser.info_channel",
"moviebrowser.info_file", "moviebrowser.info_file",
@@ -1630,6 +1634,10 @@ const char * locale_real_names[] =
"moviebrowser.last_play_max_items", "moviebrowser.last_play_max_items",
"moviebrowser.last_record_max_items", "moviebrowser.last_record_max_items",
"moviebrowser.load_default", "moviebrowser.load_default",
"moviebrowser.menu_copy_onefile",
"moviebrowser.menu_copy_several",
"moviebrowser.menu_cut",
"moviebrowser.menu_cut_head",
"moviebrowser.menu_directories_head", "moviebrowser.menu_directories_head",
"moviebrowser.menu_help_head", "moviebrowser.menu_help_head",
"moviebrowser.menu_main_bookmarks", "moviebrowser.menu_main_bookmarks",
@@ -1643,6 +1651,7 @@ const char * locale_real_names[] =
"moviebrowser.menu_parental_lock_rate_head", "moviebrowser.menu_parental_lock_rate_head",
"moviebrowser.menu_save", "moviebrowser.menu_save",
"moviebrowser.menu_save_all", "moviebrowser.menu_save_all",
"moviebrowser.menu_truncate",
"moviebrowser.option_browser", "moviebrowser.option_browser",
"moviebrowser.reload_at_start", "moviebrowser.reload_at_start",
"moviebrowser.remount_at_start", "moviebrowser.remount_at_start",