3 * Modified by K.Ohta <whatisthis.sowhat _at_ gmail.com>
4 * Please use this file as templete.
7 #ifndef _CSP_QT_MAINWIDGET_BASE_H
8 #define _CSP_QT_MAINWIDGET_BASE_H
12 //#include <QApplication>
13 #include <QMainWindow>
16 #include <QStringList>
22 #include "menu_flags.h"
23 #include "csp_logger.h"
25 class DLL_PREFIX_I MOVIE_SAVER;
28 #define _MAX_DEBUGGER 8
31 CSP_MAINWIDGET_SAVE_MOVIE_STOP = 0,
32 CSP_MAINWIDGET_SAVE_MOVIE_15FPS = 1,
33 CSP_MAINWIDGET_SAVE_MOVIE_24FPS,
34 CSP_MAINWIDGET_SAVE_MOVIE_30FPS,
35 CSP_MAINWIDGET_SAVE_MOVIE_60FPS,
36 CSP_MAINWIDGET_SAVE_MOVIE_END,
39 #define MAX_RENDER_PLATFORMS 12
42 RENDER_PLATFORMS_OPENGL3_MAIN = 0,
43 RENDER_PLATFORMS_OPENGL2_MAIN,
44 RENDER_PLATFORMS_OPENGL_CORE,
45 RENDER_PLATFORMS_OPENGL_ES_2,
52 #define SET_ACTION_SINGLE(__action,__checkable,__enabled,__cfgif) \
53 __action = new Action_Control(this, using_flags); \
54 __action->setCheckable(__checkable); \
55 __action->setEnabled(__enabled); \
56 __action->setChecked(false); \
58 __action->setChecked(true); \
61 #define SET_ACTION_CHECKABLE_SINGLE_CONNECT(__menu,__action,__objname,__cond,__signal1,__slot1) \
62 __action = new Action_Control(this, using_flags); \
63 __action->setObjectName(QString::fromUtf8(__objname)); \
64 __action->setCheckable(true); \
65 if(__cond) __action->setChecked(true); \
66 connect(__action, __signal1, this, __slot1); \
67 __menu->addAction(__action);
70 #define SET_HELP_MENUENTRY(__menu,__action,__objname,__txtname) \
71 __action = new Action_Control(this, using_flags); \
72 __action->setObjectName(QString::fromUtf8(__objname)); \
73 __action->do_set_string(QString::fromUtf8(__txtname)); \
74 connect(__action, SIGNAL(triggered()), __action, SLOT(do_send_string())); \
75 connect(__action, SIGNAL(sig_send_string(QString)), this, SLOT(do_browse_document(QString))); \
76 __menu->addAction(__action);
79 #define SET_ACTION_CONTROL_ARRAY(__start,__end, \
80 __parent,__using_flags, \
82 __checkable,__enabled,__cnf, \
85 for(int _i = __start; _i < __end; _i++) { \
86 __action[_i] = new Action_Control(__parent, __using_flags); \
87 __action[_i]->setCheckable(__checkable); \
88 __action[_i]->setEnabled(__enabled); \
89 __action[_i]->binds->setValue1(_i); \
90 __menu->addAction(__action[_i]); \
91 if(p_config->__cnf[_i][0]) __action[_i]->setChecked(true); \
92 connect(__action[_i], __signal1, __action[_i], __slot1); \
93 connect(__action[_i], __signal2, this, __slot2); \
102 class QGraphicsScene;
111 class QGraphicsEllipseItem;
117 class Ui_SoundDialog;
119 class Action_Control;
120 class Menu_MetaClass;
123 class Menu_CartClass;
126 class Menu_BinaryClass;
127 class Menu_BubbleClass;
128 class Menu_CompactDiscClass;
129 class Menu_LaserdiscClass;
132 class EmuThreadClass;
133 class DLL_PREFIX Ui_MainWindowBase : public QMainWindow
141 QIcon RecordSoundIcon;
144 QIcon VolumeMutedIcon;
147 QIcon VolumeHighIcon;
150 QActionGroup *actionGroup_CpuSpeed;
151 class Action_Control *actionSpeed_x1;
152 class Action_Control *actionSpeed_x2;
153 class Action_Control *actionSpeed_x4;
154 class Action_Control *actionSpeed_x8;
155 class Action_Control *actionSpeed_x16;
156 class Action_Control *actionSpeed_FULL;
157 class Action_Control *actionPaste_from_Clipboard;
158 class Action_Control *actionStop_Pasting;
159 QMenu *menuSave_State;
160 QMenu *menuLoad_State;
163 QActionGroup *actionGroup_Stretch;
164 QActionGroup *actionGroup_SetRenderPlatform;
165 QActionGroup *actionGroup_RotateType;
166 class Action_Control *action_ScreenSeparateThread;
167 class Action_Control *action_ScreenUseOSD;
168 class Action_Control *actionZoom;
169 class Action_Control *actionDisplay_Mode;
170 class Action_Control *actionScanLine;
171 class Action_Control *actionGLScanLineHoriz;
172 class Action_Control *actionGLScanLineVert;
174 class Action_Control *actionRotate[4];
175 class Action_Control *actionCRT_Filter;
176 class Action_Control *actionOpenGL_Filter;
177 class Action_Control *actionDot_by_Dot;
178 class Action_Control *actionReferToX_Display;
179 class Action_Control *actionReferToY_Display;
180 class Action_Control *actionFill_Display;
181 QActionGroup *actionGroup_ScreenSize;
182 QActionGroup *actionGroup_RenderMode;
185 QActionGroup *actionGroup_Sound_Freq;
186 QActionGroup *actionGroup_Sound_Latency;
187 //class Action_Control *actionSoundCMT;
188 class Action_Control *action_VolumeDialog;
189 class Action_Control *actionSoundPlayTape;
190 class Action_Control *actionSoundStrictRendering;
191 class Action_Control *action_SoundFilesFDD;
192 class Action_Control *action_SoundFilesRelay;
193 //QMenu *menuLogToConsole;
194 //QMenu *menuLogToSyslog;
195 QMenu *menuDevLogToConsole;
196 QMenu *menuDevLogToSyslog;
197 QMenu *menu_SetRenderPlatform;
200 QMenu *menu_DispVirtualMedias;
201 QActionGroup *actionGroup_DispVirtualMedias;
202 class Action_Control *action_DispVirtualMedias[5];
203 class Action_Control *action_FocusWithClick;
204 class Action_Control *action_UseRomaKana;
205 class Action_Control *action_NumPadEnterAsFullkey;
206 class Action_Control *action_Logging_FDC;
207 class Action_Control *action_LogToSyslog;
208 class Action_Control *action_LogToConsole;
209 class Action_Control *action_LogRecord;
210 class Action_Control *action_DevLogToSyslog[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1];
211 class Action_Control *action_DevLogToConsole[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1];
212 class Action_Control *action_DevLogRecord[CSP_LOG_TYPE_VM_DEVICE_END - CSP_LOG_TYPE_VM_DEVICE_0 + 1];
214 class Action_Control *action_SetupJoystick;
215 class Action_Control *action_SetupKeyboard;
216 class Action_Control *action_LogView;
217 class Action_Control *action_PrintCpuStatistics;
219 QMenu *menu_EmulateCursorAs;
220 QActionGroup *actionGroup_EmulateCursorAs;
221 class Action_Control *action_EmulateCursorAs[4];
224 class Action_Control *actionHelp_README_BIOS;
225 class Action_Control *actionHelp_README;
226 class Action_Control *actionHelp_README_QT;
227 class Action_Control *actionHelp_README_MR_TANAM;
228 class Action_Control *actionHelp_README_Artane;
229 class Action_Control *actionHelp_README_Umaiboux;
230 class Action_Control *actionHelp_README_FAQ;
231 class Action_Control *actionHelp_README_FAQ_JP;
232 class Action_Control *actionHelp_README_FM7;
233 class Action_Control *actionHelp_README_FM7_JP;
234 class Action_Control *actionHelp_History;
235 class Action_Control *actionHelp_History_Relnote;
236 class Action_Control *actionHelp_History_ChangeLog;
237 class Action_Control *actionHelp_History_MR_TANAM;
238 class Action_Control *actionHelp_License;
239 class Action_Control *actionHelp_License_JP;
243 bool flags_led_bak[32];
244 QGraphicsView *led_graphicsView;
245 QGraphicsScene *led_gScene;
246 QGraphicsEllipseItem *led_leds[32];
247 uint32_t osd_led_data;
251 void ConfigCpuSpeed(void);
252 void ConfigControlMenu(void);
253 void connectActions_ControlMenu(void);
254 void ConfigFloppyMenu(void);
255 void ConfigHardDiskMenu(void);
256 void ConfigSoundMenu(void);
257 void CreateSoundMenu(void);
259 void CreateEmulatorMenu(void);
260 void ConfigEmulatorMenu(void);
262 void CreateFloppyMenu(int drv, int drv_base);
263 void CreateFloppyPulldownMenu(int drv);
264 void ConfigFloppyMenuSub(int drv);
266 void CreateHardDiskMenu(int drv, int drv_base);
267 void CreateHardDiskPulldownMenu(int drv);
268 void ConfigHardDiskMenuSub(int drv);
270 void CreateBubbleMenu(int drv, int drv_base);
271 void CreateBubblePulldownMenu(int drv);
272 void ConfigBubbleMenuSub(int drv);
273 void ConfigBubbleMenu(void);
274 virtual int GetBubbleBankNum(int drv) { return 0; }
275 virtual int GetBubbleCurrentBankNum(int drv) { return 0; }
276 virtual bool GetBubbleCasetteIsProtected(int drv) { return false; }
277 virtual QString GetBubbleB77FileName(int drv) { return QString::fromUtf8(""); }
278 virtual QString GetBubbleB77BubbleName(int drv, int num) { return QString::fromUtf8(""); }
280 void CreateCMTMenu(int drive, int drv_base);
281 void ConfigCMTMenu(void);
283 void ConfigQuickDiskMenu(void);
284 void ConfigQuickDiskMenuSub(int drv);
285 void CreateQuickDiskPulldownMenu(int drv);
286 void CreateQuickDiskMenu(int drv, int drv_base);
288 void CreateCartMenu(int drv, int drv_base);
289 void CreateCartPulldownMenu(int drv);
290 void ConfigCartMenuSub(int drv);
291 void ConfigCartMenu(void);
293 void CreateCDROMMenu(int drv, int drv_base);
294 void ConfigCDROMMenu(void);
295 void ConfigCDROMMenuSub(void);
296 void CreateCDROMPulldownMenu(void);
298 void CreateLaserdiscMenu(int drv, int drv_base);
299 void ConfigLaserdiscMenu(void);
300 void ConfigLaserdiscMenuSub(void);
301 void CreateLaserdiscPulldownMenu(void);
303 void ConfigBinaryMenu(void);
304 void ConfigScreenMenu(void);
305 void ConfigScreenMenu_List(void);
306 void CreateScreenMenu(void);
307 void ConfigDeviceType(void);
308 void ConfigKeyboardType(void);
309 void ConfigJoystickType(void);
310 void ConfigMouseType(void);
311 void ConfigDriveType(void);
312 void ConfigSoundDeviceType(void);
313 void ConfigPrinterType(void);
314 void ConfigMonitorType(void);
317 int Calc_OSD_Wfactor(void);
319 USING_FLAGS *using_flags;
321 CSP_Logger *csp_logger;
322 QMainWindow *MainWindow;
323 QApplication *CoreApplication;
325 GLDrawClass *graphicsView;
326 CSP_DockDisks *driveData;
327 QWidget *pCentralWidget;
328 QVBoxLayout *pCentralLayout;
329 QStatusBar *statusbar;
332 QTimer *statusUpdateTimer;
333 QTimer *ledUpdateTimer;
335 int screen_mode_count;
337 QStringList listCARTs[8];
338 QStringList listQDs[8];
339 QStringList listCMT[8];
340 bool cmt_write_protect[8];
341 QStringList listCDROM[8];
342 QStringList listLaserdisc[8];
343 QStringList listBINs[8];
344 QStringList listFDs[16];
345 QStringList listHDDs[16];
347 QStringList listD88[16];
348 QStringList listBubbles[8];
349 QStringList listB77[8];
352 QActionGroup *actionGroup_BootMode;
353 QActionGroup *actionGroup_CpuType;
354 class Action_Control *actionReset;
355 class Action_Control *actionSpecial_Reset;
356 class Action_Control *actionExit_Emulator;
357 class Action_Control *actionCpuType[8];
358 class Action_Control *actionBootMode[8];
359 class Action_Control *actionDebugger[_MAX_DEBUGGER];
360 class Action_Control *actionSave_State[10];
361 class Action_Control *actionLoad_State[10];
362 //class Action_Control *actionClose_Debuggers;
363 class Action_Control *actionScreenSize[32];
364 class Action_Control *actionAbout;
365 class Action_Control *actionMouseEnable;
366 class Action_Control *actionHelp_AboutQt;
369 class Action_Control *actionCapture_Screen;
370 class Action_Control *action_SetRenderMode[8];
372 class Action_Control *action_Freq[8];
373 class Action_Control *action_Latency[6];
374 class Action_Control *actionStart_Record;
375 class Action_Control *actionStop_Record;
378 QActionGroup *actionGroup_DeviceType;
379 QActionGroup *actionGroup_KeyboardType;
380 QActionGroup *actionGroup_JoystickType;
381 QActionGroup *actionGroup_MouseType;
382 QActionGroup *actionGroup_DriveType;
383 QActionGroup *actionGroup_SoundDevice;
384 QActionGroup *actionGroup_PrintDevice;
385 QMenu *menuDeviceType;
386 QMenu *menuKeyboardType;
387 QMenu *menuJoystickType;
388 QMenu *menuMouseType;
389 QMenu *menuDriveType;
390 QMenu *menuSoundDevice;
391 QMenu *menuPrintDevice;
392 class Action_Control *actionDeviceType[16];
393 class Action_Control *actionKeyboardType[16];
394 class Action_Control *actionJoystickType[16];
395 class Action_Control *actionMouseType[8];
396 class Action_Control *actionDriveType[8];
397 class Action_Control *actionSoundDevice[32]; //
398 class Action_Control *actionPrintDevice[16];
399 class Action_Control *action_SetRenderPlatform[MAX_RENDER_PLATFORMS];
401 class Action_Control *actionStart_Record_Movie;
402 class Action_Control *actionStop_Record_Movie;
403 class Action_Control *action_SetupMovie; // 15, 24, 30, 60
405 QMenu *menuMonitorType;
406 QActionGroup *actionGroup_MonitorType;
407 Action_Control *actionMonitorType[16];
412 QMenu *menuCopy_Paste;
413 QMenu *menuCpu_Speed;
416 QMenu *menuStretch_Mode;
417 QMenu *menuScreenSize;
418 QMenu *menuScreen_Render;
419 QMenu *menuScreen_Rotate;
424 QMenu *menuOutput_Frequency;
425 QMenu *menuSound_Latency;
428 QMenu *menuRecord_sound;
429 QMenu *menuRecord_as_movie;
432 QMenu *menuHelp_Readme;
433 QMenu *menuHelp_Histories;
434 Menu_FDClass *menu_fds[16];
435 Menu_QDClass *menu_QDs[8];
436 Menu_CMTClass *menu_CMT[8];
437 Menu_HDDClass *menu_hdds[16];
438 Menu_CompactDiscClass *menu_CDROM[8];
439 Menu_LaserdiscClass *menu_Laserdisc[8];
440 Menu_CartClass *menu_Cart[8];
441 Menu_BinaryClass *menu_BINs[8];
442 Menu_BubbleClass *menu_bubbles[8];
444 QWidget *dummyStatusArea1;
445 QLabel *messagesStatusBar;
446 QWidget *dummyStatusArea2;
448 QLabel *cdrom_StatusBar;
449 QString osd_str_cdrom;
451 QLabel *laserdisc_StatusBar;
452 QString osd_str_laserdisc;
453 QLabel *bubble_StatusBar[8];
454 QString osd_str_bubble[8];
456 QClipboard *ClipBoard;
458 EmuThreadClass *hRunEmu;
459 class DrawThreadClass *hDrawEmu;
460 class JoyThreadClass *hRunJoy;
461 class MOVIE_SAVER *hSaveMovieThread;
464 bool ui_retranslate_completed;
467 void ConfigCPUTypes(int num);
468 void ConfigCPUBootMode(int num);
470 void retranslateControlMenu(const char *SpecialResetTitle, bool WithSpecialReset);
471 void retranslateFloppyMenu(int drv, int basedrv);
472 void retranslateFloppyMenu(int drv, int basedrv, QString specName);
473 void retranslateHardDiskMenu(int drv, int basedrv);
474 void retranslateHardDiskMenu(int drv, int basedrv, QString specName);
475 void retranslateBubbleMenu(int drv, int basedrv);
476 void retranslateCMTMenu(int drive);
477 void retranslateQuickDiskMenu(int drv, int basedrv);
479 void retranslateCDROMMenu(void);
480 void retranslateLaserdiscMenu(void);
481 void retranslateScreenMenu(void);
482 void retranslateMachineMenu(void);
483 void retranslateBinaryMenu(int drv, int basedrv);
484 void retranslateSoundMenu(void);
486 Ui_MainWindowBase(USING_FLAGS *p, CSP_Logger *logger, QWidget *parent = 0);
487 ~Ui_MainWindowBase();
489 // Initializer : using from InitContext.
490 void setCoreApplication(QApplication *p);
491 void createContextMenu(void);
493 virtual void set_window(int mode);
494 // Belows are able to re-implement.
495 virtual void retranslateUi(void);
496 virtual void retranslateUI_Help(void);
497 virtual void retranslateCartMenu(int drv, int basedrv);
498 virtual void retranslateVolumeLabels(Ui_SoundDialog *);
499 virtual void retranslateEmulatorMenu(void);
500 virtual void retranselateUi_Depended_OSD(void);
502 virtual void initStatusBar(void);
504 void StopEmuThread(void);
505 virtual void LaunchEmuThread(void);
507 virtual void StopJoyThread(void);
508 virtual void LaunchJoyThread(void);
510 virtual void OnWindowMove(void);
511 virtual void OnWindowRedraw(void);
513 // Getting important widgets.
514 QMainWindow *getWindow(void) { return MainWindow; }
515 QMenuBar *getMenuBar(void) { return menubar;}
516 GLDrawClass *getGraphicsView(void) { return graphicsView; }
517 QStatusBar *getStatusBar(void) { return statusbar;}
518 QImage *getBitmapImage(void) { return bitmapImage; }
520 virtual void OnMainWindowClosed(void);
521 // Basic Action Definition
522 void OnCpuPower(int mode);
523 bool get_wave_shaper(int drive);
524 bool get_direct_load_mzt(int drive);
525 virtual bool GetPowerState(void);
526 void set_logger(CSP_Logger *logger) { csp_logger = logger; }
529 void delete_emu_thread(void);
530 void doChangeMessage_EmuThread(QString str);
531 void do_emu_update_config(void);
532 virtual void delete_joy_thread(void);
533 virtual void do_set_window_title(QString s);
534 virtual void redraw_status_bar(void);
535 virtual void redraw_leds(void);
536 void do_recv_data_led(quint32 d);
538 void do_update_volume(int level);
539 void set_screen_aspect(int num);
540 void set_screen_size(int w, int h);
541 void do_set_screen_rotate(int type);
543 void OnSpecialReset(void);
544 virtual void do_set_mouse_enable(bool flag);
545 virtual void do_toggle_mouse(void);
546 void do_set_sound_device(int);
547 void do_emu_update_volume_balance(int num, int level);
548 void do_emu_update_volume_level(int num, int level);
549 void rise_log_viewer(void);
550 void rise_volume_dialog(void);
551 void rise_joystick_dialog(void);
552 void rise_keyboard_dialog(void);
553 virtual void rise_movie_dialog(void);
554 void do_stop_saving_movie(void);
555 void do_start_saving_movie(void);
556 void do_set_state_saving_movie(bool state);
557 void set_osd_virtual_media(bool f);
559 virtual void OnOpenDebugger(int n);
560 virtual void OnCloseDebugger(void);
561 void doBeforeCloseMainWindow(void);
562 void set_gl_crt_filter(bool);
563 void set_cpu_power(int pw) {
566 virtual void on_actionExit_triggered();
567 void do_emu_full_speed(bool f);
568 void OnStartAutoKey(void);
569 void OnStopAutoKey(void);
570 void eject_cart(int);
571 void set_recent_cart(int, int);
573 int set_recent_cdrom(int drv, int num);
574 void do_eject_cdrom(int drv);
575 void do_open_cdrom(int drv, QString path);
577 int set_recent_laserdisc(int drv, int num);
578 void do_eject_laserdisc(int drv);
579 void do_open_laserdisc(int drv, QString path);
581 void CreateBinaryMenu(int drv, int drv_base);
582 void CreateBinaryPulldownMenu(int drv);
583 void ConfigBinaryMenuSub(int drv);
584 int set_recent_binary_load(int drv, int num);
585 int set_recent_binary_save(int drv, int num);
586 void _open_binary_load(int drive, const QString fname);
587 void _open_binary_save(int drive, const QString fname);
589 void open_quick_disk_dialog(int drv);
590 int set_recent_quick_disk(int drive, int num);
591 int write_protect_Qd(int drv, bool flag);
592 void _open_quick_disk(int drv, const QString fname);
593 void eject_Qd(int drv);
596 virtual void _open_disk(int drv, const QString fname);
597 void _open_cart(int drv, const QString fname);
598 void eject_cmt(int drv);
599 void do_change_boot_mode(int mode);
600 void do_change_cpu_type(int mode);
601 void do_write_protect_cmt(int drv, bool flag);
602 int set_recent_cmt(int drv, int num);
603 void set_wave_shaper(int drive, bool f);
604 void set_direct_load_from_mzt(int drive, bool f);
605 void do_open_write_cmt(int drive, QString);
606 void do_open_read_cmt(int drive, QString path);
608 void do_push_play_tape(int drive);
609 void do_push_stop_tape(int drive);
610 void do_push_fast_forward_tape(int drive);
611 void do_push_rewind_tape(int drive);
612 void do_push_apss_forward_tape(int drive);
613 void do_push_apss_rewind_tape(int drive);
614 void set_cmt_sound(bool);
616 int write_protect_fd(int drv, bool flag);
617 void eject_fd(int drv);
618 virtual void do_update_recent_disk(int);
619 virtual int set_d88_slot(int drive, int num);
620 virtual int set_recent_disk(int, int);
622 virtual void do_update_recent_hard_disk(int);
623 virtual void _open_hard_disk(int drv, const QString fname);
624 void eject_hard_disk(int drv);
625 virtual int set_recent_hard_disk(int, int);
627 int write_protect_bubble(int drv, bool flag);
629 int set_b77_slot(int drive, int num);
630 void do_update_recent_bubble(int drv);
631 int set_recent_bubble(int drv, int num);
632 void _open_bubble(int drv, const QString fname);
633 void eject_bubble(int drv);
636 void start_record_sound(bool rec);
638 void set_latency(int);
639 void set_sound_device(int);
640 void do_set_sound_strict_rendering(bool f);
641 void do_set_sound_play_tape(bool f);
643 void set_monitor_type(int);
644 void message_status_bar(QString);
645 void resize_statusbar(int w, int h);
646 virtual void do_release_emu_resources(void);
647 virtual void set_window_title();
648 void set_device_type(int);
649 void set_mouse_type(int);
650 void set_keyboard_type(int);
651 void set_joystick_type(int);
652 void set_drive_type(int);
653 void set_scan_line(bool);
654 void set_gl_scan_line_vert(bool);
655 void set_gl_scan_line_horiz(bool);
656 void set_printer_device(int);
657 void do_show_about(void);
658 void do_browse_document(QString);
659 void set_dipsw(int num, bool flag);
660 bool get_dipsw(int num);
662 void do_set_sound_files_fdd(bool f);
663 void do_set_sound_files_relay(bool f);
664 void do_set_conslog(bool);
665 void do_set_syslog(bool);
666 void do_update_device_node_name(int id, const _TCHAR *name);
667 void do_set_dev_log_to_console(int id, bool f);
668 void do_set_dev_log_to_syslog(int id, bool f);
669 void do_set_roma_kana(bool f);
670 void do_set_numpad_enter_as_fullkey(bool f);
671 void do_set_render_mode_std(void);
672 void do_set_render_mode_tv(void);
673 void do_select_render_platform(int num);
674 void do_set_window_focus_type(bool flag);
676 void do_set_visible_virtual_media_none();
677 void do_set_visible_virtual_media_upper();
678 void do_set_visible_virtual_media_lower();
679 void do_set_visible_virtual_media_left();
680 void do_set_visible_virtual_media_right();
682 void do_set_emulate_cursor_as(int num);
683 void do_set_logging_fdc(bool onoff);
684 void do_set_separate_thread_draw(bool f);
685 void do_set_print_cpu_statistics(bool flag);
687 void do_set_state_log_to_record(bool f);
688 void do_set_state_log_to_console(bool f);
689 void do_set_state_log_to_syslog(bool f);
692 int message_changed(QString);
693 int quit_emu_thread();
694 int call_joy_thread(EMU *);
695 int quit_joy_thread();
696 int quit_draw_thread();
697 int quit_emulator_all();
698 int sig_quit_movie_thread();
699 int sig_stop_saving_movie(void);
700 int sig_start_saving_movie(void);
701 int on_boot_mode(int);
702 int on_cpu_type(int);
703 int on_cpu_power(int);
704 int on_open_debugger(int);
705 int on_insert_fd(int);
706 int on_eject_fd(int);
707 int do_open_disk(int, QString);
710 int sig_quit_all(void);
711 int sig_vm_reset(void);
712 int sig_vm_specialreset(void);
713 int sig_check_grab_mouse(bool);
714 int sig_resize_uibar(int, int);
715 int sig_resize_screen(int, int);
716 int sig_update_screen(void);
717 int sig_emu_update_config(void);
718 int sig_emu_start_rec_sound(void);
719 int sig_emu_stop_rec_sound(void);
720 int sig_emu_set_display_size(int, int, int, int);
721 int sig_emu_update_volume_level(int, int);
722 int sig_emu_update_volume_balance(int, int);
724 int sig_resize_osd(int);
726 int sig_write_protect_disk(int drv, bool flag);
727 int sig_open_disk(int, QString, int);
728 int sig_close_disk(int);
729 int sig_open_hard_disk(int, QString);
730 int sig_close_hard_disk(int);
731 int sig_play_tape(int ,QString);
732 int sig_rec_tape(int, QString);
733 int sig_close_tape(int);
734 int sig_cmt_push_play(int);
735 int sig_cmt_push_stop(int);
736 int sig_cmt_push_fast_forward(int);
737 int sig_cmt_push_fast_rewind(int);
738 int sig_cmt_push_apss_forward(int);
739 int sig_cmt_push_apss_rewind(int);
740 int sig_write_protect_quickdisk(int drv, bool flag);
741 int sig_close_quickdisk(int drv);
742 int sig_open_quickdisk(int drv, QString path);
743 int sig_close_cart(int drv);
744 int sig_open_cart(int drv, QString path);
745 int sig_open_cdrom(int drv, QString path);
746 int sig_close_cdrom(int drv);
747 int sig_close_laserdisc(int drv);
748 int sig_open_laserdisc(int drv, QString path);
749 int sig_load_binary(int drv, QString path);
750 int sig_save_binary(int drv, QString path);
751 int sig_write_protect_bubble(int, bool);
752 int sig_open_bubble(int, QString , int);
753 int sig_close_bubble(int);
754 int sig_led_update(QRectF);
755 int sig_start_auto_key(QString);
756 int sig_stop_auto_key(void);
757 int sig_set_display_osd(bool);
758 int sig_display_osd_leds(int,bool);
759 int sig_set_led_width(int);
760 int sig_set_orientation_osd(int);
761 int sig_set_roma_kana(bool);
762 int quit_debugger_thread(void);
763 int sig_quit_widgets(void);
765 int sig_load_state(QString);
766 int sig_save_state(QString);