connect(hRunEmu, SIGNAL(sig_change_osd_cdrom(QString)), this, SLOT(do_change_osd_cdrom(QString)));
#endif
#if defined(USE_LASER_DISK)
- connect(this, SIGNAL(sig_open_laser_disk(QString)), hRunEmu, SLOT(do_open_laser_disk(QString)));
- connect(this, SIGNAL(sig_close_laser_disk(void)), hRunEmu, SLOT(do_close_laser_disk(void)));
+ connect(this, SIGNAL(sig_open_laserdisc(QString)), hRunEmu, SLOT(do_open_laserdisc(QString)));
+ connect(this, SIGNAL(sig_close_laserdisc(void)), hRunEmu, SLOT(do_close_laserdisc(void)));
#endif
#if defined(USE_BINARY_FILE1)
connect(this, SIGNAL(sig_load_binary(int, QString)), hRunEmu, SLOT(do_load_binary(int, QString)));
menu_cart.h
menu_quickdisk.h
menu_compactdisc.h
+ menu_laserdisc.h
menu_binary.h
menu_bubble.h
display_about.h
menu_disk.cpp
menu_quickdisk.cpp
menu_compactdisc.cpp
+ menu_laserdisc.cpp
menu_cmt.cpp
menu_cart.cpp
menu_main.cpp
mainwindow_utils.cpp
util_fd.cpp
util_cd.cpp
+ util_ld.cpp
util_cmt.cpp
util_qd.cpp
util_cart.cpp
int sig_eject_cdrom(void);
int sig_recent_cdrom(int);
+ int sig_insert_laserdisc(bool);
+ int sig_eject_laserdisc(void);
+ int sig_recent_laserdisc(int);
+
int sig_insert_play_cmt(bool);
int sig_eject_cmt(void);
int sig_recent_cmt(int);
void eject_cdrom(void);
void on_recent_cdrom();
+ void insert_laserdisc(void);
+ void eject_laserdisc(void);
+ void on_recent_laserdisc();
+
void start_insert_play_cmt(void);
void eject_cmt(void);
void on_recent_cmt(void);
class Menu_BinaryClass;
class Menu_BubbleClass;
class Menu_CompactDiscClass;
+class Menu_LaserdiscClass;
class MOVIE_SAVER;
void CreateCDROMPulldownMenu(void);
void retranslateCDROMMenu(void);
+ void CreateLaserdiscMenu(void);
+ void ConfigLaserdiscMenu(void);
+ void ConfigLaserdiscMenuSub(void);
+ void CreateLaserdiscPulldownMenu(void);
+ void retranslateLaserdiscMenu(void);
void ConfigBinaryMenu(void);
void retranslateBinaryMenu(int drv, int basedrv);
QStringList listCMT;
bool cmt_write_protect;
QStringList listCDROM;
-
- class Action_Control *actionInsert_LD;
- class Action_Control *actionEject_LD;
- QActionGroup *actionGroup_Opened_LD;
- class Action_Control *actionRecent_Opened_LD;
- class Action_Control *action_Recent_List_LD[MAX_HISTORY];
- QStringList listLaserDisc;
-
+ QStringList listLaserdisc;
QStringList listBINs[8];
// Screen
class Action_Control *actionZoom;
Menu_CMTClass *menu_CMT;
Menu_CompactDiscClass *menu_CDROM;
-
+ Menu_LaserdiscClass *menu_Laserdisc;
Menu_CartClass *menu_Cart[8];
-
- QMenu *menuLD;
- QMenu *menuLD_Recent;
Menu_BinaryClass *menu_BINs[8];
-
Menu_BubbleClass *menu_bubbles[8];
+
QStringList listBubbles[8];
QStringList listB77[8];
void do_eject_cdrom(int drv);
void do_open_cdrom(int drv, QString path);
void do_change_osd_cdrom(QString tmpstr);
-#if 0
+#if 1
int set_recent_laserdisc(int num);
void do_eject_laserdisc(void);
void do_open_laserdisc(QString path);
int sig_open_cart(int drv, QString path);
int sig_open_cdrom(QString path);
int sig_close_cdrom(void);
- int sig_close_laser_disk(void);
- int sig_open_laser_disk(QString path);
+ int sig_close_laserdisc(void);
+ int sig_open_laserdisc(QString path);
int sig_load_binary(int drv, QString path);
int sig_save_binary(int drv, QString path);
int sig_write_protect_bubble(int, bool);
--- /dev/null
+/*
+ * Qt / Tape Menu, Utilities
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ * License : GPLv2
+ * History :
+ * Mar 20 2016 : Start
+ */
+
+#include "commonclasses.h"
+#include "mainwidget_base.h"
+#include "menu_laserdisc.h"
+
+#include "qt_dialogs.h"
+//#include "emu.h"
+
+
+Menu_LaserdiscClass::Menu_LaserdiscClass(EMU *ep, QMenuBar *root_entry, QString desc, USING_FLAGS *p, QWidget *parent, int drv) : Menu_MetaClass(ep, root_entry, desc, p, parent, drv)
+{
+ use_write_protect = false;
+ use_d88_menus = false;
+}
+
+Menu_LaserdiscClass::~Menu_LaserdiscClass()
+{
+}
+
+void Menu_LaserdiscClass::create_pulldown_menu_device_sub(void)
+{
+ //
+}
+
+
+void Menu_LaserdiscClass::connect_menu_device_sub(void)
+{
+ connect(this, SIGNAL(sig_open_media(int, QString)), p_wid, SLOT(do_open_laserdisc(int, QString)));
+ connect(this, SIGNAL(sig_eject_media(int)), p_wid, SLOT(do_eject_laserdisc(int)));
+ connect(this, SIGNAL(sig_set_recent_media(int, int)), p_wid, SLOT(set_recent_laserdisc(int, int)));
+}
+
+
+void Menu_LaserdiscClass::retranslate_pulldown_menu_device_sub(void)
+{
+ action_insert->setText(QApplication::translate("MainWindow", "Insert Laserdisc", 0));
+ action_eject->setText(QApplication::translate("MainWindow", "Eject Laserdisc", 0));
+
+ this->setTitle(QApplication::translate("MainWindow", "Laserdisc" , 0));
+ action_insert->setIcon(QIcon(":/icon_cd.png"));
+}
--- /dev/null
+/*
+ * Menu_MetaClass : Defines
+ * (C) 2015 by K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ * Please use this file as templete.
+ */
+
+
+#ifndef _CSP_QT_MENU_LASERDISC_CLASSES_H
+#define _CSP_QT_MENU_LASERDISC_CLASSES_H
+
+#include "menu_metaclass.h"
+
+QT_BEGIN_NAMESPACE
+
+class DLL_PREFIX Menu_LaserdiscClass: public Menu_MetaClass {
+ Q_OBJECT
+protected:
+public:
+ Menu_LaserdiscClass(EMU *ep, QMenuBar *root_entry, QString desc, USING_FLAGS *p, QWidget *parent = 0, int drv = 0);
+ ~Menu_LaserdiscClass();
+ void create_pulldown_menu_device_sub();
+ void connect_menu_device_sub(void);
+ void retranslate_pulldown_menu_device_sub(void);
+public slots:
+signals:
+};
+
+QT_END_NAMESPACE
+
+#endif
#include "menu_quickdisk.h"
#include "menu_binary.h"
#include "menu_compactdisc.h"
+#include "menu_laserdisc.h"
#include "menu_bubble.h"
#include "qt_gldraw.h"
if(using_flags->is_use_compact_disc()) {
ConfigCDROMMenu();
}
+ if(using_flags->is_use_laser_disc()) {
+ ConfigLaserdiscMenu();
+ }
if(using_flags->is_use_bubble()) {
ConfigBubbleMenu();
}
if(using_flags->is_use_compact_disc()) {
CreateCDROMMenu();
}
+ if(using_flags->is_use_laser_disc()) {
+ CreateLaserdiscMenu();
+ }
if(using_flags->is_use_bubble()) {
int i;
for(i = 0; i < using_flags->get_max_bubble(); i++) {
if(using_flags->is_use_compact_disc()) {
menubar->addAction(menu_CDROM->menuAction());
}
-// if(using_flags->is_use_laser_disc()) {
-// menubar->addAction(menu_LaserDisc->menuAction());
-// }
+ if(using_flags->is_use_laser_disc()) {
+ menubar->addAction(menu_Laserdisc->menuAction());
+ }
if(using_flags->is_use_bubble()) {
int i;
for(i = 0; i < using_flags->get_max_bubble(); i++) {
--- /dev/null
+/*
+ * UI->Qt->MainWindow : CD ROM Utils.
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ * License: GPLv2
+ *
+ * History:
+ * Mar 20, 2016 : Initial
+ */
+
+
+#include "commonclasses.h"
+#include "mainwidget_base.h"
+#include "qt_dialogs.h"
+#include "agar_logger.h"
+
+#include "menu_laserdisc.h"
+
+
+void Object_Menu_Control::insert_laserdisc(void) {
+ //AGAR_DebugLog(AGAR_LOG_DEBUG, "%d", play);
+ emit sig_insert_laserdisc(play);
+}
+void Object_Menu_Control::eject_laserdisc(void) {
+ emit sig_eject_laserdisc();
+}
+void Object_Menu_Control::on_recent_laserdisc(){
+ emit sig_recent_laserdisc(s_num);
+}
+
+void Ui_MainWindowBase::CreateLaserdiscMenu(void)
+{
+ QString ext_play, desc_play;
+
+ listLaserdisc.clear();
+ menu_Laserdisc = new Menu_LaserdiscClass(emu, menubar, "Object_Laserdisc_Menu", using_flags, this, 0);
+ menu_Laserdisc->setObjectName(QString::fromUtf8("menuLaserdisc", -1));
+
+ menu_Laserdisc->create_pulldown_menu();
+ // Translate Menu
+ SETUP_HISTORY(using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
+ menu_Laserdisc->do_update_histories(listLaserdisc);
+ menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
+
+ ext_play = "*.ogv *.mp4 *.avi *.mkv";
+ desc_play = "Laserisc";
+ menu_Laserdisc->do_add_media_extension(ext_play, desc_play);
+
+}
+
+void Ui_MainWindowBase::CreateLaserdiscPulldownMenu(void)
+{
+}
+
+void Ui_MainWindowBase::ConfigLaserdiscMenuSub(void)
+{
+
+}
+
+int Ui_MainWindowBase::set_recent_laserdisc(int num)
+{
+ QString s_path;
+ char path_shadow[PATH_MAX];
+ int i;
+ if((num < 0) || (num >= MAX_HISTORY)) return -1;
+
+ s_path = QString::fromLocal8Bit(using_flags->get_config_ptr()->recent_laser_disc_path[num]);
+ strncpy(path_shadow, s_path.toLocal8Bit().constData(), PATH_MAX);
+ UPDATE_HISTORY(path_shadow, using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
+
+ get_parent_dir(path_shadow);
+ strcpy(using_flags->get_config_ptr()->initial_laser_disc_dir, path_shadow);
+ strncpy(path_shadow, s_path.toLocal8Bit().constData(), PATH_MAX);
+ emit sig_close_laserdisc();
+ AGAR_DebugLog(AGAR_LOG_DEBUG, "Laserdisc: Open : filename = %s", path_shadow);
+ emit sig_open_laserdisc(s_path);
+ menu_Laserdisc->do_update_histories(listLaserdisc);
+ menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
+ return 0;
+}
+
+void Ui_MainWindowBase::do_eject_laserdisc(void)
+{
+ emit sig_close_laserdisc();
+}
+
+void Ui_MainWindowBase::do_open_laserdisc(QString path)
+{
+ char path_shadow[PATH_MAX];
+ int i;
+
+ if(path.length() <= 0) return;
+ strncpy(path_shadow, path.toLocal8Bit().constData(), PATH_MAX);
+ UPDATE_HISTORY(path_shadow, using_flags->get_config_ptr()->recent_laser_disc_path, listLaserdisc);
+ get_parent_dir(path_shadow);
+ strcpy(using_flags->get_config_ptr()->initial_laser_disc_dir, path_shadow);
+ // Copy filename again.
+ strncpy(path_shadow, path.toLocal8Bit().constData(), PATH_MAX);
+
+ emit sig_close_laserdisc();
+ AGAR_DebugLog(AGAR_LOG_DEBUG, "CD-ROM: Open : filename = %s", path_shadow);
+ emit sig_open_laserdisc(path);
+ menu_Laserdisc->do_update_histories(listLaserdisc);
+ menu_Laserdisc->do_set_initialize_directory(using_flags->get_config_ptr()->initial_laser_disc_dir);
+}
+
+void Ui_MainWindowBase::retranslateLaserdiscMenu(void)
+{
+ if(using_flags->is_use_laser_disc()) {
+ menu_Laserdisc->retranslateUi();
+ }
+}
+
+void Ui_MainWindowBase::ConfigLaserdiscMenu(void)
+{
+ ConfigLaserdiscMenuSub();
+}