2 * UI->Qt->MainWindow : CD ROM Utils.
3 * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
7 * Mar 20, 2016 : Initial
11 #include "commonclasses.h"
12 #include "mainwidget_base.h"
13 #include "qt_dialogs.h"
14 #include "agar_logger.h"
16 #include "menu_laserdisc.h"
19 void Object_Menu_Control::insert_laserdisc(void) {
20 //AGAR_DebugLog(AGAR_LOG_DEBUG, "%d", play);
21 emit sig_insert_laserdisc(play);
23 void Object_Menu_Control::eject_laserdisc(void) {
24 emit sig_eject_laserdisc();
26 void Object_Menu_Control::on_recent_laserdisc(){
27 emit sig_recent_laserdisc(s_num);
30 void Ui_MainWindowBase::CreateLaserdiscMenu(void)
32 QString ext_play, desc_play;
34 listLaserdisc.clear();
35 menu_Laserdisc = new Menu_LaserdiscClass(emu, menubar, "Object_Laserdisc_Menu", using_flags, this, 0);
36 menu_Laserdisc->setObjectName(QString::fromUtf8("menuLaserdisc", -1));
38 menu_Laserdisc->create_pulldown_menu();
40 SETUP_HISTORY(using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
41 menu_Laserdisc->do_update_histories(listLaserdisc);
42 menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
44 ext_play = "*.ogv *.mp4 *.avi *.mkv";
45 desc_play = "Laserisc";
46 menu_Laserdisc->do_add_media_extension(ext_play, desc_play);
50 void Ui_MainWindowBase::CreateLaserdiscPulldownMenu(void)
54 void Ui_MainWindowBase::ConfigLaserdiscMenuSub(void)
59 int Ui_MainWindowBase::set_recent_laserdisc(int num)
62 char path_shadow[PATH_MAX];
64 if((num < 0) || (num >= MAX_HISTORY)) return -1;
66 s_path = QString::fromLocal8Bit(using_flags->get_config_ptr()->recent_laser_disc_path[num]);
67 strncpy(path_shadow, s_path.toLocal8Bit().constData(), PATH_MAX);
68 UPDATE_HISTORY(path_shadow, using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
70 get_parent_dir(path_shadow);
71 strcpy(using_flags->get_config_ptr()->initial_laser_disc_dir, path_shadow);
72 strncpy(path_shadow, s_path.toLocal8Bit().constData(), PATH_MAX);
73 emit sig_close_laserdisc();
74 AGAR_DebugLog(AGAR_LOG_DEBUG, "Laserdisc: Open : filename = %s", path_shadow);
75 emit sig_open_laserdisc(s_path);
76 menu_Laserdisc->do_update_histories(listLaserdisc);
77 menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
81 void Ui_MainWindowBase::do_eject_laserdisc(void)
83 emit sig_close_laserdisc();
86 void Ui_MainWindowBase::do_open_laserdisc(QString path)
88 char path_shadow[PATH_MAX];
91 if(path.length() <= 0) return;
92 strncpy(path_shadow, path.toLocal8Bit().constData(), PATH_MAX);
93 UPDATE_HISTORY(path_shadow, using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
94 get_parent_dir(path_shadow);
95 strcpy(using_flags->get_config_ptr()->initial_laser_disc_dir, path_shadow);
96 // Copy filename again.
97 strncpy(path_shadow, path.toLocal8Bit().constData(), PATH_MAX);
99 emit sig_close_laserdisc();
100 AGAR_DebugLog(AGAR_LOG_DEBUG, "CD-ROM: Open : filename = %s", path_shadow);
101 emit sig_open_laserdisc(path);
102 menu_Laserdisc->do_update_histories(listLaserdisc);
103 menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
106 void Ui_MainWindowBase::retranslateLaserdiscMenu(void)
108 if(using_flags->is_use_laser_disc()) {
109 menu_Laserdisc->retranslateUi();
113 void Ui_MainWindowBase::ConfigLaserdiscMenu(void)
115 ConfigLaserdiscMenuSub();