GTK+/Kalkulator 0.0.1 - gui.hpp
< GTK+
#include "kalkulator.cpp"
class GUIKalkulator: public Kalkulator
{
private:
GtkWidget *mainwindow;
GtkWidget *vbox;
GtkWidget *table;
GtkWidget *entry;
GtkWidget *button1;
GtkWidget *button2;
GtkWidget *button3;
GtkWidget *button4;
GtkWidget *button5;
GtkWidget *button6;
GtkWidget *button7;
GtkWidget *button8;
GtkWidget *button9;
GtkWidget *button0;
GtkWidget *buttoncomma;
GtkWidget *buttonback;
GtkWidget *buttonclear;
GtkWidget *buttonadd;
GtkWidget *buttonsub;
GtkWidget *buttonmulti;
GtkWidget *buttondiv;
GtkWidget *buttonresult;
GtkWidget *buttonsigned;
GtkWidget *buttonaddmem;
GtkWidget *comboreadmem;
guint combocount;
GtkWidget *buttonclearmem;
GtkWidget *menubar;
GtkWidget *vbox_menu;
GtkWidget *menuitem_bar_kalkulator;
GtkWidget *menuitem_bar_about;
GtkWidget *menu_kalkulator;
GtkWidget *menu_help;
GtkWidget *menuitem_close;
GtkWidget *menuitem_help;
GtkWidget *dialog;
PangoFontDescription *pangofont;
// funkcje zwrotne
static gboolean delete_event(GtkWidget *widget, GdkEvent *event, gpointer data);
static void destroy(GtkWidget *widget, gpointer data);
static void btn_1_clicked(GtkWidget *widget, gpointer data);
static void btn_2_clicked(GtkWidget *widget, gpointer data);
static void btn_3_clicked(GtkWidget *widget, gpointer data);
static void btn_4_clicked(GtkWidget *widget, gpointer data);
static void btn_5_clicked(GtkWidget *widget, gpointer data);
static void btn_6_clicked(GtkWidget *widget, gpointer data);
static void btn_7_clicked(GtkWidget *widget, gpointer data);
static void btn_8_clicked(GtkWidget *widget, gpointer data);
static void btn_9_clicked(GtkWidget *widget, gpointer data);
static void btn_0_clicked(GtkWidget *widget, gpointer data);
static void btn_comma_clicked(GtkWidget *widget, gpointer data);
static void btn_back_clicked(GtkWidget *widget, gpointer data);
static void btn_clear_clicked(GtkWidget *widget, gpointer data);
static void btn_add_clicked(GtkWidget *widget, gpointer data);
static void btn_sub_clicked(GtkWidget *widget, gpointer data);
static void btn_multi_clicked(GtkWidget *widget, gpointer data);
static void btn_div_clicked(GtkWidget *widget, gpointer data);
static void btn_result_clicked(GtkWidget *widget, gpointer data);
static void btn_signed_clicked(GtkWidget *widget, gpointer data);
static void btn_addmem_clicked(GtkWidget *widget, gpointer data);
static void btn_readmem_clicked(GtkWidget *widget, gpointer data);
static void btn_clearmem_clicked(GtkWidget *widget, gpointer data);
static void menu_item_close(GtkMenuItem *menuitem, gpointer data);
static void menu_item_help(GtkMenuItem *menuitem, gpointer data);
static gboolean mainwindow_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer data);
// obsłuwa wszystkich przycisków numerycznych: 1,2,3,4,5,6,7,8,9,0
void _numeric_btn_clicked_event(btn_id button, GUIKalkulator* gui_kalkulator);
// obsługa wszytskich przycisków działń: +,-,*,/
void _calculate_btn_clicked_event(operation_id operation);
public:
GUIKalkulator();
~GUIKalkulator();
void init(int, char**);
void build();
void run();
};