1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 10:18:11 +00:00
serenity/Applications/Calculator/CalculatorWidget.h
2019-09-21 15:25:08 +02:00

30 lines
597 B
C++

#pragma once
#include "Calculator.h"
#include "Keypad.h"
#include <AK/Vector.h>
#include <LibGUI/GWidget.h>
class GTextBox;
class GButton;
class GLabel;
class CalculatorWidget final : public GWidget {
C_OBJECT(CalculatorWidget)
public:
explicit CalculatorWidget(GWidget*);
virtual ~CalculatorWidget();
private:
void add_button(GButton&, Calculator::Operation);
void add_button(GButton&, int);
void add_button(GButton&);
void update_display();
Calculator m_calculator;
Keypad m_keypad;
GTextBox* m_entry { nullptr };
ObjectPtr<GLabel> m_label;
};