diff --git a/juci/notebook.cc b/juci/notebook.cc index 47dd4ef..c14f17b 100644 --- a/juci/notebook.cc +++ b/juci/notebook.cc @@ -157,7 +157,9 @@ bool Notebook::Controller::OnKeyRelease(GdkEventKey* key) { } bool Notebook::Controller::GeneratePopup(int key_id) { - INFO("Notebook genereate popup, getting iters"); + INFO("Notebook genereate popup, getting iters"); + std::string path = text_vec_.at(CurrentPage())->path(); + if(!LeagalExtension(path.substr(path.find_last_of(".") + 1))) return false; // Get function to fill popup with suggests item vector under is for testing Gtk::TextIter beg = CurrentTextView().get_buffer()->get_insert()->get_iter(); Gtk::TextIter end = CurrentTextView().get_buffer()->get_insert()->get_iter(); @@ -712,3 +714,19 @@ void Notebook::Controller::AskToSaveDialog() { } } +bool Notebook::Controller::LeagalExtension(std::string e) { + std::transform(e.begin(), e.end(),e.begin(), ::tolower); + std::vector extensions = + text_vec_.at(CurrentPage).leagalParseExtensions(); + + if(std::find(extensions.begin(), extensions.end(), e)) { + + // if(e=="c" ||e=="cc" ||e=="cpp" ||e=="cxx" || e=="c++"|| + // e=="h" ||e=="hh" ||e=="hpp" ||e=="hxx" || e=="h++"){ + DEBUG("Leagal extension"); + return true; + } + DEBUG("Ileagal extension"); + return false; +} + diff --git a/juci/notebook.h b/juci/notebook.h index bf5440c..f5ef2ba 100644 --- a/juci/notebook.h +++ b/juci/notebook.h @@ -89,6 +89,7 @@ namespace Notebook { int ¤t_x, int ¤t_y); void AskToSaveDialog(); + bool LeagalExtension(std::string extension); Glib::RefPtr m_refBuilder; Glib::RefPtr refActionGroup; Source::Config source_config_; diff --git a/juci/window.cc b/juci/window.cc index ba4c391..b88fe0a 100644 --- a/juci/window.cc +++ b/juci/window.cc @@ -95,7 +95,6 @@ Window::Window() : running.unlock(); } }); - this->signal_button_release_event(). connect(sigc::mem_fun(*this,&Window::OnMouseRelease),false); terminal_.Terminal().signal_button_release_event().