X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=source%2Fsrc%2Fqt%2Fgui%2Fmainwidget_base.h;h=6278335b360cb6528f33105b8c6288e4dda7c640;hb=90a1d498c79c26d69c78435600856b152aa07291;hp=01c35ab704ffbaf4ab086248199eb578435eb723;hpb=909d20a2c04bf65d36a97ea6fc955608351983a7;p=csp-qt%2Fcommon_source_project-fm7.git diff --git a/source/src/qt/gui/mainwidget_base.h b/source/src/qt/gui/mainwidget_base.h index 01c35ab70..6278335b3 100644 --- a/source/src/qt/gui/mainwidget_base.h +++ b/source/src/qt/gui/mainwidget_base.h @@ -7,15 +7,15 @@ #ifndef _CSP_QT_MAINWIDGET_BASE_H #define _CSP_QT_MAINWIDGET_BASE_H -#include -#include -#include +//#include +//#include +//#include #include #include #include #include -#include -#include +//#include +//#include #include "common.h" #include "config.h" @@ -36,12 +36,13 @@ enum { CSP_MAINWIDGET_SAVE_MOVIE_END, }; -#define MAX_RENDER_PLATFORMS 8 +#define MAX_RENDER_PLATFORMS 12 enum { RENDER_PLATFORMS_OPENGL3_MAIN = 0, RENDER_PLATFORMS_OPENGL2_MAIN, RENDER_PLATFORMS_OPENGL_CORE, + RENDER_PLATFORMS_OPENGL_ES_2, RENDER_PLATFORMS_END }; @@ -87,12 +88,12 @@ QT_BEGIN_NAMESPACE __action[_i]->setEnabled(__enabled); \ __action[_i]->binds->setValue1(_i); \ __menu->addAction(__action[_i]); \ - if(using_flags->get_config_ptr()->__cnf[_i][0]) __action[_i]->setChecked(true); \ + if(p_config->__cnf[_i][0]) __action[_i]->setChecked(true); \ connect(__action[_i], __signal1, __action[_i], __slot1); \ connect(__action[_i], __signal2, this, __slot2); \ } \ - +class OSD; class QVariant; class QAction; class QActionGroup; @@ -100,6 +101,9 @@ class QButtonGroup; class QGraphicsView; class QGraphicsScene; class QHeaderView; +class QMenu; +class QMenuBar; +class QApplication; class QStatusBar; class QWidget; @@ -117,6 +121,7 @@ class Menu_MetaClass; class Menu_FDClass; class Menu_CMTClass; class Menu_CartClass; +class Menu_HDDClass; class Menu_QDClass; class Menu_BinaryClass; class Menu_BubbleClass; @@ -148,6 +153,7 @@ private: class Action_Control *actionSpeed_x4; class Action_Control *actionSpeed_x8; class Action_Control *actionSpeed_x16; + class Action_Control *actionSpeed_FULL; class Action_Control *actionPaste_from_Clipboard; class Action_Control *actionStop_Pasting; QMenu *menuSave_State; @@ -156,12 +162,16 @@ private: // Screen QActionGroup *actionGroup_Stretch; QActionGroup *actionGroup_SetRenderPlatform; + QActionGroup *actionGroup_RotateType; + class Action_Control *action_ScreenSeparateThread; + class Action_Control *action_ScreenUseOSD; class Action_Control *actionZoom; class Action_Control *actionDisplay_Mode; class Action_Control *actionScanLine; class Action_Control *actionGLScanLineHoriz; class Action_Control *actionGLScanLineVert; - class Action_Control *actionRotate; + + class Action_Control *actionRotate[4]; class Action_Control *actionCRT_Filter; class Action_Control *actionOpenGL_Filter; class Action_Control *actionDot_by_Dot; @@ -192,6 +202,8 @@ private: class Action_Control *action_DispVirtualMedias[5]; class Action_Control *action_FocusWithClick; class Action_Control *action_UseRomaKana; + class Action_Control *action_NumPadEnterAsFullkey; + class Action_Control *action_Logging_FDC; class Action_Control *action_LogToSyslog; class Action_Control *action_LogToConsole; class Action_Control *action_LogRecord; @@ -202,6 +214,7 @@ private: class Action_Control *action_SetupJoystick; class Action_Control *action_SetupKeyboard; class Action_Control *action_LogView; + class Action_Control *action_PrintCpuStatistics; QMenu *menu_EmulateCursorAs; QActionGroup *actionGroup_EmulateCursorAs; @@ -234,10 +247,12 @@ private: uint32_t osd_led_data; // Inner functions + void ConfigCpuSpeed(void); void ConfigControlMenu(void); void connectActions_ControlMenu(void); void ConfigFloppyMenu(void); + void ConfigHardDiskMenu(void); void ConfigSoundMenu(void); void CreateSoundMenu(void); @@ -247,13 +262,22 @@ private: void CreateFloppyMenu(int drv, int drv_base); void CreateFloppyPulldownMenu(int drv); void ConfigFloppyMenuSub(int drv); - // Bubble + + void CreateHardDiskMenu(int drv, int drv_base); + void CreateHardDiskPulldownMenu(int drv); + void ConfigHardDiskMenuSub(int drv); +// Bubble void CreateBubbleMenu(int drv, int drv_base); void CreateBubblePulldownMenu(int drv); void ConfigBubbleMenuSub(int drv); void ConfigBubbleMenu(void); + virtual int GetBubbleBankNum(int drv) { return 0; } + virtual int GetBubbleCurrentBankNum(int drv) { return 0; } + virtual bool GetBubbleCasetteIsProtected(int drv) { return false; } + virtual QString GetBubbleB77FileName(int drv) { return QString::fromUtf8(""); } + virtual QString GetBubbleB77BubbleName(int drv, int num) { return QString::fromUtf8(""); } - void CreateCMTMenu(int drive); + void CreateCMTMenu(int drive, int drv_base); void ConfigCMTMenu(void); void ConfigQuickDiskMenu(void); @@ -266,12 +290,12 @@ private: void ConfigCartMenuSub(int drv); void ConfigCartMenu(void); - void CreateCDROMMenu(void); + void CreateCDROMMenu(int drv, int drv_base); void ConfigCDROMMenu(void); void ConfigCDROMMenuSub(void); void CreateCDROMPulldownMenu(void); - void CreateLaserdiscMenu(void); + void CreateLaserdiscMenu(int drv, int drv_base); void ConfigLaserdiscMenu(void); void ConfigLaserdiscMenuSub(void); void CreateLaserdiscPulldownMenu(void); @@ -287,6 +311,7 @@ private: void ConfigDriveType(void); void ConfigSoundDeviceType(void); void ConfigPrinterType(void); + void ConfigMonitorType(void); // About Status bar int Calc_OSD_Wfactor(void); @@ -313,10 +338,12 @@ protected: QStringList listQDs[8]; QStringList listCMT[8]; bool cmt_write_protect[8]; - QStringList listCDROM; - QStringList listLaserdisc; + QStringList listCDROM[8]; + QStringList listLaserdisc[8]; QStringList listBINs[8]; QStringList listFDs[16]; + QStringList listHDDs[16]; + QStringList listD88[16]; QStringList listBubbles[8]; QStringList listB77[8]; @@ -375,6 +402,10 @@ protected: class Action_Control *actionStop_Record_Movie; class Action_Control *action_SetupMovie; // 15, 24, 30, 60 + QMenu *menuMonitorType; + QActionGroup *actionGroup_MonitorType; + Action_Control *actionMonitorType[16]; + // Menus QMenu *menuControl; QMenu *menuState; @@ -385,6 +416,7 @@ protected: QMenu *menuStretch_Mode; QMenu *menuScreenSize; QMenu *menuScreen_Render; + QMenu *menuScreen_Rotate; QMenu *menuCpuType; QMenu *menuBootMode; @@ -402,8 +434,9 @@ protected: Menu_FDClass *menu_fds[16]; Menu_QDClass *menu_QDs[8]; Menu_CMTClass *menu_CMT[8]; - Menu_CompactDiscClass *menu_CDROM; - Menu_LaserdiscClass *menu_Laserdisc; + Menu_HDDClass *menu_hdds[16]; + Menu_CompactDiscClass *menu_CDROM[8]; + Menu_LaserdiscClass *menu_Laserdisc[8]; Menu_CartClass *menu_Cart[8]; Menu_BinaryClass *menu_BINs[8]; Menu_BubbleClass *menu_bubbles[8]; @@ -436,6 +469,9 @@ protected: // Translate UIs. void retranslateControlMenu(const char *SpecialResetTitle, bool WithSpecialReset); void retranslateFloppyMenu(int drv, int basedrv); + void retranslateFloppyMenu(int drv, int basedrv, QString specName); + void retranslateHardDiskMenu(int drv, int basedrv); + void retranslateHardDiskMenu(int drv, int basedrv, QString specName); void retranslateBubbleMenu(int drv, int basedrv); void retranslateCMTMenu(int drive); void retranslateQuickDiskMenu(int drv, int basedrv); @@ -488,6 +524,11 @@ public: bool get_direct_load_mzt(int drive); virtual bool GetPowerState(void); void set_logger(CSP_Logger *logger) { csp_logger = logger; } + + virtual QString get_system_version(); + virtual QString get_build_date(); + QString get_gui_version(); + // Basic slots public slots: void delete_emu_thread(void); @@ -502,6 +543,7 @@ public slots: void do_update_volume(int level); void set_screen_aspect(int num); void set_screen_size(int w, int h); + void do_set_screen_rotate(int type); void OnReset(void); void OnSpecialReset(void); virtual void do_set_mouse_enable(bool flag); @@ -517,17 +559,17 @@ public slots: void do_stop_saving_movie(void); void do_start_saving_movie(void); void do_set_state_saving_movie(bool state); + void set_osd_virtual_media(bool f); virtual void OnOpenDebugger(int n); virtual void OnCloseDebugger(void); - - void set_screen_rotate(bool); + void doBeforeCloseMainWindow(void); void set_gl_crt_filter(bool); void set_cpu_power(int pw) { OnCpuPower(pw); } virtual void on_actionExit_triggered(); - + void do_emu_full_speed(bool f); void OnStartAutoKey(void); void OnStopAutoKey(void); void eject_cart(int); @@ -582,15 +624,19 @@ public slots: virtual int set_d88_slot(int drive, int num); virtual int set_recent_disk(int, int); + virtual void do_update_recent_hard_disk(int); + virtual void _open_hard_disk(int drv, const QString fname); + void eject_hard_disk(int drv); + virtual int set_recent_hard_disk(int, int); // Bubble Casette int write_protect_bubble(int drv, bool flag); - virtual int set_b77_slot(int drive, int num); - virtual void do_update_recent_bubble(int drv); - virtual int set_recent_bubble(int drv, int num); + int set_b77_slot(int drive, int num); + void do_update_recent_bubble(int drv); + int set_recent_bubble(int drv, int num); + void _open_bubble(int drv, const QString fname); + void eject_bubble(int drv); - virtual void _open_bubble(int drv, const QString fname); - virtual void eject_bubble(int drv); void start_record_sound(bool rec); void set_freq(int); @@ -626,6 +672,7 @@ public slots: void do_set_dev_log_to_console(int id, bool f); void do_set_dev_log_to_syslog(int id, bool f); void do_set_roma_kana(bool f); + void do_set_numpad_enter_as_fullkey(bool f); void do_set_render_mode_std(void); void do_set_render_mode_tv(void); void do_select_render_platform(int num); @@ -638,13 +685,21 @@ public slots: void do_set_visible_virtual_media_right(); void do_set_emulate_cursor_as(int num); - + void do_set_logging_fdc(bool onoff); + void do_set_separate_thread_draw(bool f); + void do_set_print_cpu_statistics(bool flag); + // ToDo: GUI + void do_set_state_log_to_record(bool f); + void do_set_state_log_to_console(bool f); + void do_set_state_log_to_syslog(bool f); + signals: int message_changed(QString); int quit_emu_thread(); int call_joy_thread(EMU *); int quit_joy_thread(); int quit_draw_thread(); + int quit_emulator_all(); int sig_quit_movie_thread(); int sig_stop_saving_movie(void); int sig_start_saving_movie(void); @@ -655,6 +710,7 @@ signals: int on_insert_fd(int); int on_eject_fd(int); int do_open_disk(int, QString); + int closed(void); int sig_quit_all(void); int sig_vm_reset(void); @@ -675,6 +731,8 @@ signals: int sig_write_protect_disk(int drv, bool flag); int sig_open_disk(int, QString, int); int sig_close_disk(int); + int sig_open_hard_disk(int, QString); + int sig_close_hard_disk(int); int sig_play_tape(int ,QString); int sig_rec_tape(int, QString); int sig_close_tape(int); @@ -689,10 +747,10 @@ signals: int sig_open_quickdisk(int drv, QString path); int sig_close_cart(int drv); int sig_open_cart(int drv, QString path); - int sig_open_cdrom(QString path); - int sig_close_cdrom(void); - int sig_close_laserdisc(void); - int sig_open_laserdisc(QString path); + int sig_open_cdrom(int drv, QString path); + int sig_close_cdrom(int drv); + int sig_close_laserdisc(int drv); + int sig_open_laserdisc(int drv, 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); @@ -705,7 +763,7 @@ signals: int sig_display_osd_leds(int,bool); int sig_set_led_width(int); int sig_set_orientation_osd(int); - + int sig_set_roma_kana(bool); int quit_debugger_thread(void); int sig_quit_widgets(void);