OSDN Git Service

5c6e71a42d1742c7c36f67bbb9a09391366704e1
[csp-qt/common_source_project-fm7.git] / source / src / qt / gui / qt_dialogs.h
1 /*
2         Skelton for retropc emulator
3
4         Author : K.Ohta <whatisthis.sowhat _at_ gmail.com>
5         Date   : 2015.01.07
6
7         [Qt dialogs]
8 */
9
10 #ifndef _CSP_QT_DIALOGS_H
11 #define _CSP_QT_DIALOGS_H
12
13 #include <QFileDialog>
14
15 #include "qt_main.h"
16
17 QT_BEGIN_NAMESPACE
18 typedef class DLL_PREFIX CSP_DiskParams : public QObject
19 {   
20 Q_OBJECT
21 Q_DISABLE_COPY(CSP_DiskParams)
22 public:
23 //   explicit CSP_DiskParams(QObject *parent = 0);
24         CSP_DiskParams(QObject *parent = 0) : QObject(parent){
25                 play = true;
26                 drive = 0;
27         }
28         ~CSP_DiskParams() {}
29         void setDrive(int num) {drive = num & 7;}
30         int getDrive(void) { return drive;}
31         void setPlay(bool num) {play = num;}
32         bool isPlaying(void) { return play;}
33         void setRecMode(bool num) {play = num; }
34         int getRecMode(void) {
35                 if(play) return 1;
36                 return 0;
37         }
38 signals:
39         int do_open_disk(int, QString);
40         int do_close_disk(int);
41         int sig_open_cart(int, QString);
42         int do_close_cart(int);
43         int do_open_cmt(bool, QString);
44         int do_close_cmt();
45         int sig_open_binary_file(int, QString, bool);
46         int do_open_quick_disk(int, QString);
47         public slots:
48         void _open_disk(const QString fname);
49         void _open_cart(const QString fname);
50         void _open_cmt(const QString fname);
51         void _open_binary(QString);
52         void _open_quick_disk(QString);
53 private:
54         int drive;
55         bool play;
56 } CSP_FileParams;
57
58 typedef class CSP_DiskDialog : public QFileDialog {
59         Q_OBJECT
60 public:
61         CSP_FileParams *param;
62         CSP_DiskDialog(QWidget *parent = 0) : QFileDialog(parent) {
63                 param = new CSP_FileParams();
64         }
65         ~CSP_DiskDialog() {
66                 delete param;
67         }
68 } CSP_DiskDialog;
69 QT_END_NAMESPACE
70
71 #endif //End.