00001 #ifndef ACTIONSDIALOG_H
00002 #define ACTIONSDIALOG_H
00003
00004 #include <QTableWidget>
00005 #include <QTableWidgetItem>
00006 #include <QHeaderView>
00007 #include <QVariant>
00008 #include <QApplication>
00009 #include <QButtonGroup>
00010 #include <QList>
00011 #include <QAction>
00012 #include <QDialog>
00013 #include <QDialogButtonBox>
00014 #include <QGridLayout>
00015 #include <QStringList>
00016 #include <QPushButton>
00017 #include <QSettings>
00018 #include <QScopedPointer>
00019 #include <QDebug>
00020
00021 namespace Ui {
00022 class ActionsDialog;
00023 }
00024
00025 class ActionsDialog : public QDialog
00026 {
00027 Q_OBJECT
00028
00029 public:
00030 explicit ActionsDialog(QList<QAction *> actions,
00031 QWidget *parent = 0);
00032 virtual ~ActionsDialog();
00033
00034 protected:
00035 void changeEvent(QEvent *e);
00036
00037 protected slots:
00038 void accept();
00039
00040 private slots:
00041 void recordAction(int curr_row, int curr_col, int prev_row,
00042 int prev_col);
00043 void validateAction(int row, int col);
00044 void mSaveShortcuts();
00045 void buttonBoxClicked(QAbstractButton *optionsDialogPushButton);
00046
00047 private:
00048 void setupUi();
00049 void retranslateUi();
00050 void setFallbacksEnabled(bool enabled);
00051
00052 QString oldAccelText;
00053 QList<QAction *> actionsList;
00054 QScopedPointer<QSettings> settings;
00055 QList<QAction *> m_actions;
00056
00057
00058 QGridLayout *gridLayout;
00059 QTableWidget *TableWidgetActions;
00060 QDialogButtonBox *buttonBox;
00061 };
00062
00063 #endif // ACTIONSDIALOG_H