mirror of https://github.com/daleclack/My_GtkUi
Add support for panel mode
This commit is contained in:
parent
f2acd6ba9f
commit
b613614552
|
@ -251,6 +251,7 @@
|
||||||
<property name="height-request">340</property>
|
<property name="height-request">340</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">True</property>
|
<property name="can-focus">True</property>
|
||||||
|
<property name="vexpand">True</property>
|
||||||
<property name="hscrollbar-policy">never</property>
|
<property name="hscrollbar-policy">never</property>
|
||||||
<property name="shadow-type">in</property>
|
<property name="shadow-type">in</property>
|
||||||
<child>
|
<child>
|
||||||
|
@ -464,6 +465,7 @@
|
||||||
<property name="height-request">5</property>
|
<property name="height-request">5</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can-focus">False</property>
|
<property name="can-focus">False</property>
|
||||||
|
<property name="halign">end</property>
|
||||||
<style>
|
<style>
|
||||||
<class name="separator1"/>
|
<class name="separator1"/>
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,39 +1,57 @@
|
||||||
#include "MyStack.hh"
|
#include "MyStack.hh"
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
MyStack::MyStack(){
|
MyStack::MyStack()
|
||||||
|
{
|
||||||
// Get Widgets
|
// Get Widgets
|
||||||
stackbuilder = Gtk::Builder::create_from_resource("/org/gtk/daleclack/stack.ui");
|
stackbuilder = Gtk::Builder::create_from_resource("/org/gtk/daleclack/stack.ui");
|
||||||
stackbuilder->get_widget("main_stack",stack);
|
stackbuilder->get_widget("main_stack", stack);
|
||||||
stackbuilder->get_widget("login_page",login_page);
|
stackbuilder->get_widget("login_page", login_page);
|
||||||
stackbuilder->get_widget("main_page",main_page);
|
stackbuilder->get_widget("main_page", main_page);
|
||||||
stackbuilder->get_widget("btnlogin",btnlogin);
|
stackbuilder->get_widget("btnlogin", btnlogin);
|
||||||
|
|
||||||
// Link Signals
|
// Link Signals
|
||||||
btnlogin->signal_clicked().connect(sigc::mem_fun(*this,&MyStack::btnlogin_clicked));
|
btnlogin->signal_clicked().connect(sigc::mem_fun(*this, &MyStack::btnlogin_clicked));
|
||||||
|
}
|
||||||
|
|
||||||
//Add Widget
|
void MyStack::mystack_init(Gtk::Window *window, Gtk::Image *m_back)
|
||||||
main_dock = MyDock::create();
|
{
|
||||||
|
main_dock->mydock_init(window, m_back);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyStack::show_prefs()
|
||||||
|
{
|
||||||
|
main_dock->btnset_clicked();
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyStack::logout()
|
||||||
|
{
|
||||||
|
stack->set_visible_child(*login_page);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyStack::btnlogin_clicked()
|
||||||
|
{
|
||||||
|
stack->set_visible_child(*main_page);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyStack::set_mydock_mode(DockMode mode)
|
||||||
|
{
|
||||||
|
// main_dock->set_dock_mode(mode);
|
||||||
|
// switch (mode)
|
||||||
|
// {
|
||||||
|
// case DockMode::MODE_DOCK:
|
||||||
|
// std::cout << "dock mode" << std::endl;
|
||||||
|
// break;
|
||||||
|
// case DockMode::MODE_PANEL:
|
||||||
|
// std::cout << "panel mode" << std::endl;
|
||||||
|
// break;
|
||||||
|
// default:
|
||||||
|
// std::cout << "undefined" << std::endl;
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
// Add Widget
|
||||||
|
main_dock = MyDock::create(mode);
|
||||||
main_dock->set_hexpand();
|
main_dock->set_hexpand();
|
||||||
main_dock->set_vexpand();
|
main_dock->set_vexpand();
|
||||||
main_page->pack_start(*main_dock);
|
main_page->pack_start(*main_dock);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyStack::mystack_init(Gtk::Window *window, Gtk::Image *m_back){
|
|
||||||
main_dock->mydock_init(window,m_back);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MyStack::show_prefs(){
|
|
||||||
main_dock->btnset_clicked();
|
|
||||||
}
|
|
||||||
|
|
||||||
void MyStack::logout(){
|
|
||||||
stack->set_visible_child(*login_page);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MyStack::btnlogin_clicked(){
|
|
||||||
stack->set_visible_child(*main_page);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MyStack::set_mydock_mode(DockMode mode){
|
|
||||||
main_dock->set_dock_mode(mode);
|
|
||||||
}
|
|
||||||
|
|
|
@ -9,7 +9,14 @@ MyWin::MyWin()
|
||||||
// Initalize window
|
// Initalize window
|
||||||
set_icon_name("My_GtkUI");
|
set_icon_name("My_GtkUI");
|
||||||
set_title("My GtkUI macOS Version");
|
set_title("My GtkUI macOS Version");
|
||||||
get_size_config(width, height);
|
get_size_config(width, height, panel_mode);
|
||||||
|
|
||||||
|
// Set the display mode of dock
|
||||||
|
if(panel_mode){
|
||||||
|
main_stack.set_mydock_mode(DockMode::MODE_PANEL);
|
||||||
|
}else{
|
||||||
|
main_stack.set_mydock_mode(DockMode::MODE_DOCK);
|
||||||
|
}
|
||||||
|
|
||||||
// Add background
|
// Add background
|
||||||
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(winpe);
|
auto pixbuf = Gdk::Pixbuf::create_from_xpm_data(winpe);
|
||||||
|
|
|
@ -20,6 +20,7 @@ private:
|
||||||
//Main Stack
|
//Main Stack
|
||||||
MyStack main_stack;
|
MyStack main_stack;
|
||||||
int width, height;
|
int width, height;
|
||||||
|
bool panel_mode;
|
||||||
|
|
||||||
//Signal Handlers
|
//Signal Handlers
|
||||||
void logout_activated();
|
void logout_activated();
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
#include "MyDock.hh"
|
#include "MyDock.hh"
|
||||||
#include <thread>
|
#include <thread>
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
// Dock or Panel Mode
|
||||||
|
static DockMode mode1;
|
||||||
|
|
||||||
MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Glade)
|
MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Glade)
|
||||||
: Gtk::Box(cobject),
|
: Gtk::Box(cobject),
|
||||||
|
@ -16,15 +20,15 @@ MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Gl
|
||||||
ref_builder->get_widget("btnedit", btnedit);
|
ref_builder->get_widget("btnedit", btnedit);
|
||||||
ref_builder->get_widget("btnimage", btnimage);
|
ref_builder->get_widget("btnimage", btnimage);
|
||||||
ref_builder->get_widget("btnset", btnset);
|
ref_builder->get_widget("btnset", btnset);
|
||||||
ref_builder->get_widget("btngame24",btngame24);
|
ref_builder->get_widget("btngame24", btngame24);
|
||||||
ref_builder->get_widget("btncalc",btncalc);
|
ref_builder->get_widget("btncalc", btncalc);
|
||||||
ref_builder->get_widget("btnmine", btnmine);
|
ref_builder->get_widget("btnmine", btnmine);
|
||||||
ref_builder->get_widget("separator_start", separator_start);
|
ref_builder->get_widget("separator_start", separator_start);
|
||||||
ref_builder->get_widget("separator_end", separator_end);
|
ref_builder->get_widget("separator_end", separator_end);
|
||||||
ref_builder->get_widget("launchpad_stack", launchpad_stack);
|
ref_builder->get_widget("launchpad_stack", launchpad_stack);
|
||||||
ref_builder->get_widget("default_page", default_page);
|
ref_builder->get_widget("default_page", default_page);
|
||||||
ref_builder->get_widget("launchpad_page", launchpad_page);
|
ref_builder->get_widget("launchpad_page", launchpad_page);
|
||||||
ref_builder->get_widget("apps_grid",apps_grid);
|
ref_builder->get_widget("apps_grid", apps_grid);
|
||||||
ref_builder->get_widget("padaud", padaud);
|
ref_builder->get_widget("padaud", padaud);
|
||||||
ref_builder->get_widget("padgedit", padgedit);
|
ref_builder->get_widget("padgedit", padgedit);
|
||||||
ref_builder->get_widget("padvlc", padvlc);
|
ref_builder->get_widget("padvlc", padvlc);
|
||||||
|
@ -38,8 +42,8 @@ MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Gl
|
||||||
ref_builder->get_widget("padimage", padimage);
|
ref_builder->get_widget("padimage", padimage);
|
||||||
ref_builder->get_widget("padedit", padedit);
|
ref_builder->get_widget("padedit", padedit);
|
||||||
ref_builder->get_widget("padrun", padrun);
|
ref_builder->get_widget("padrun", padrun);
|
||||||
ref_builder->get_widget("padgame24",padgame24);
|
ref_builder->get_widget("padgame24", padgame24);
|
||||||
ref_builder->get_widget("padcalc",padcalc);
|
ref_builder->get_widget("padcalc", padcalc);
|
||||||
ref_builder->get_widget("padmine", padmine);
|
ref_builder->get_widget("padmine", padmine);
|
||||||
|
|
||||||
// Create window
|
// Create window
|
||||||
|
@ -83,15 +87,15 @@ MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Gl
|
||||||
game_win->signal_delete_event().connect(sigc::mem_fun(*this, &MyDock::game_win_closed));
|
game_win->signal_delete_event().connect(sigc::mem_fun(*this, &MyDock::game_win_closed));
|
||||||
game_win->signal_hide().connect(sigc::mem_fun(*this, &MyDock::game_win_hide));
|
game_win->signal_hide().connect(sigc::mem_fun(*this, &MyDock::game_win_hide));
|
||||||
|
|
||||||
btngame24->signal_clicked().connect(sigc::mem_fun(*this,&MyDock::btngame24_clicked));
|
btngame24->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::btngame24_clicked));
|
||||||
padgame24->signal_clicked().connect(sigc::mem_fun(*this,&MyDock::padgame24_clicked));
|
padgame24->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::padgame24_clicked));
|
||||||
game24_win->signal_delete_event().connect(sigc::mem_fun(*this,&MyDock::game24_win_closed));
|
game24_win->signal_delete_event().connect(sigc::mem_fun(*this, &MyDock::game24_win_closed));
|
||||||
game24_win->signal_hide().connect(sigc::mem_fun(*this,&MyDock::game24_win_hide));
|
game24_win->signal_hide().connect(sigc::mem_fun(*this, &MyDock::game24_win_hide));
|
||||||
|
|
||||||
btncalc->signal_clicked().connect(sigc::mem_fun(*this,&MyDock::btncalc_clicked));
|
btncalc->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::btncalc_clicked));
|
||||||
padcalc->signal_clicked().connect(sigc::mem_fun(*this,&MyDock::padcalc_clicked));
|
padcalc->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::padcalc_clicked));
|
||||||
calc_win->signal_delete_event().connect(sigc::mem_fun(*this,&MyDock::calc_win_closed));
|
calc_win->signal_delete_event().connect(sigc::mem_fun(*this, &MyDock::calc_win_closed));
|
||||||
calc_win->signal_hide().connect(sigc::mem_fun(*this,&MyDock::calc_win_hide));
|
calc_win->signal_hide().connect(sigc::mem_fun(*this, &MyDock::calc_win_hide));
|
||||||
|
|
||||||
btnimage->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::btnimage_clicked));
|
btnimage->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::btnimage_clicked));
|
||||||
padimage->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::padimage_clicked));
|
padimage->signal_clicked().connect(sigc::mem_fun(*this, &MyDock::padimage_clicked));
|
||||||
|
@ -114,27 +118,42 @@ MyDock::MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Gl
|
||||||
apply_style(*dock_box);
|
apply_style(*dock_box);
|
||||||
apply_style(*launchpad_page);
|
apply_style(*launchpad_page);
|
||||||
apply_style(*separator_end);
|
apply_style(*separator_end);
|
||||||
//apps_grid->foreach(sigc::mem_fun(*this,&MyDock::apply_style));
|
// apps_grid->foreach(sigc::mem_fun(*this,&MyDock::apply_style));
|
||||||
|
|
||||||
|
// Set Dock or panel mode
|
||||||
|
switch (mode1)
|
||||||
|
{
|
||||||
|
case DockMode::MODE_DOCK:
|
||||||
|
dock_box->set_vexpand(false);
|
||||||
|
// std::cout << "dock mode" << std::endl;
|
||||||
|
break;
|
||||||
|
case DockMode::MODE_PANEL:
|
||||||
|
dock_box->set_vexpand();
|
||||||
|
dock_box->set_valign(Gtk::ALIGN_FILL);
|
||||||
|
// std::cout << "panel mode" << std::endl;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
show_all_children();
|
show_all_children();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::set_dock_mode(DockMode mode){
|
// void MyDock::set_dock_mode(DockMode mode){
|
||||||
switch(mode){
|
// switch(mode){
|
||||||
case DockMode::MODE_DOCK:
|
// case DockMode::MODE_DOCK:
|
||||||
set_vexpand(false);
|
// set_vexpand(false);
|
||||||
break;
|
// break;
|
||||||
case DockMode::MODE_PANEL:
|
// case DockMode::MODE_PANEL:
|
||||||
set_vexpand();
|
// set_vexpand();
|
||||||
set_valign(Gtk::ALIGN_FILL);
|
// set_valign(Gtk::ALIGN_FILL);
|
||||||
break;
|
// break;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
// Set the style of dock widget
|
// Set the style of dock widget
|
||||||
void MyDock::apply_style(Gtk::Widget &widget){
|
void MyDock::apply_style(Gtk::Widget &widget)
|
||||||
|
{
|
||||||
auto style = widget.get_style_context();
|
auto style = widget.get_style_context();
|
||||||
style->add_provider(provider,G_MAXUINT);
|
style->add_provider(provider, G_MAXUINT);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Launchpad
|
// Launchpad
|
||||||
|
@ -230,7 +249,7 @@ void MyDock::padset_clicked()
|
||||||
btnlaunch_clicked();
|
btnlaunch_clicked();
|
||||||
}
|
}
|
||||||
|
|
||||||
//Signal Handlers for drawing app window
|
// Signal Handlers for drawing app window
|
||||||
|
|
||||||
bool MyDock::draw_win_closed(GdkEventAny *event)
|
bool MyDock::draw_win_closed(GdkEventAny *event)
|
||||||
{
|
{
|
||||||
|
@ -239,7 +258,8 @@ bool MyDock::draw_win_closed(GdkEventAny *event)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::draw_win_hide(){
|
void MyDock::draw_win_hide()
|
||||||
|
{
|
||||||
btndraw->set_image_from_icon_name("drawing_app", Gtk::ICON_SIZE_DIALOG);
|
btndraw->set_image_from_icon_name("drawing_app", Gtk::ICON_SIZE_DIALOG);
|
||||||
draw_app.hide();
|
draw_app.hide();
|
||||||
}
|
}
|
||||||
|
@ -309,49 +329,57 @@ void MyDock::padgame_clicked()
|
||||||
|
|
||||||
// Signal Handlers for game24 window
|
// Signal Handlers for game24 window
|
||||||
|
|
||||||
bool MyDock::game24_win_closed(GdkEventAny *event){
|
bool MyDock::game24_win_closed(GdkEventAny *event)
|
||||||
btngame24->set_image_from_icon_name("24game",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btngame24->set_image_from_icon_name("24game", Gtk::ICON_SIZE_DIALOG);
|
||||||
game24_win->hide();
|
game24_win->hide();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::btngame24_clicked(){
|
void MyDock::btngame24_clicked()
|
||||||
btngame24->set_image_from_icon_name("24game_running",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btngame24->set_image_from_icon_name("24game_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
window_ctrl(*game24_win);
|
window_ctrl(*game24_win);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::padgame24_clicked(){
|
void MyDock::padgame24_clicked()
|
||||||
btngame24->set_image_from_icon_name("24game_running",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
window_ctrl(*game24_win,false);
|
btngame24->set_image_from_icon_name("24game_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
|
window_ctrl(*game24_win, false);
|
||||||
btnlaunch_clicked();
|
btnlaunch_clicked();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::game24_win_hide(){
|
void MyDock::game24_win_hide()
|
||||||
btngame24->set_image_from_icon_name("24game",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btngame24->set_image_from_icon_name("24game", Gtk::ICON_SIZE_DIALOG);
|
||||||
game24_win->hide();
|
game24_win->hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Signal Handlers for Calc App
|
// Signal Handlers for Calc App
|
||||||
|
|
||||||
bool MyDock::calc_win_closed(GdkEventAny *event){
|
bool MyDock::calc_win_closed(GdkEventAny *event)
|
||||||
btncalc->set_image_from_icon_name("calcapp",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btncalc->set_image_from_icon_name("calcapp", Gtk::ICON_SIZE_DIALOG);
|
||||||
calc_win->hide();
|
calc_win->hide();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::btncalc_clicked(){
|
void MyDock::btncalc_clicked()
|
||||||
btncalc->set_image_from_icon_name("calcapp_running",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btncalc->set_image_from_icon_name("calcapp_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
window_ctrl(*calc_win);
|
window_ctrl(*calc_win);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::padcalc_clicked(){
|
void MyDock::padcalc_clicked()
|
||||||
btncalc->set_image_from_icon_name("calcapp_running",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btncalc->set_image_from_icon_name("calcapp_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
window_ctrl(*calc_win);
|
window_ctrl(*calc_win);
|
||||||
btnlaunch_clicked();
|
btnlaunch_clicked();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::calc_win_hide(){
|
void MyDock::calc_win_hide()
|
||||||
btncalc->set_image_from_icon_name("calcapp",Gtk::ICON_SIZE_DIALOG);
|
{
|
||||||
|
btncalc->set_image_from_icon_name("calcapp", Gtk::ICON_SIZE_DIALOG);
|
||||||
calc_win->hide();
|
calc_win->hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -401,18 +429,21 @@ void MyDock::padedit_clicked()
|
||||||
|
|
||||||
// Signal Handler for minesweeper window
|
// Signal Handler for minesweeper window
|
||||||
|
|
||||||
bool MyDock::mine_win_closed(GdkEventAny *event){
|
bool MyDock::mine_win_closed(GdkEventAny *event)
|
||||||
|
{
|
||||||
btnmine->set_image_from_icon_name("mines_app", Gtk::ICON_SIZE_DIALOG);
|
btnmine->set_image_from_icon_name("mines_app", Gtk::ICON_SIZE_DIALOG);
|
||||||
mine_win.hide();
|
mine_win.hide();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::btnmine_clicked(){
|
void MyDock::btnmine_clicked()
|
||||||
|
{
|
||||||
btnmine->set_image_from_icon_name("mines_app_running", Gtk::ICON_SIZE_DIALOG);
|
btnmine->set_image_from_icon_name("mines_app_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
window_ctrl(mine_win);
|
window_ctrl(mine_win);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyDock::padmine_clicked(){
|
void MyDock::padmine_clicked()
|
||||||
|
{
|
||||||
btnmine->set_image_from_icon_name("mines_app_running", Gtk::ICON_SIZE_DIALOG);
|
btnmine->set_image_from_icon_name("mines_app_running", Gtk::ICON_SIZE_DIALOG);
|
||||||
window_ctrl(mine_win, false);
|
window_ctrl(mine_win, false);
|
||||||
btnlaunch_clicked();
|
btnlaunch_clicked();
|
||||||
|
@ -464,13 +495,27 @@ void MyDock::window_ctrl(Gtk::Window &window, bool on_dock)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MyDock *MyDock::create()
|
MyDock *MyDock::create(DockMode mode)
|
||||||
{
|
{
|
||||||
MyDock *dock;
|
MyDock *dock;
|
||||||
|
|
||||||
|
mode1 = mode;
|
||||||
// Get Widget
|
// Get Widget
|
||||||
auto builder = Gtk::Builder::create_from_resource("/org/gtk/daleclack/mydock.ui");
|
auto builder = Gtk::Builder::create_from_resource("/org/gtk/daleclack/mydock.ui");
|
||||||
builder->get_widget_derived("main_box", dock);
|
builder->get_widget_derived("main_box", dock);
|
||||||
|
|
||||||
|
// switch (mode)
|
||||||
|
// {
|
||||||
|
// case DockMode::MODE_DOCK:
|
||||||
|
// std::cout << "dock mode" << std::endl;
|
||||||
|
// break;
|
||||||
|
// case DockMode::MODE_PANEL:
|
||||||
|
// std::cout << "panel mode" << std::endl;
|
||||||
|
// break;
|
||||||
|
// default:
|
||||||
|
// std::cout << "undefined" << std::endl;
|
||||||
|
// break;
|
||||||
|
// }
|
||||||
|
|
||||||
return dock;
|
return dock;
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,10 +22,10 @@ class MyDock : public Gtk::Box
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Glade);
|
MyDock(BaseObjectType *cobject, const Glib::RefPtr<Gtk::Builder> &ref_Glade);
|
||||||
static MyDock *create();
|
static MyDock *create(DockMode mode);
|
||||||
void btnset_clicked();
|
void btnset_clicked();
|
||||||
void mydock_init(Gtk::Window *window, Gtk::Image *background1);
|
void mydock_init(Gtk::Window *window, Gtk::Image *background1);
|
||||||
void set_dock_mode(DockMode mode);
|
// void set_dock_mode(DockMode mode);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Child widgets
|
// Child widgets
|
||||||
|
|
|
@ -423,7 +423,8 @@ void MyPrefs::btnapply_clicked()
|
||||||
json data = json::parse(R"(
|
json data = json::parse(R"(
|
||||||
{
|
{
|
||||||
"height":1280,
|
"height":1280,
|
||||||
"width":720
|
"width":720,
|
||||||
|
"panel_mode":false
|
||||||
}
|
}
|
||||||
)");
|
)");
|
||||||
std::fstream outfile;
|
std::fstream outfile;
|
||||||
|
@ -432,6 +433,7 @@ void MyPrefs::btnapply_clicked()
|
||||||
{
|
{
|
||||||
data["width"] = width;
|
data["width"] = width;
|
||||||
data["height"] = height;
|
data["height"] = height;
|
||||||
|
data["panel_mode"] = panel_mode;
|
||||||
outfile<<data;
|
outfile<<data;
|
||||||
outfile.close();
|
outfile.close();
|
||||||
}
|
}
|
||||||
|
@ -452,8 +454,10 @@ void MyPrefs::load_winsize_config(){
|
||||||
json data = json::parse(jsonfile);
|
json data = json::parse(jsonfile);
|
||||||
height = data["height"];
|
height = data["height"];
|
||||||
width = data["width"];
|
width = data["width"];
|
||||||
|
panel_mode = data["panel_mode"];
|
||||||
}else{
|
}else{
|
||||||
height = 720;
|
height = 720;
|
||||||
width = 1280;
|
width = 1280;
|
||||||
|
panel_mode = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,7 @@ protected:
|
||||||
private:
|
private:
|
||||||
// Background widget and properties
|
// Background widget and properties
|
||||||
int width, height;
|
int width, height;
|
||||||
|
bool panel_mode;
|
||||||
Gtk::Image *background1;
|
Gtk::Image *background1;
|
||||||
std::string path;
|
std::string path;
|
||||||
bool background_internal;
|
bool background_internal;
|
||||||
|
@ -83,14 +84,16 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
//Read Config from file without use the MyPrefs class
|
//Read Config from file without use the MyPrefs class
|
||||||
static inline void get_size_config(int &width, int &height){
|
static inline void get_size_config(int &width, int &height, bool &panel_mode){
|
||||||
std::ifstream jsonfile("config.json");
|
std::ifstream jsonfile("config.json");
|
||||||
if(jsonfile.is_open()){
|
if(jsonfile.is_open()){
|
||||||
json data = json::parse(jsonfile);
|
json data = json::parse(jsonfile);
|
||||||
height = data["height"];
|
height = data["height"];
|
||||||
width = data["width"];
|
width = data["width"];
|
||||||
|
panel_mode = data["panel_mode"];
|
||||||
}else{
|
}else{
|
||||||
height = 720;
|
height = 720;
|
||||||
width = 1280;
|
width = 1280;
|
||||||
|
panel_mode = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue