No Description

mainwindow.h 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. #ifndef MAINWINDOW_H
  2. #define MAINWINDOW_H
  3. #include <QString>
  4. #include <QModelIndex>
  5. #include <QMainWindow>
  6. #include <QStandardItemModel>
  7. #include <QGraphicsPixmapItem>
  8. #include <QGraphicsItemGroup>
  9. #include <QGraphicsSceneMouseEvent>
  10. #include <QAbstractItemModel>
  11. #include "project.h"
  12. #include "map.h"
  13. #include "editor.h"
  14. namespace Ui {
  15. class MainWindow;
  16. }
  17. class MainWindow : public QMainWindow
  18. {
  19. Q_OBJECT
  20. public:
  21. explicit MainWindow(QWidget *parent = 0);
  22. ~MainWindow();
  23. public slots:
  24. void setStatusBarMessage(QString message, int timeout = 0);
  25. private slots:
  26. void on_action_Open_Project_triggered();
  27. void on_mapList_activated(const QModelIndex &index);
  28. void on_action_Save_Project_triggered();
  29. void openWarpMap(QString map_name, QString warp_num);
  30. void undo();
  31. void redo();
  32. void onLoadMapRequested(QString, QString);
  33. void onMapChanged(Map *map);
  34. void onMapNeedsRedrawing(Map *map);
  35. void on_action_Save_triggered();
  36. void on_tabWidget_2_currentChanged(int index);
  37. void on_action_Exit_triggered();
  38. void on_comboBox_Song_activated(const QString &arg1);
  39. void on_comboBox_Location_activated(const QString &arg1);
  40. void on_comboBox_Visibility_activated(const QString &arg1);
  41. void on_comboBox_Weather_activated(const QString &arg1);
  42. void on_comboBox_Type_activated(const QString &arg1);
  43. void on_comboBox_BattleScene_activated(const QString &arg1);
  44. void on_checkBox_ShowLocation_clicked(bool checked);
  45. void on_tabWidget_currentChanged(int index);
  46. void on_actionUndo_triggered();
  47. void on_actionRedo_triggered();
  48. void on_toolButton_deleteObject_clicked();
  49. void addNewEvent(QString);
  50. void updateSelectedObjects();
  51. void on_toolButton_Paint_clicked();
  52. void on_toolButton_Select_clicked();
  53. void on_toolButton_Fill_clicked();
  54. void on_toolButton_Dropper_clicked();
  55. void onOpenMapListContextMenu(const QPoint &point);
  56. void onAddNewMapToGroupClick(QAction* triggeredAction);
  57. void onTilesetChanged(QString);
  58. void on_action_Export_Map_Image_triggered();
  59. void on_comboBox_ConnectionDirection_currentIndexChanged(const QString &arg1);
  60. void on_spinBox_ConnectionOffset_valueChanged(int offset);
  61. void on_comboBox_ConnectedMap_currentTextChanged(const QString &mapName);
  62. void on_pushButton_AddConnection_clicked();
  63. void on_pushButton_RemoveConnection_clicked();
  64. void on_comboBox_DiveMap_currentTextChanged(const QString &mapName);
  65. void on_comboBox_EmergeMap_currentTextChanged(const QString &mapName);
  66. void on_comboBox_PrimaryTileset_activated(const QString &arg1);
  67. void on_comboBox_SecondaryTileset_activated(const QString &arg1);
  68. void on_pushButton_clicked();
  69. void on_checkBox_smartPaths_stateChanged(int selected);
  70. void on_checkBox_Visibility_clicked(bool checked);
  71. private:
  72. Ui::MainWindow *ui;
  73. QStandardItemModel *mapListModel;
  74. QList<QStandardItem*> *mapGroupsModel;
  75. Editor *editor = NULL;
  76. QIcon* mapIcon;
  77. void setMap(QString);
  78. void redrawMapScene();
  79. void loadDataStructures();
  80. void populateMapList();
  81. QString getExistingDirectory(QString);
  82. void openProject(QString dir);
  83. QString getDefaultMap();
  84. void setRecentMap(QString map_name);
  85. QStandardItem* createMapItem(QString mapName, int groupNum, int inGroupNum);
  86. void markAllEdited(QAbstractItemModel *model);
  87. void markEdited(QModelIndex index);
  88. void updateMapList();
  89. void displayMapProperties();
  90. void checkToolButtons();
  91. };
  92. enum MapListUserRoles {
  93. GroupRole = Qt::UserRole + 1, // Used to hold the map group number.
  94. TypeRole = Qt::UserRole + 2, // Used to differentiate between the different layers of the map list tree view.
  95. };
  96. #endif // MAINWINDOW_H