Move definiation of MsgBox
This commit is contained in:
parent
8a0af99d2a
commit
e3d42d36a2
|
@ -21,8 +21,8 @@ pkg_check_modules (GTKMM4 REQUIRED gtkmm-4.0)
|
|||
include_directories (${GTKMM4_INCLUDE_DIRS})
|
||||
link_directories (${GTKMM4_LIBRARY_DIRS})
|
||||
|
||||
set(SOURCES src/main.cc src/MyWin.cc src/MyPrefs.cc
|
||||
src/xerelease.cc src/xeapi.cc)
|
||||
set(SOURCES src/main.cc src/MyWin.cc src/MsgBox.cc
|
||||
src/MyPrefs.cc src/xerelease.cc src/xeapi.cc)
|
||||
|
||||
#Compile resources with GCR_CMake
|
||||
set(RESOURCE_LIST
|
||||
|
|
|
@ -14,6 +14,29 @@
|
|||
<property name="label">Release Configs:</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScrolledWindow" id="version_sw">
|
||||
<property name="height-request">200</property>
|
||||
<property name="hscrollbar-policy">never</property>
|
||||
<property name="width-request">350</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="orientation">horizontal</property>
|
||||
<property name="halign">center</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="btn_add">
|
||||
<property name="label">Add Item</property>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="btn_remove">
|
||||
<property name="label">Remove Item</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkGrid">
|
||||
<property name="halign">center</property>
|
||||
|
|
|
@ -0,0 +1,83 @@
|
|||
#include "MsgBox.hh"
|
||||
|
||||
MsgBox::MsgBox(Gtk::Window &parent)
|
||||
: vbox(Gtk::Orientation::VERTICAL, 5),
|
||||
hbox(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_box(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_ok("OK")
|
||||
{
|
||||
// Initalize MsgBox
|
||||
set_icon_name("Xe-Release");
|
||||
set_default_size(300, 150);
|
||||
// add_button("OK", Gtk::ResponseType::OK);
|
||||
set_transient_for(parent);
|
||||
// Add Message and icon
|
||||
image.set_from_icon_name("Xe-Release");
|
||||
image.set_icon_size(Gtk::IconSize::LARGE);
|
||||
image.set_size_request(64, 64);
|
||||
// vbox = get_content_area();
|
||||
hbox.append(image);
|
||||
hbox.append(msg_label);
|
||||
|
||||
// Add message box to the main box
|
||||
hbox.set_expand();
|
||||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox.append(hbox);
|
||||
vbox.set_margin(5);
|
||||
|
||||
// Add button
|
||||
btn_box.append(btn_ok);
|
||||
btn_box.set_halign(Gtk::Align::END);
|
||||
btn_ok.set_halign(Gtk::Align::END);
|
||||
btn_ok.signal_clicked().connect(sigc::mem_fun(*this, &MsgBox::on_response));
|
||||
vbox.append(btn_box);
|
||||
|
||||
set_child(vbox);
|
||||
}
|
||||
|
||||
MsgBox::MsgBox()
|
||||
: vbox(Gtk::Orientation::VERTICAL, 5),
|
||||
hbox(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_box(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_ok("OK")
|
||||
{
|
||||
// Initalize MsgBox
|
||||
set_icon_name("Xe-Release");
|
||||
set_default_size(300, 150);
|
||||
// add_button("OK", Gtk::ResponseType::OK);
|
||||
// set_transient_for(parent);
|
||||
// Add Message and icon
|
||||
image.set_from_icon_name("Xe-Release");
|
||||
image.set_icon_size(Gtk::IconSize::LARGE);
|
||||
image.set_size_request(64, 64);
|
||||
// vbox = get_content_area();
|
||||
hbox.append(image);
|
||||
hbox.append(msg_label);
|
||||
|
||||
// Add message box to the main box
|
||||
hbox.set_expand();
|
||||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox.append(hbox);
|
||||
vbox.set_margin(5);
|
||||
|
||||
// Add button
|
||||
btn_box.append(btn_ok);
|
||||
btn_box.set_halign(Gtk::Align::END);
|
||||
btn_ok.set_halign(Gtk::Align::END);
|
||||
btn_ok.signal_clicked().connect(sigc::mem_fun(*this, &MsgBox::on_response));
|
||||
vbox.append(btn_box);
|
||||
|
||||
set_child(vbox);
|
||||
}
|
||||
|
||||
void MsgBox::Init(Glib::ustring msg)
|
||||
{
|
||||
msg_label.set_label(msg);
|
||||
}
|
||||
|
||||
void MsgBox::on_response()
|
||||
{
|
||||
hide();
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
#pragma once
|
||||
|
||||
#include <gtkmm.h>
|
||||
|
||||
class MsgBox : public Gtk::Window
|
||||
{
|
||||
public:
|
||||
MsgBox(Gtk::Window &parent);
|
||||
MsgBox();
|
||||
void Init(Glib::ustring msg);
|
||||
|
||||
private:
|
||||
// Child Widgets
|
||||
Gtk::Image image;
|
||||
Gtk::Label msg_label;
|
||||
Gtk::Box vbox, hbox, btn_box;
|
||||
Gtk::Button btn_ok;
|
||||
|
||||
// Signal Handler
|
||||
void on_response();
|
||||
};
|
|
@ -5,6 +5,9 @@ MyPrefs::MyPrefs(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_
|
|||
ref_Glade(ref_builder)
|
||||
{
|
||||
// Get Widgets
|
||||
version_sw = ref_builder->get_widget<Gtk::ScrolledWindow>("version_sw");
|
||||
btnadd = ref_builder->get_widget<Gtk::Button>("btn_add");
|
||||
btnremove = ref_builder->get_widget<Gtk::Button>("btn_remove");
|
||||
entry_path = ref_builder->get_widget<Gtk::Entry>("entry_path");
|
||||
btnpath = ref_builder->get_widget<Gtk::Button>("btnpath");
|
||||
btnok = ref_builder->get_widget<Gtk::Button>("btn_ok");
|
||||
|
@ -211,84 +214,3 @@ void MyPrefs::dialog_response(int response_id)
|
|||
dialog.reset();
|
||||
}
|
||||
|
||||
MsgBox::MsgBox(Gtk::Window &parent)
|
||||
: vbox(Gtk::Orientation::VERTICAL, 5),
|
||||
hbox(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_box(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_ok("OK")
|
||||
{
|
||||
// Initalize MsgBox
|
||||
set_icon_name("Xe-Release");
|
||||
set_default_size(300, 150);
|
||||
// add_button("OK", Gtk::ResponseType::OK);
|
||||
set_transient_for(parent);
|
||||
// Add Message and icon
|
||||
image.set_from_icon_name("Xe-Release");
|
||||
image.set_icon_size(Gtk::IconSize::LARGE);
|
||||
image.set_size_request(64, 64);
|
||||
// vbox = get_content_area();
|
||||
hbox.append(image);
|
||||
hbox.append(msg_label);
|
||||
|
||||
// Add message box to the main box
|
||||
hbox.set_expand();
|
||||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox.append(hbox);
|
||||
vbox.set_margin(5);
|
||||
|
||||
// Add button
|
||||
btn_box.append(btn_ok);
|
||||
btn_box.set_halign(Gtk::Align::END);
|
||||
btn_ok.set_halign(Gtk::Align::END);
|
||||
btn_ok.signal_clicked().connect(sigc::mem_fun(*this, &MsgBox::on_response));
|
||||
vbox.append(btn_box);
|
||||
|
||||
set_child(vbox);
|
||||
}
|
||||
|
||||
MsgBox::MsgBox()
|
||||
: vbox(Gtk::Orientation::VERTICAL, 5),
|
||||
hbox(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_box(Gtk::Orientation::HORIZONTAL, 5),
|
||||
btn_ok("OK")
|
||||
{
|
||||
// Initalize MsgBox
|
||||
set_icon_name("Xe-Release");
|
||||
set_default_size(300, 150);
|
||||
// add_button("OK", Gtk::ResponseType::OK);
|
||||
// set_transient_for(parent);
|
||||
// Add Message and icon
|
||||
image.set_from_icon_name("Xe-Release");
|
||||
image.set_icon_size(Gtk::IconSize::LARGE);
|
||||
image.set_size_request(64, 64);
|
||||
// vbox = get_content_area();
|
||||
hbox.append(image);
|
||||
hbox.append(msg_label);
|
||||
|
||||
// Add message box to the main box
|
||||
hbox.set_expand();
|
||||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox.append(hbox);
|
||||
vbox.set_margin(5);
|
||||
|
||||
// Add button
|
||||
btn_box.append(btn_ok);
|
||||
btn_box.set_halign(Gtk::Align::END);
|
||||
btn_ok.set_halign(Gtk::Align::END);
|
||||
btn_ok.signal_clicked().connect(sigc::mem_fun(*this, &MsgBox::on_response));
|
||||
vbox.append(btn_box);
|
||||
|
||||
set_child(vbox);
|
||||
}
|
||||
|
||||
void MsgBox::Init(Glib::ustring msg)
|
||||
{
|
||||
msg_label.set_label(msg);
|
||||
}
|
||||
|
||||
void MsgBox::on_response()
|
||||
{
|
||||
hide();
|
||||
}
|
||||
|
|
|
@ -4,28 +4,10 @@
|
|||
#include <fstream>
|
||||
#include "json_nlohmann/json.hpp"
|
||||
#include "config.hh"
|
||||
#include "MsgBox.hh"
|
||||
|
||||
using json = nlohmann::json;
|
||||
|
||||
class MsgBox : public Gtk::Window
|
||||
{
|
||||
public:
|
||||
MsgBox(Gtk::Window &parent);
|
||||
MsgBox();
|
||||
void Init(Glib::ustring msg);
|
||||
|
||||
private:
|
||||
// Child Widgets
|
||||
Gtk::Image image;
|
||||
Gtk::Label msg_label;
|
||||
Gtk::Box vbox, hbox, btn_box;
|
||||
Gtk::Button btn_ok;
|
||||
|
||||
// Signal Handler
|
||||
void on_response();
|
||||
|
||||
};
|
||||
|
||||
class MyPrefs : public Gtk::Box
|
||||
{
|
||||
public:
|
||||
|
@ -43,6 +25,8 @@ private:
|
|||
Gtk::Window *parent_win;
|
||||
|
||||
// Child widgets
|
||||
Gtk::ScrolledWindow *version_sw;
|
||||
Gtk::Button *btnadd, *btnremove;
|
||||
Gtk::Entry *entry_path;
|
||||
Gtk::Button *btnpath, *btnok, *btncancel;
|
||||
bool dark_mode;
|
||||
|
|
Loading…
Reference in New Issue