Browse Source

Can now change default size of juci window in config.json.

merge-requests/365/head
eidheim 10 years ago
parent
commit
6b019a98f3
  1. 1
      src/config.cc
  2. 4
      src/files.h
  3. 11
      src/window.cc
  4. 1
      src/window.h

1
src/config.cc

@ -59,6 +59,7 @@ void MainConfig::retrieve_config() {
Singleton::Config::window()->theme_name=cfg.get<std::string>("gtk_theme.name"); Singleton::Config::window()->theme_name=cfg.get<std::string>("gtk_theme.name");
Singleton::Config::window()->theme_variant=cfg.get<std::string>("gtk_theme.variant"); Singleton::Config::window()->theme_variant=cfg.get<std::string>("gtk_theme.variant");
Singleton::Config::window()->version = cfg.get<std::string>("version"); Singleton::Config::window()->version = cfg.get<std::string>("version");
Singleton::Config::window()->default_size = {cfg.get<int>("default_window_size.width"), cfg.get<int>("default_window_size.height")};
Singleton::Config::terminal()->make_command=cfg.get<std::string>("project.make_command"); Singleton::Config::terminal()->make_command=cfg.get<std::string>("project.make_command");
Singleton::Config::terminal()->cmake_command=cfg.get<std::string>("project.cmake_command"); Singleton::Config::terminal()->cmake_command=cfg.get<std::string>("project.cmake_command");
} }

4
src/files.h

@ -5,6 +5,10 @@
const std::string configjson = const std::string configjson =
"{\n" "{\n"
" \"version\": \""+std::string(JUCI_VERSION)+"\",\n" " \"version\": \""+std::string(JUCI_VERSION)+"\",\n"
" \"default_window_size\": {\n"
" \"width\": 600,\n"
" \"height\": 400\n"
" },\n"
" \"gtk_theme\": {\n" " \"gtk_theme\": {\n"
" \"name\": \"Adwaita\", //Use \"\" for default theme, At least these two exist on all systems: Adwaita, Raleigh\n" " \"name\": \"Adwaita\", //Use \"\" for default theme, At least these two exist on all systems: Adwaita, Raleigh\n"
" \"variant\": \"\" //Use \"\" for default variant, and \"dark\" for dark theme variant\n" " \"variant\": \"\" //Use \"\" for default variant, and \"dark\" for dark theme variant\n"

11
src/window.cc

@ -33,13 +33,14 @@ void Window::generate_keybindings() {
Window::Window() : box(Gtk::ORIENTATION_VERTICAL), notebook(directories), compiling(false) { Window::Window() : box(Gtk::ORIENTATION_VERTICAL), notebook(directories), compiling(false) {
DEBUG("start"); DEBUG("start");
set_title("juCi++"); set_title("juCi++");
set_default_size(600, 400);
set_events(Gdk::POINTER_MOTION_MASK|Gdk::FOCUS_CHANGE_MASK|Gdk::SCROLL_MASK); set_events(Gdk::POINTER_MOTION_MASK|Gdk::FOCUS_CHANGE_MASK|Gdk::SCROLL_MASK);
add(box);
configure(); configure();
set_default_size(Singleton::Config::window()->default_size.first, Singleton::Config::window()->default_size.second);
//PluginApi(&this->notebook, &this->menu); //PluginApi(&this->notebook, &this->menu);
add(box);
//TODO: Do not use deprecated ui_manager? And make menu shortcuts update when config.json is saved (in configure()) //TODO: Do not use deprecated ui_manager? And make menu shortcuts update when config.json is saved (in configure())
generate_keybindings(); generate_keybindings();
create_menu(); create_menu();
@ -51,8 +52,8 @@ Window::Window() : box(Gtk::ORIENTATION_VERTICAL), notebook(directories), compil
notebook_vbox.pack_start(notebook); notebook_vbox.pack_start(notebook);
notebook_vbox.pack_end(entry_box, Gtk::PACK_SHRINK); notebook_vbox.pack_end(entry_box, Gtk::PACK_SHRINK);
directory_and_notebook_panes.pack2(notebook_vbox, Gtk::SHRINK); directory_and_notebook_panes.pack2(notebook_vbox, Gtk::SHRINK);
directory_and_notebook_panes.set_position(120); directory_and_notebook_panes.set_position(static_cast<int>(0.2*Singleton::Config::window()->default_size.first));
vpaned.set_position(300); vpaned.set_position(static_cast<int>(0.75*Singleton::Config::window()->default_size.second));
vpaned.pack1(directory_and_notebook_panes, true, false); vpaned.pack1(directory_and_notebook_panes, true, false);
terminal_scrolled_window.add(*Singleton::terminal()); terminal_scrolled_window.add(*Singleton::terminal());

1
src/window.h

@ -19,6 +19,7 @@ public:
std::string theme_name; std::string theme_name;
std::string theme_variant; std::string theme_variant;
std::string version; std::string version;
std::pair<int, int> default_size;
boost::property_tree::ptree keybindings; boost::property_tree::ptree keybindings;
}; };

Loading…
Cancel
Save