xtd 0.2.0
brush.h
Go to the documentation of this file.
1 #pragma once
5 #include "../drawing_export.h"
6 #include <xtd/iequatable>
7 #include <xtd/object>
8 #include <xtd/ustring>
9 #include <cstdint>
10 #include <memory>
11 #include <ostream>
12 
14 namespace xtd {
16  namespace drawing {
33  class drawing_export_ brush : public xtd::object, public xtd::iequatable<brush> {
34  struct data;
35 
36  public:
38  brush(const brush& value);
39  brush& operator =(const brush& value);
40  ~brush();
42 
44 
48  intptr handle() const noexcept;
50 
52 
54  bool equals(const brush& value) const noexcept override;
55 
58  xtd::ustring to_string() const noexcept override;
60 
61  protected:
63 
66  brush();
68 
70 
74  void set_native_brush(intptr brush);
76 
77  private:
78  std::shared_ptr<data> data_;
79  };
80  }
81 }
intmax_t intptr
Represent a pointer or a handle.
Definition: types.h:151
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:46
std::string to_string(const date_time &value, const std::string &fmt, const std::locale &loc)
Convert a specified value into a string with specified format and locale.
Definition: date_time.h:1063
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition: iequatable.h:18
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes...
Definition: object.h:32
Defines objects used to fill the interiors of graphical shapes such as rectangles, ellipses, pies, polygons, and paths.
Definition: brush.h:33