blob: 5d4cfe5d3bca574934cc9315e539622e5b90ef0b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QFileDialog>
#include <QSettings>
#include <QDebug>
#include <QPixmap>
#include "mygraphicsscene.h"
#include "ui_mainwindow.h"
#define APP_NAME QString("Airport Map Editor")
#define APP_VERSION_STRING QString("0.3")
#define APP_FULL_NAME APP_NAME + " " + APP_VERSION_STRING
#define TILE_SIZE (64)
#define DATA_HEADER_SIZE (0x3F)
#define TILE_MIRROR_FLAG (0x80)
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
void closeEvent(QCloseEvent*);
private:
bool checkFile(QFile &f, QFile::OpenModeFlag flags = QFile::ReadOnly);
void appSettings(void);
void loadTilesetData(void);
void loadBuildingData(void);
void parseMapData(QDataStream &ds, const QPixmap &tileSet);
Ui::MainWindow ui;
QString _last_dir;
MyGraphicsScene gscene;
int level_size;
QByteArray map_buffer;
int selected_item;
QHash<int, QString> tilesetData;
QList<QGraphicsTextItem*> textItems;
private slots:
void loadMap(void);
void onCreateMap(void);
void processMapFile(const QByteArray &);
void onMapItemClicked(QPointF);
void onNoItemSelected(void);
void onListItemSelected(void);
void onSaveMap(void);
void onShowNumbers(int);
void onAirportNameModified(QString);
void showError(const QString& error);
};
#endif // MAINWINDOW_H
|