ff7tk  0.02
Toolkit for making FF7 Tools
MateriaEditor.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // copyright 2012 - 2016 Chris Rizzitello <sithlord48@gmail.com> //
3 // //
4 // This file is part of FF7tk //
5 // //
6 // FF7tk is free software: you can redistribute it and/or modify //
7 // it under the terms of the GNU General Public License as published by //
8 // the Free Software Foundation, either version 3 of the License, or //
9 // (at your option) any later version. //
10 // //
11 // FF7tk is distributed in the hope that it will be useful, //
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of //
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
14 // GNU General Public License for more details. //
15 /****************************************************************************/
16 #ifndef MateriaEditor_H
17  #define MateriaEditor_H
18 
19 #include "qglobal.h"
20 #if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0))
21  #include <QtWidgets>
22 #else
23  #include <QtGui>
24 #endif
25 
26 /* SET FF7Materia PATH ACCORDINGLY*/
27 #include "../data/FF7Materia.h"
28 
29 class MateriaEditor : public QWidget
30 {
31  Q_OBJECT
32 public:
33  MateriaEditor(qreal Scale=1,QWidget *parent=0);
34  MateriaEditor(quint8 materia_id=0,qint32 ap=0,qreal Scale=1,QWidget *parent=0);
35  void setMateria(quint8 materia_id=0,qint32 materia_ap=0);
36  void setAP (qint32 current_ap=0);
37  void setStarsSize(int);
38  qint32 ap(void);
39  qint32 MaxAP(void);
40  qint8 id(void);
41  bool isEditable(void);
42  void setEditable(bool);
43  void setHoverStyle(QString hoverColor);
44 // qint32 raw_data(void);
45 public slots:
46  void setEditableMateriaCombo(bool enabled);
47 private:
48  //Private Functions
49  void init_display(void);
50  void init_normal_mode(void);
51  void init_compact_mode(void);
52  void init_data(void);
53  void init_connections(void);
54  void setStars(void);
55  void setName(void);
56  void setStats(void);
57  void setSkills(void);
58  void setLevel(void);
59  //Private Gui Parts.
60  QLabel * lbl_max_ap;
61  QLabel * lbl_slash;
62  QHBoxLayout *Final;
63  QComboBox *combo_type;
64  QComboBox *combo_materia;
65  QPushButton *btn_rm_materia;
66  QPushButton *btn_copy_materia;
67  QPushButton *btn_paste_materia;
68  QSpinBox * sb_ap;
69  QFrame *frm_name_type;
70  QFrame *frm_ap;
72  QPushButton *btn_star1;
73  QPushButton *btn_star2;
74  QPushButton *btn_star3;
75  QPushButton *btn_star4;
76  QPushButton *btn_star5;
77  QFrame *box_stars;
78  QGroupBox *box_skills;
79  QGroupBox * eskill_group;
80  QListWidget * eskill_list;
81  QPushButton * btn_clear_eskills;
82  QPushButton * btn_master_eskills;
83  QListWidget *list_skills;
84  QGroupBox *box_stats;
85  QGroupBox *box_status_effects;
86  QLabel *lbl_stats;
87  QListWidget *list_status;
89  QSpacerItem *v_spacer;
90  QFrame * frm_ap_stars;
91  QGridLayout *ap_stars_layout;
92  //Private Data Members
93  quint8 _id;// current id
94  qint8 buffer_id;
95  qint32 buffer_ap;
96  qint8 _level;//current level
97  qint32 _current_ap;// current ap amount
98  QLabel *lbl_materiaIcon;
99  QLabel *lbl_materiaName;
100  bool editable;
101  qreal scale;
102 private slots:
103  void btn_star1_clicked();
104  void btn_star2_clicked();
105  void btn_star3_clicked();
106  void btn_star4_clicked();
107  void btn_star5_clicked();
108  void type_changed(int new_type);
109  void materia_changed(QString new_name);
110  void remove_materia(void);
111  void copy_materia(void);
112  void paste_materia(void);
113  void sb_ap_changed(int);
114  void eskill_list_clicked(QModelIndex);
117  void editMode(void);
118 signals:
119  void ap_changed(qint32);
120  void id_changed(qint8);
121 
122 };
123 #endif //MateriaEditor
QFrame * box_stars
Definition: MateriaEditor.h:77
QLabel * lbl_materiaName
Definition: MateriaEditor.h:99
QLabel * lbl_materiaIcon
Definition: MateriaEditor.h:98
QPushButton * btn_master_eskills
Definition: MateriaEditor.h:82
QGroupBox * box_status_effects
Definition: MateriaEditor.h:85
QListWidget * list_status
Definition: MateriaEditor.h:87
QLabel * lbl_slash
Definition: MateriaEditor.h:61
void setStarsSize(int)
QLabel * lbl_stats
Definition: MateriaEditor.h:86
QPushButton * btn_copy_materia
Definition: MateriaEditor.h:66
QPushButton * btn_star3
Definition: MateriaEditor.h:74
void init_normal_mode(void)
QFrame * frm_ap
Definition: MateriaEditor.h:70
qint32 MaxAP(void)
QLabel * lbl_max_ap
Definition: MateriaEditor.h:60
void setStats(void)
QGroupBox * eskill_group
Definition: MateriaEditor.h:79
void btn_star5_clicked()
QFrame * frm_skill_status
Definition: MateriaEditor.h:71
QComboBox * combo_type
Definition: MateriaEditor.h:63
QPushButton * btn_star1
Definition: MateriaEditor.h:72
void copy_materia(void)
void sb_ap_changed(int)
void btn_star2_clicked()
QFrame * frm_ap_stars
Definition: MateriaEditor.h:90
bool isEditable(void)
void materia_changed(QString new_name)
qint32 buffer_ap
Definition: MateriaEditor.h:95
void type_changed(int new_type)
void setStars(void)
void setHoverStyle(QString hoverColor)
void init_display(void)
QPushButton * btn_clear_eskills
Definition: MateriaEditor.h:81
QGroupBox * box_skills
Definition: MateriaEditor.h:78
void btn_star3_clicked()
void id_changed(qint8)
QPushButton * btn_star2
Definition: MateriaEditor.h:73
void editMode(void)
void paste_materia(void)
QGridLayout * ap_stars_layout
Definition: MateriaEditor.h:91
qint32 ap(void)
void setEditable(bool)
void setMateria(quint8 materia_id=0, qint32 materia_ap=0)
void setSkills(void)
QSpacerItem * v_spacer
Definition: MateriaEditor.h:89
QPushButton * btn_paste_materia
Definition: MateriaEditor.h:67
QListWidget * eskill_list
Definition: MateriaEditor.h:80
void setAP(qint32 current_ap=0)
QGroupBox * box_stats
Definition: MateriaEditor.h:84
FF7Materia * data
Definition: MateriaEditor.h:88
QPushButton * btn_star4
Definition: MateriaEditor.h:75
QPushButton * btn_star5
Definition: MateriaEditor.h:76
void btn_star1_clicked()
void setLevel(void)
qint8 id(void)
void init_data(void)
void btn_star4_clicked()
void init_compact_mode(void)
qint32 _current_ap
Definition: MateriaEditor.h:97
QSpinBox * sb_ap
Definition: MateriaEditor.h:68
void init_connections(void)
void btn_clear_eskill_clicked()
QHBoxLayout * Final
Definition: MateriaEditor.h:62
void ap_changed(qint32)
void setName(void)
QPushButton * btn_rm_materia
Definition: MateriaEditor.h:65
QComboBox * combo_materia
Definition: MateriaEditor.h:64
QFrame * frm_name_type
Definition: MateriaEditor.h:69
QListWidget * list_skills
Definition: MateriaEditor.h:83
MateriaEditor(qreal Scale=1, QWidget *parent=0)
void remove_materia(void)
void eskill_list_clicked(QModelIndex)
void setEditableMateriaCombo(bool enabled)
void btn_master_eskill_clicked()