Implements GroupFold widget.
You can find more information in comments below. Overrided methods can be found in corresponding base classes and interfaces.
class CGroupFold :public virtual IGroupFold, public CControl
{
public:
enum class State
{
FoldedNormal,
FoldedHovered,
FoldedDisabled,
Normal,
Hovered,
Disabled
};
public:
void(*OnToggle)(IControl *sender); // Event called when folded state changed
// IControl getters
IControl *getControl(const int index) override;
IControl *getControl(const String &name) override;
IControl *getControl(const PointF &position) override;
RectF getClientRect() override;
RectF getRenderRect() override;
CursorType getCursor() override;
// IControl setters
bool setDPI(const Point &value) override;
// IControl methods
void Refresh(const bool refresh_children) override;
// IGroupFold getters
bool isFolded() override;
String getCaption() override;
// IGroupFold setters
bool setFolded(const bool value) override;
bool setCaption(const String &value) override;
// IGroupFold methods
void Toggle() override;
CGroupFold();
CGroupFold(IControl *parent);
CGroupFold(IForm *parent);
// Layout getters
int getShadowRadius(const State state) const;
Color getShadowColor(const State state) const;
PointF getShadowShift(const State state) const;
RectF getBorderWidth(const State state) const;
RectF getBorderRadius(const State state) const;
BorderColor getBorderColor(const State state) const;
Color getBackgroundColor(const State state) const;
Gradient *getBackgroundGradient(const State state);
TextAlign getCaptionAlign() const;
bool isCaptionPlusLeft() const;
Color getCaptionColor(const State state) const;
float getCaptionMargin(const State state) const;
PointF getCaptionPadding(const State state) const;
RectF getCaptionBorderWidth(const State state) const;
RectF getCaptionBorderRadius(const State state) const;
BorderColor getCaptionBorderColor(const State state) const;
Color getCaptionBackgroundColor(const State state) const;
Gradient *getCaptionBackgroundGradient(const State state);
float getPlusSize(const State state) const;
float getPlusPadding(const State state) const;
RectF getPadding(const State state) const;
bool isUseMask() const;
// Layout setters
bool setShadowRadius(const State state, const int value);
bool setShadowColor(const State state, const Color &value);
bool setShadowShift(const State state, const PointF &value);
bool setBorderWidth(const State state, const RectF &value);
bool setBorderRadius(const State state, const RectF &value);
bool setBorderColor(const State state, const BorderColor &value);
bool setBackgroundColor(const State state, const Color &value);
bool setCaptionAlign(const TextAlign value);
bool setCaptionPlusLeft(const bool value);
bool setCaptionColor(const State state, const Color &value);
bool setCaptionMargin(const State state, const float value);
bool setCaptionPadding(const State state, const PointF &value);
bool setCaptionBorderWidth(const State state, const RectF &value);
bool setCaptionBorderRadius(const State state, const RectF &value);
bool setCaptionBorderColor(const State state, const BorderColor &value);
bool setCaptionBackgroundColor(const State state, const Color &value);
bool setPlusSize(const State state, const float value);
bool setPlusPadding(const State state, const float value);
bool setPadding(const State state, const RectF &value);
bool setUseMask(const bool value);
};
Namespace: | nitisa::standard |
Include: | Standard/Controls/GroupFold/GroupFold.h |