Horizon
clipboard.hpp
1 #pragma once
2 #include "buffer.hpp"
3 #include "canvas/selectables.hpp"
4 #include "document/documents.hpp"
5 #include "schematic/line_net.hpp"
6 #include <gtkmm.h>
7 #include <set>
8 
9 namespace horizon {
10 
18 class ClipboardManager {
19 public:
20  ClipboardManager(Documents &ds);
26  void copy(std::set<SelectableRef> selection, const Coordi &cursor_pos);
27 
28 private:
29  void on_clipboard_get(Gtk::SelectionData &selection_data, guint /* info */);
30  void on_clipboard_clear();
31  Buffer buffer;
32  Documents docs;
33  Coordi cursor_pos;
34 };
35 } // namespace horizon
horizon::ClipboardManager::copy
void copy(std::set< SelectableRef > selection, const Coordi &cursor_pos)
Copys the objects specified by selection to the buffer.
horizon::Documents
Tools use this class to actually access the core.
Definition: documents.hpp:13
horizon::Coord< int64_t >
horizon::Buffer
Definition: buffer.hpp:32