3 #include "pool/pool.hpp"
4 #include "pool/symbol.hpp"
8 #include "document/idocument_symbol.hpp"
14 bool has_object_type(ObjectType ty)
const override;
15 Symbol *get_symbol()
override;
18 Line *get_line(
const UUID &uu)
override;
20 Arc *get_arc(
const UUID &uu)
override;
23 void delete_junction(
const UUID &uu)
override;
24 Line *insert_line(
const UUID &uu)
override;
25 void delete_line(
const UUID &uu)
override;
26 Arc *insert_arc(
const UUID &uu)
override;
27 void delete_arc(
const UUID &uu)
override;
30 void delete_symbol_pin(
const UUID &uu)
override;
34 std::vector<Line *> get_lines()
override;
35 std::vector<Arc *> get_arcs()
override;
36 std::vector<const Pin *> get_pins()
override;
38 void rebuild(
bool from_undo =
false)
override;
40 bool set_property(ObjectType type,
const UUID &uu, ObjectProperty::ID property,
42 bool get_property(ObjectType type,
const UUID &uu, ObjectProperty::ID property,
44 bool get_property_meta(ObjectType type,
const UUID &uu, ObjectProperty::ID property,
47 std::string get_display_name(ObjectType type,
const UUID &uu)
override;
49 const Symbol *get_canvas_data();
50 std::pair<Coordi, Coordi> get_bbox()
override;
52 void reload_pool()
override;
56 const std::string &get_filename()
const override;
59 std::map<UUID, Text> *get_text_map()
override;
60 std::map<UUID, Polygon> *get_polygon_map()
override;
63 std::string m_filename;
68 HistoryItem(
const Symbol &s) : sym(s)
73 void history_push()
override;
74 void history_load(
unsigned int i)
override;
75 void save(
const std::string &suffix)
override;
76 void delete_autosave()
override;