inline void initialize(device_context* dc, rect pr) { dc_ = dc; rect_ = pr = pr.normalize(); poffset_ = -pr.left_top(); prect_ = pr; mask_ = nullptr; canvas_ = std::make_shared<canvas_type>(pr.width(), pr.height()); }
inline void paint_area(const point& offset, rect rect) { poffset_ += offset; prect_ = rect.normalize(); mask_ = nullptr; }