Browse Source

BAB-37 #time 2h 30m #comment changed to regular pointers

master
tedjk 11 years ago
parent
commit
16032902cf
  1. 4
      juci/api.cc
  2. 4
      juci/api.h
  3. 15
      juci/plugins.py
  4. 19
      juci/plugins/plugins.py
  5. 3
      juci/plugins/snippet.py
  6. 8
      juci/window.cc

4
juci/api.cc

@ -1,7 +1,7 @@
#include "api.h" #include "api.h"
std::shared_ptr<Menu::Controller> PluginApi::menu_; Menu::Controller* PluginApi::menu_;
std::shared_ptr<Notebook::Controller> PluginApi::notebook_; Notebook::Controller* PluginApi::notebook_;
///////////////////////////// /////////////////////////////
//// API ServiceProvider //// //// API ServiceProvider ////

4
juci/api.h

@ -14,8 +14,8 @@ const std::string g_project_root("/home/forgie/app/juci/");
//////////////////// ////////////////////
class PluginApi { class PluginApi {
public: public:
static std::shared_ptr<Menu::Controller> menu_; static Menu::Controller* menu_;
static std::shared_ptr<Notebook::Controller> notebook_; static Notebook::Controller* notebook_;
static void InitPlugins(); static void InitPlugins();

15
juci/plugins.py

@ -1,20 +1,11 @@
#!/usr/bin/python #!/usr/bin/python
#snippet plugin #plugin handler
import juci_to_python_api import juci_to_python_api as juci, os, glob
import os
import glob
def loadplugins(): def loadplugins():
cwd = os.getcwd() cwd = os.getcwd()
plugin_files = glob.glob(cwd+"/plugins/*.py") plugin_files = glob.glob(cwd+"/plugins/*.py")
for current_file in plugin_files: for current_file in plugin_files:
(filepath, filename) = os.path.split(current_file) juci.initPlugin(current_file)
(name, extension) = filename.split(".")
if filename != "plugins.py":
print(filename+" ("+current_file+") loading...")
#juci_to_python_api.loadPlugin(current_file)
# juci_to_python_api.addMenuElement(name.capitalize())#, current_file)
juci_to_python_api.initPlugin(current_file)
print(filename+" loaded...")
loadplugins() loadplugins()

19
juci/plugins/plugins.py

@ -1,19 +0,0 @@
#!/usr/bin/python
#snippet plugin
import juci_to_python_api
import os
import glob
def loadplugins():
cwd = os.getcwd()
plugin_files = glob.glob(cwd+"/plugins/*.py")
for current_file in plugin_files:
(filepath, filename) = os.path.split(current_file)
(name, extension) = filename.split(".")
print(filename+" ("+current_file+") loading...")
#juci_to_python_api.loadPlugin(current_file)
# juci_to_python_api.addMenuElement(name.capitalize())#, current_file)
juci_to_python_api.initPlugin(current_file)
print(filename+" loaded...")
loadplugins()

3
juci/plugins/snippet.py

@ -1,7 +1,6 @@
#!/usr/bin/python #!/usr/bin/python
#snippet plugin #snippet plugin
import juci_to_python_api as juci import juci_to_python_api as juci, inspect
import inspect
def initPlugin(): def initPlugin():
juci.addMenuElement("Snippet") juci.addMenuElement("Snippet")

8
juci/window.cc

@ -17,11 +17,9 @@ Window::Window() :
[this]() { [this]() {
OnOpenFile(); OnOpenFile();
}); });
PluginApi::menu_ = std::shared_ptr<Menu::Controller>(&menu_); PluginApi::menu_ = &menu_;
PluginApi::notebook_ = &notebook_;
PluginApi::notebook_ = std::shared_ptr<Notebook::Controller>(&notebook_); PluginApi::InitPlugins();
PluginApi::InitPlugins();
add_accel_group(keybindings_.ui_manager_menu()->get_accel_group()); add_accel_group(keybindings_.ui_manager_menu()->get_accel_group());
add_accel_group(keybindings_.ui_manager_hidden()->get_accel_group()); add_accel_group(keybindings_.ui_manager_hidden()->get_accel_group());

Loading…
Cancel
Save