File: sizable.hpp

package info (click to toggle)
ares 126-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 32,600 kB
  • sloc: cpp: 356,508; ansic: 20,394; makefile: 16; sh: 2
file content (20 lines) | stat: -rw-r--r-- 540 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#if defined(Hiro_Sizable)
struct mSizable : mObject {
  Declare(Sizable)

  auto collapsible() const -> bool;
  auto doSize() const -> void;
  auto geometry() const -> Geometry;
  virtual auto minimumSize() const -> Size;
  auto onSize(const function<void ()>& callback = {}) -> type&;
  virtual auto setCollapsible(bool collapsible = true) -> type&;
  virtual auto setGeometry(Geometry geometry) -> type&;

//private:
  struct State {
    bool collapsible = false;
    Geometry geometry;
    function<void ()> onSize;
  } state;
};
#endif