Horizon
duplicate_part.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "util/uuid.hpp"
4 #include "duplicate_base.hpp"
5 
6 namespace horizon {
7 class DuplicatePartWidget : public Gtk::Box, public DuplicateBase {
8 public:
9  DuplicatePartWidget(class Pool &p, const UUID &part_uuid, Gtk::Box *ubox);
10  UUID duplicate(std::vector<std::string> *filenames) override;
11 
12  static UUID duplicate_package(class Pool &pool, const UUID &uu, const std::string &new_dir,
13  const std::string &new_name, std::vector<std::string> *filenames = nullptr);
14  bool check_valid() override;
15 
16 private:
17  class Pool &pool;
18  const class Part &part;
19  Gtk::Entry *mpn_entry = nullptr;
20  Gtk::Entry *manufacturer_entry = nullptr;
21  class LocationEntry *location_entry = nullptr;
22  Gtk::Grid *grid = nullptr;
23 
24  class DuplicatePackageWidget *dpw = nullptr;
25  class DuplicateEntityWidget *dew = nullptr;
26 };
27 } // namespace horizon
Definition: duplicate_base.hpp:5
Definition: duplicate_entity.hpp:7
Definition: duplicate_part.cpp:16
Definition: duplicate_part.hpp:7
Definition: location_entry.hpp:6
Definition: part.hpp:14
Stores objects (Unit, Entity, Symbol, Part, etc.) from the pool.
Definition: pool.hpp:22
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16