diff options
| author | Tavmjong Bah <tavmjong@free.fr> | 2019-02-12 13:06:03 +0000 |
|---|---|---|
| committer | Tavmjong Bah <tavmjong@free.fr> | 2019-02-12 13:06:03 +0000 |
| commit | 61ed6873ac11170a8b8e9c5839fb4cb2d99c6838 (patch) | |
| tree | 86ae33d730fa839e545ed637b405b004c15ad043 /src | |
| parent | Change prefix on drag and drop functions. (diff) | |
| download | inkscape-61ed6873ac11170a8b8e9c5839fb4cb2d99c6838.tar.gz inkscape-61ed6873ac11170a8b8e9c5839fb4cb2d99c6838.zip | |
Block in window updating code. WIP
Diffstat (limited to 'src')
| -rw-r--r-- | src/inkscape-application.cpp | 13 | ||||
| -rw-r--r-- | src/inkscape-application.h | 3 | ||||
| -rw-r--r-- | src/inkscape-window.cpp | 1 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/inkscape-application.cpp b/src/inkscape-application.cpp index cbdacf64d..0ebc93f82 100644 --- a/src/inkscape-application.cpp +++ b/src/inkscape-application.cpp @@ -52,6 +52,19 @@ InkscapeApplication::InkscapeApplication() , _active_view(nullptr) {} +void +InkscapeApplication::update_windows(SPDocument* document) +{ + // Find windows: + auto it = _documents.find( document ); + if (it != _documents.end()) { + std::vector<InkscapeWindow*> windows = it->second; + std::cout << "InkscapeApplication::update_windows: windows: " << windows.size() << std::endl; + } else { + std::cout << "InkscapeApplication::update_windows: no windows found" << std::endl; + } +} + template<class T> ConcreteInkscapeApplication<T>::ConcreteInkscapeApplication() : T("org.inkscape.application.with_gui", diff --git a/src/inkscape-application.h b/src/inkscape-application.h index 25d1e9ace..3b84770cf 100644 --- a/src/inkscape-application.h +++ b/src/inkscape-application.h @@ -59,6 +59,9 @@ public: Inkscape::UI::View::View* get_active_view() { return _active_view; } void set_active_view(Inkscape::UI::View::View* view) { _active_view = view; } + // Update all windows connected to a document. + void update_windows(SPDocument* document); + // These are needed to cast Glib::RefPtr<Gtk::Application> to Glib::RefPtr<InkscapeApplication>, // Presumably, Gtk/Gio::Application takes care of ref counting in ConcreteInkscapeApplication // so we just provide dummies (and there is only one application in the application!). diff --git a/src/inkscape-window.cpp b/src/inkscape-window.cpp index 0da0dae15..68a8db819 100644 --- a/src/inkscape-window.cpp +++ b/src/inkscape-window.cpp @@ -131,6 +131,7 @@ InkscapeWindow::on_focus_in_event(GdkEventFocus* event) _app->set_active_document(_document); _app->set_active_view(_desktop); _app->set_active_selection(_desktop->selection); + // _app->update_windows(_document); } else { std::cerr << "Inkscapewindow::on_focus_in_event: app is nullptr!" << std::endl; } |
