Fix build and interface issues
This commit is contained in:
parent
6a964ab72a
commit
c6972513ec
|
@ -91,7 +91,8 @@
|
|||
"compilerPath": "D:/msys64/MinGW64/bin/gcc.exe",
|
||||
"cStandard": "c17",
|
||||
"cppStandard": "c++17",
|
||||
"intelliSenseMode": "windows-gcc-x64"
|
||||
"intelliSenseMode": "windows-gcc-x64",
|
||||
"configurationProvider": "ms-vscode.cmake-tools"
|
||||
},
|
||||
{
|
||||
"name": "Mac",
|
||||
|
|
|
@ -1,211 +1,138 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.38.2 -->
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!-- Created with Cambalache 0.11.2 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.24"/>
|
||||
<!-- interface-name prefs.ui -->
|
||||
<requires lib="gtk" version="4.6"/>
|
||||
<object class="GtkBox" id="prefs">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="valign">center</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<property name="spacing">10</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="margin-start">5</property>
|
||||
<property name="margin-end">5</property>
|
||||
<property name="margin-top">5</property>
|
||||
<property name="margin-bottom">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="orientation">vertical</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label_conf">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="label" translatable="yes">Release Configs:</property>
|
||||
<property name="label">Release Configs:</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<!-- n-columns=2 n-rows=4 -->
|
||||
<object class="GtkGrid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="valign">center</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label_lts">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="label" translatable="yes">LongTerm:</property>
|
||||
<property name="label">LongTerm:</property>
|
||||
<layout>
|
||||
<property name="column">0</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">0</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">0</property>
|
||||
<property name="top-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label_stable">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="label" translatable="yes">Stable:</property>
|
||||
<property name="label">Stable:</property>
|
||||
<layout>
|
||||
<property name="column">0</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">1</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">0</property>
|
||||
<property name="top-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="label_dev">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="label" translatable="yes">Development:</property>
|
||||
<property name="label">Development:</property>
|
||||
<layout>
|
||||
<property name="column">0</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">2</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">0</property>
|
||||
<property name="top-attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_lts">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="text" translatable="yes">default_config</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">1</property>
|
||||
<property name="top-attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_stable">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="text" translatable="yes">default_config</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">1</property>
|
||||
<property name="top-attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_dev">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="vexpand">True</property>
|
||||
<property name="text" translatable="yes">default_config</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">1</property>
|
||||
<property name="top-attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="label" translatable="yes">Path:</property>
|
||||
<property name="label">Path:</property>
|
||||
<layout>
|
||||
<property name="column">0</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">3</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_lts">
|
||||
<property name="text">default config</property>
|
||||
<layout>
|
||||
<property name="column">1</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">0</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_stable">
|
||||
<property name="text">default config</property>
|
||||
<layout>
|
||||
<property name="column">1</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">1</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_dev">
|
||||
<property name="text">default config</property>
|
||||
<layout>
|
||||
<property name="column">1</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">2</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">0</property>
|
||||
<property name="top-attach">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEntry" id="entry_path">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="text" translatable="yes">./</property>
|
||||
<property name="text">./</property>
|
||||
<layout>
|
||||
<property name="column">1</property>
|
||||
<property name="column-span">1</property>
|
||||
<property name="row">3</property>
|
||||
<property name="row-span">1</property>
|
||||
</layout>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left-attach">1</property>
|
||||
<property name="top-attach">3</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
<property name="halign">center</property>
|
||||
<property name="spacing">5</property>
|
||||
<child>
|
||||
<object class="GtkButton" id="btnpath">
|
||||
<property name="label" translatable="yes">Custom Path</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="receives-default">True</property>
|
||||
<property name="label">Custom Path</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="btn_ok">
|
||||
<property name="label" translatable="yes">OK</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="receives-default">True</property>
|
||||
<property name="label">OK</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkButton" id="btn_cancel">
|
||||
<property name="label" translatable="yes">Cancel</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">True</property>
|
||||
<property name="receives-default">True</property>
|
||||
<property name="label">Cancel</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">False</property>
|
||||
<property name="position">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
<property name="fill">True</property>
|
||||
<property name="position">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</interface>
|
||||
|
|
|
@ -182,6 +182,8 @@ MsgBox::MsgBox(Gtk::Window &parent)
|
|||
set_transient_for(parent);
|
||||
// Add Message
|
||||
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);
|
||||
|
@ -189,6 +191,7 @@ MsgBox::MsgBox(Gtk::Window &parent)
|
|||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox->append(hbox);
|
||||
vbox->set_margin(5);
|
||||
}
|
||||
|
||||
MsgBox::MsgBox()
|
||||
|
@ -199,6 +202,8 @@ MsgBox::MsgBox()
|
|||
add_button("OK", Gtk::ResponseType::OK);
|
||||
// Add Message
|
||||
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);
|
||||
|
@ -206,6 +211,7 @@ MsgBox::MsgBox()
|
|||
hbox.set_halign(Gtk::Align::FILL);
|
||||
hbox.set_valign(Gtk::Align::FILL);
|
||||
vbox->append(hbox);
|
||||
vbox->set_margin(5);
|
||||
}
|
||||
|
||||
void MsgBox::Init(Glib::ustring msg)
|
||||
|
|
|
@ -16,7 +16,7 @@ enum Releases
|
|||
MyWin::MyWin()
|
||||
: btn_box(Gtk::Orientation::VERTICAL, 5),
|
||||
btn_ver("Xe-Ver"),
|
||||
cfg_box(Gtk::Orientation::HORIZONTAL, 5),
|
||||
cfg_box(Gtk::Orientation::VERTICAL, 5),
|
||||
msg_dialog(*this)
|
||||
{
|
||||
// Initalize window
|
||||
|
@ -26,9 +26,13 @@ MyWin::MyWin()
|
|||
|
||||
// Set Background Image
|
||||
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(fly);
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::INTERP_BILINEAR);
|
||||
gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::InterpType::BILINEAR);
|
||||
background.set_pixbuf(sized);
|
||||
back_overlay.set_child(background);
|
||||
background.set_size_request(640, 360);
|
||||
back_overlay.set_halign(Gtk::Align::FILL);
|
||||
back_overlay.set_valign(Gtk::Align::FILL);
|
||||
back_overlay.set_expand();
|
||||
|
||||
// Get Local time
|
||||
time_t t;
|
||||
|
@ -66,6 +70,9 @@ MyWin::MyWin()
|
|||
load_config();
|
||||
prefs->init_json_data(data);
|
||||
cfg_box.append(*prefs);
|
||||
// cfg_box.set_hexpand();
|
||||
cfg_box.set_halign(Gtk::Align::CENTER);
|
||||
cfg_box.set_valign(Gtk::Align::CENTER);
|
||||
cfg_box.set_opacity(0.7);
|
||||
stack1.add(cfg_box, "config_page", "Config");
|
||||
|
||||
|
@ -91,16 +98,16 @@ void MyWin::titlebar_init()
|
|||
// header.set_title("Xe Release 15");
|
||||
|
||||
// Add stack widget
|
||||
header.set_custom_title(switcher);
|
||||
header.set_show_close_button();
|
||||
//header.set_custom_title(switcher);
|
||||
header.set_title_widget(switcher);
|
||||
header.set_show_title_buttons();
|
||||
header.set_decoration_layout("close,minimize:menu");
|
||||
set_titlebar(header);
|
||||
|
||||
// Initalize Menu
|
||||
menu_builder = Gtk::Builder::create_from_resource("/org/gtk/daleclack/menubar.xml");
|
||||
auto object = menu_builder->get_object("app-menu");
|
||||
auto gmenu = Glib::RefPtr<Gio::Menu>::cast_dynamic(object);
|
||||
popover.bind_model(gmenu);
|
||||
auto object = menu_builder->get_object<Gio::MenuModel>("app-menu");
|
||||
popover.set_menu_model(object);
|
||||
|
||||
// Add Menu Actions
|
||||
add_action("configs", sigc::mem_fun(*this, &MyWin::config_dialog));
|
||||
|
@ -111,7 +118,7 @@ void MyWin::titlebar_init()
|
|||
add_action("quit", sigc::mem_fun(*this, &MyWin::hide));
|
||||
|
||||
// Initalize MenuButton
|
||||
menubtn.set_image_from_icon_name("open-menu");
|
||||
menubtn.set_icon_name("open-menu");
|
||||
menubtn.set_popover(popover);
|
||||
header.pack_end(menubtn);
|
||||
}
|
||||
|
@ -120,8 +127,9 @@ void MyWin::background1()
|
|||
{
|
||||
// Set Background Image
|
||||
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(winpe);
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::INTERP_BILINEAR);
|
||||
gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::InterpType::BILINEAR);
|
||||
background.set_pixbuf(sized);
|
||||
// gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
// overlay.add(background);
|
||||
// Free Memory
|
||||
pixbuf.reset();
|
||||
|
@ -132,8 +140,9 @@ void MyWin::background2()
|
|||
{
|
||||
// Set Background Image
|
||||
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(img7);
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::INTERP_BILINEAR);
|
||||
gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::InterpType::BILINEAR);
|
||||
background.set_pixbuf(sized);
|
||||
// gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
// overlay.add(background);
|
||||
// Free Memory
|
||||
pixbuf.reset();
|
||||
|
@ -144,8 +153,9 @@ void MyWin::background3()
|
|||
{
|
||||
// Set Background Image
|
||||
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(fly);
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::INTERP_BILINEAR);
|
||||
gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
auto sized = pixbuf->scale_simple(640, 360, Gdk::InterpType::BILINEAR);
|
||||
background.set_pixbuf(sized);
|
||||
// gtk_image_set_from_pixbuf(background.gobj(), sized->gobj());
|
||||
// overlay.add(background);
|
||||
// Free Memory
|
||||
pixbuf.reset();
|
||||
|
@ -175,7 +185,7 @@ void MyWin::load_config(){
|
|||
else
|
||||
{
|
||||
msg_dialog.Init("The config doesn't exist!\nPlease use \"Config\" menu to set releases");
|
||||
msg_dialog.show_all();
|
||||
msg_dialog.show();
|
||||
return;
|
||||
}
|
||||
json_config_init(data);
|
||||
|
@ -199,17 +209,17 @@ void MyWin::main_releases()
|
|||
case Releases::LTS:
|
||||
longterm(local, config_longterm.c_str(), str);
|
||||
msg_dialog.Init(str);
|
||||
msg_dialog.show_all();
|
||||
msg_dialog.show();
|
||||
break;
|
||||
case Releases::Stable:
|
||||
stable(local, config_stable.c_str(), str);
|
||||
msg_dialog.Init(str);
|
||||
msg_dialog.show_all();
|
||||
msg_dialog.show();
|
||||
break;
|
||||
case Releases::Dev:
|
||||
develop(local, config_devel.c_str(), str);
|
||||
msg_dialog.Init(str);
|
||||
msg_dialog.show_all();
|
||||
msg_dialog.show();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -235,7 +245,7 @@ void MyWin::about_dialog()
|
|||
"license-type", GTK_LICENSE_GPL_3_0,
|
||||
"logo-icon-name", "Xe-Release",
|
||||
"title", "About Xe Release",
|
||||
NULL);
|
||||
NULL, nullptr);
|
||||
// Free memory
|
||||
g_free(version);
|
||||
g_free(copyright);
|
||||
|
|
|
@ -15,7 +15,7 @@ private:
|
|||
// Main window
|
||||
Gtk::Stack stack1;
|
||||
Gtk::StackSwitcher switcher;
|
||||
Gtk::Image background;
|
||||
Gtk::Picture background;
|
||||
Gtk::Overlay back_overlay, overlay;
|
||||
Gtk::Box btn_box, cfg_box;
|
||||
Gtk::Label api_label;
|
||||
|
|
Loading…
Reference in New Issue