Browse Source

Make install working

merge-requests/365/head
Jørgen Lien Sellæg 11 years ago
parent
commit
b88702f94a
  1. 3
      CMakeLists.txt
  2. 21
      src/config.cc
  3. 2
      src/juci.cc
  4. 1
      src/menu.cc
  5. 1
      src/menu.h
  6. 4
      src/singletons.h

3
CMakeLists.txt

@ -16,4 +16,5 @@ add_subdirectory("src")
install(
DIRECTORY "config" "plugins"
DESTINATION ${juci_config_folder}
USE_SOURCE_PERMISSIONS)
USE_SOURCE_PERMISSIONS)
install(CODE "FILE(MAKE_DIRECTORY ${juci_config_filder}/log)")

21
src/config.cc

@ -3,11 +3,12 @@
#include "logging.h"
#include <fstream>
#include <string>
#include <exception>
MainConfig::MainConfig() {
INFO("Reading config file");
std::string path(getenv("HOME")); // TODO WINDOWS
boost::property_tree::json_parser::read_json(path + "/.juci/config/config.json", cfg_);
boost::property_tree::json_parser::read_json(Singleton::config_dir() + "config.json", cfg_);
INFO("Config file read");
GenerateSource();
GenerateKeybindings();
@ -74,13 +75,17 @@ void MainConfig::GenerateTerminalCommands() {
}
void MainConfig::GenerateKeybindings() {
auto menu=Singleton::menu();
DEBUG("Fetching keybindings");
auto menu = Singleton::menu();
boost::filesystem::path path(Singleton::config_dir() + "menu.xml");
if (!boost::filesystem::is_regular_file(path)) {
std::cerr << "menu.xml not found" << std::endl;
throw;
}
std::ifstream input(path.string());
std::string line;
std::ifstream menu_xml("menu.xml");
if (menu_xml.is_open()) {
while (getline(menu_xml, line))
menu->ui+=line;
if (input.is_open()) {
while (getline(input, line))
menu->ui += line;
}
boost::property_tree::ptree keys_json = cfg_.get_child("keybindings");
for (auto &i : keys_json) {

2
src/juci.cc

@ -3,7 +3,7 @@
void init_logging() {
add_common_attributes();
add_file_log(keywords::file_name = "juci.log",
add_file_log(keywords::file_name = Singleton::log_dir() + "juci.log",
keywords::auto_flush = true);
INFO("Logging initalized");
}

1
src/menu.cc

@ -1,4 +1,5 @@
#include "menu.h"
#include "logging.h"
#include <iostream>
Menu::Menu() : box(Gtk::ORIENTATION_VERTICAL) {

1
src/menu.h

@ -4,7 +4,6 @@
#include <string>
#include <unordered_map>
#include <gtkmm.h>
#include "logging.h"
class Menu {
public:

4
src/singletons.h

@ -6,6 +6,7 @@
#include "terminal.h"
#include "notebook.h"
#include "menu.h"
#include <string>
class Singleton {
public:
@ -19,7 +20,8 @@ public:
static std::unique_ptr<Terminal::Config> terminal_;
static std::unique_ptr<Directories::Config> directories_;
};
static std::string config_dir() { return std::string(getenv("HOME")) + "/.juci/config/"; }
static std::string log_dir() { return std::string(getenv("HOME")) + "/.juci/log/"; }
static Terminal::Controller *terminal();
static Menu *menu();
private:

Loading…
Cancel
Save