-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTable.h
More file actions
69 lines (52 loc) · 1.47 KB
/
Table.h
File metadata and controls
69 lines (52 loc) · 1.47 KB
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
64
65
66
67
68
69
#ifndef TABLE_H
#define TABLE_H
#include <SFML/Graphics.hpp>
// Struct for TablePosition to group width and height
struct TablePosition {
float x;
float y;
};
// Struct for TableDimension to group width and height
struct TableDimension {
float w;
float h;
};
class Table {
private:
sf::RectangleShape rectangle;
std::string tableID;
bool availability;
bool messagePrinted;
public:
// Default Constructor
Table();
// Overloaded Constructor
Table(std::string tableID, TablePosition tablePosition, TableDimension tableDimension);
// Method to draw the Table on the window
void draw(sf::RenderWindow &window);
// Method for Click Handling
bool isClicked(float mouseX, float mouseY);
// Get & Set tableID
std::string getTableID();
void setTableID(std::string &id);
// Getter & Setter for availability status
bool isAvailable();
void setAvailability(bool status);
// Getter for the Position of the Table
sf::Vector2f getPosition() const;
// Get Table width
float getWidth() const;
// Get Table height
float getHeight() const;
// Get Table Global Bounds
sf::FloatRect getGlobalBounds() const;
// Method to reset the message printed status
void resetMessageStatus();
// Getter for messagePrinted status
bool isMessagePrinted() const;
// Setter for messagePrinted status
void setMessagePrinted(bool status);
// Destructor
~Table();
};
#endif