Horizon
grid_controller.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "nlohmann/json_fwd.hpp"
4 #include "common/common.hpp"
5 
6 namespace horizon {
7 using json = nlohmann::json;
9 public:
10  GridController(class MainWindow &win, class CanvasGL &ca);
11  void disable();
12  json serialize() const;
13  void load_from_json(const json &j);
14  void set_spacing_square(int64_t s);
15  uint64_t get_spacing_square() const;
16  void set_origin(const Coordi &c);
17 
18 private:
19  class SpinButtonDim *grid_spin_button_square = nullptr;
20  class SpinButtonDim *grid_spin_button_x = nullptr;
21  class SpinButtonDim *grid_spin_button_y = nullptr;
22 
23  class SpinButtonDim *grid_spin_button_origin_x = nullptr;
24  class SpinButtonDim *grid_spin_button_origin_y = nullptr;
25 
26  class MainWindow &main_window;
27  class CanvasGL &canvas;
28  void apply();
29 };
30 } // namespace horizon
Definition: canvas_gl.hpp:18
Definition: grid_controller.hpp:8
Definition: main_window.hpp:7
Definition: spin_button_dim.hpp:5
a class to store JSON values
Definition: json.hpp:166
zip_uint64_t uint64_t
zip_uint64_t_t typedef.
Definition: zip.hpp:108
zip_int64_t int64_t
zip_int64_t typedef.
Definition: zip.hpp:103
basic_json<> json
default JSON class
Definition: json_fwd.hpp:61