28 lines
636 B
C++
28 lines
636 B
C++
//
|
|
// Created by selim on 11.05.2022.
|
|
//
|
|
|
|
#include "Button.h"
|
|
|
|
namespace gtkpp {
|
|
|
|
void clickedCallback(GtkButton*, void* data) {
|
|
auto button = reinterpret_cast<Button*>(data);
|
|
button->_signalClicked.emit();
|
|
}
|
|
|
|
Button::Button() : Widget() {
|
|
_widget = gtk_button_new();
|
|
g_signal_connect(_widget, "clicked", G_CALLBACK(clickedCallback), this);
|
|
}
|
|
|
|
void Button::setTitle(const std::string &title) {
|
|
gtk_button_set_label(GTK_BUTTON(_widget), title.c_str());
|
|
}
|
|
|
|
void Button::onClick(const std::function<void()> &callback) {
|
|
_signalClicked.connect(callback);
|
|
}
|
|
|
|
}
|