diff --git a/juci/api.cc b/juci/api.cc index 0ae1587..6a5f0a4 100644 --- a/juci/api.cc +++ b/juci/api.cc @@ -1,4 +1,5 @@ #include "api.h" +#include "logging.h" Menu::Controller* PluginApi::menu_; Notebook::Controller* PluginApi::notebook_; @@ -13,8 +14,6 @@ PluginApi::PluginApi(Menu::Controller& menu_ctl_, } PluginApi::~PluginApi() { - delete menu_; - delete notebook_; menu_ = NULL; notebook_ = NULL; } @@ -39,7 +38,7 @@ void PluginApi::ReplaceWord(std::string word) { } void PluginApi::ReplaceLine(std::string line) { - std::cout << "unimplemented: " << __func__ << std::endl; + WARNING("use of unimplemented method"); } std::string PluginApi::GetWord() { diff --git a/juci/juci.cc b/juci/juci.cc index 199d97e..cedf99d 100644 --- a/juci/juci.cc +++ b/juci/juci.cc @@ -1,14 +1,19 @@ #include "window.h" #include "logging.h" +void init_logging() { + add_common_attributes(); + add_file_log(keywords::file_name = "juci.log", + keywords::auto_flush = true); + INFO("Logging initalized"); +} + int main(int argc, char *argv[]) { Glib::RefPtr app = Gtk::Application::create( argc, argv, "no.sout.juci"); - - add_file_log("juci.log"); - INFO("Logging initalized"); + init_logging(); Window window; return app->run(window); } diff --git a/juci/logging.h b/juci/logging.h index f6cdc55..c00f0d2 100644 --- a/juci/logging.h +++ b/juci/logging.h @@ -12,11 +12,17 @@ using namespace boost::log; -#define TRACE(x) BOOST_LOG_TRIVIAL(trace) << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; -#define DEBUG(x) BOOST_LOG_TRIVIAL(debug) << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; -#define INFO(x) BOOST_LOG_TRIVIAL(info) << __func__ << "(" << __LINE__ << "): \"" x << "\""; -#define WARNING(x) BOOST_LOG_TRIVIAL(warning) << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; -#define ERROR(x) BOOST_LOG_TRIVIAL(error) << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; -#define FATAL(x) BOOST_LOG_TRIVIAL(fatal) << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define TRACE_VAR(x) BOOST_LOG_TRIVIAL(trace) << "** Trace: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define DEBUG_VAR(x) BOOST_LOG_TRIVIAL(debug) << "** Debug: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define INFO_VAR(x) BOOST_LOG_TRIVIAL(info) << "** Info: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define WARNING_VAR(x) BOOST_LOG_TRIVIAL(warning) << "** Warning: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define FATAL_VAR(x) BOOST_LOG_TRIVIAL(fatal) << "** Fatal: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define ERROR_VAR(x) BOOST_LOG_TRIVIAL(error) << "** Error: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): " << #x << "=<" << x << ">"; +#define TRACE(x) BOOST_LOG_TRIVIAL(trace) << "** Trace: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; +#define DEBUG(x) BOOST_LOG_TRIVIAL(debug) << "** Debug: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; +#define INFO(x) BOOST_LOG_TRIVIAL(info) << "** Info: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; +#define WARNING(x) BOOST_LOG_TRIVIAL(warning) << "** Warning: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; +#define FATAL(x) BOOST_LOG_TRIVIAL(fatal) << "** Fatal: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; +#define ERROR(x) BOOST_LOG_TRIVIAL(error) << "** Error: " << __FILE__ << "@" << __func__ << "(" << __LINE__ << "): \"" << x << "\""; #endif // JUCI_LOGGING_H_ diff --git a/juci/source.cc b/juci/source.cc index ea05e9c..e40f07c 100644 --- a/juci/source.cc +++ b/juci/source.cc @@ -362,6 +362,7 @@ void Source::Controller::OnOpenFile(const string &filepath) { if (!go) { std::thread parse([this]() { if (parsing.try_lock()) { + INFO("Starting parsing"); while (true) { const std::string raw = buffer()->get_text().raw(); std::map buffers; @@ -376,6 +377,7 @@ void Source::Controller::OnOpenFile(const string &filepath) { } } parsing.unlock(); + INFO("Parsing completed"); } }); parse.detach(); @@ -385,10 +387,12 @@ void Source::Controller::OnOpenFile(const string &filepath) { buffer()->signal_begin_user_action().connect([this]() { if (go) { syntax.lock(); + INFO("Updating syntax"); view(). OnUpdateSyntax(model().ExtractTokens(0, buffer()->get_text().size()), model().config()); go = false; + INFO("Syntax updated"); syntax.unlock(); } });