CCoolBar


Implements CoolBar control.

You can find more information in comments below. Overrided methods can be found in corresponding base classes and interfaces.

class CCoolBar :public virtual ICoolBar, public CDialogBox
{
public:
    enum class State // Possible states of widget parts 
    {
        Normal, // Normal state 
        Hovered, // Part is under mouse pointer 
        Down, // Mouse button was pressed and not yet released when mouse pointer was over a part 
        Disabled // Part is disabled 
    };

    enum class MoverKind // Supported mover kind 
    {
        Flat,
        Line,
        DoubleLine,
        Dots,
        TripleDots
    };
public:
    static const String TranslateCategory; // Category used for internationalization. Defined as L"standard::CoolBar" 
    static const String TextAddOrRemoveButtons; // Text displayed on button responsible for display list of child controls visibility management. Defined as L"Add or Remove Buttons" 
    static const String TextWidgetI; // Widget caption displayed when the widget is not supported by assigned visibility manager. Defined as L"Widget #{i}" 

    // 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;
    bool isAcceptControl() override;
    bool isAcceptControl(IControl *control) override;
    bool isAcceptBubbledEvents() override;
    bool hasExtra() override;

    // IControl setters 
    bool setAlign(const Align value) override; // Align::Client is not allowed 
    bool setDPI(const Point &value) override;

    // IControl methods 
    void Release() override;

    // ICoolBar getters 
    Orientation getOrientation() override;
    float getStickDistance() override;
    bool isAutoAlign() override;
    bool isLocked() override;
    bool isResizable() override;
    IVisibilityManager *getVisibilityManager() override;
    PointF getResizeLimits() override;

    // ICoolBar setters 
    bool setOrientation(const Orientation value) override;
    bool setStickDistance(const float value, const float tolerance = ntl::Tolerance<float>) override;
    bool setAutoAlign(const bool value) override;
    bool setLocked(const bool value) override;
    bool setResizable(const bool value) override;
    bool setVisibilityManager(IVisibilityManager *value) override;

    // IDialogBox getters 
    Color getBackgroundColor() override;
    String getCaption() override;
    WindowState getState() override;
    RectF getBorderWidth() override;
    bool hasCloseBox() override;
    bool hasMaximizeBox() override;
    bool hasMinimizeBox() override;
    bool hasSizeBox() override;
    bool hasSystemMenu() override;
    bool hasBorder() override;
    bool hasCaption() override;
    bool isPopup() override;

    // IDialogBox setters 
    bool setBackgroundColor(const Color &value) override;
    bool setCaption(const String &value) override;
    bool setClientSize(const Point &value) override;
    bool setState(const WindowState value) override;
    bool setBorderWidth(const RectF &value) override;
    bool setHasCloseBox(const bool value) override;
    bool setHasMaximizeBox(const bool value) override;
    bool setHasMinimizeBox(const bool value) override;
    bool setHasSizeBox(const bool value) override;
    bool setHasSystemMenu(const bool value) override;
    bool setHasBorder(const bool value) override;
    bool setHasCaption(const bool value) override;
    bool setIsPopup(const bool value) override;

    // IDialogBox methods 
    bool Hide() override;
    bool Maximize() override;
    bool Minimize() override;
    bool Restore() override;

    CCoolBar();
    CCoolBar(IForm *parent);
    CCoolBar(IControl *parent);
    ~CCoolBar() override;

    // Getters 
    bool isMoverAlwaysVisible() const;
    bool isExtraAlwaysVisible() const;
    MoverKind getMoverKind() const;
    RectF getOuterBorderWidth() const;
    BorderColor getOuterBorderColor() const;
    RectF getInnerBorderWidth() const;
    BorderColor getInnerBorderColor() const;
    RectF getPadding() const;
    Gradient *getBackgroundGradient();
    RectF getMoverMargin() const;
    RectF getMoverBorderWidth() const;
    RectF getMoverPadding() const;
    BorderColor getMoverBorderColor(const State state) const;
    Color getMoverBackgroundColor(const State state) const;
    Gradient *getMoverBackgroundGradient(const State state);
    Color getMoverForeground1Color(const State state) const;
    Color getMoverForeground2Color(const State state) const;
    RectF getExtraMargin() const;
    RectF getExtraBorderWidth() const;
    RectF getExtraPadding() const;
    float getExtraSize() const;
    BorderColor getExtraBorderColor(const State state) const;
    Color getExtraBackgroundColor(const State state) const;
    Gradient *getExtraBackgroundGradient(const State state);
    Color getExtraColor(const State state) const;
    PointF getExtraListConstraints() const;
    RectF getExtraListOuterBorderWidth() const;
    BorderColor getExtraListOuterBorderColor() const;
    RectF getExtraListInnerBorderWidth() const;
    BorderColor getExtraListInnerBorderColor() const;
    RectF getExtraListPadding() const;
    Color getExtraListBackgroundColor() const;
    Gradient *getExtraListBackgroundGradient();
    int getExtraListShadowRadius() const;
    PointF getExtraListShadowShift() const;
    Color getExtraListShadowColor() const;
    RectF getExtraListButtonPadding() const;
    RectF getExtraListButtonBorderWidth() const;
    BorderColor getExtraListButtonBorderColor(const State state) const;
    Color getExtraListButtonBackgroundColor(const State state) const;
    Gradient *getExtraListButtonBackgroundGradient(const State state);
    Color getExtraListButtonColor(const State state) const;
    PointF getToggleListConstraints() const;
    RectF getToggleListOuterBorderWidth() const;
    BorderColor getToggleListOuterBorderColor() const;
    RectF getToggleListInnerBorderWidth() const;
    BorderColor getToggleListInnerBorderColor() const;
    RectF getToggleListPadding() const;
    Color getToggleListBackgroundColor() const;
    Gradient *getToggleListBackgroundGradient();
    int getToggleListShadowRadius() const;
    PointF getToggleListShadowShift() const;
    Color getToggleListShadowColor() const;
    float getToggleListIconPadding() const;
    RectF getToggleListElementPadding() const;
    RectF getToggleListElementBorderWidth() const;
    BorderColor getToggleListElementBorderColor(const State state) const;
    Color getToggleListElementBackgroundColor(const State state) const;
    Gradient *getToggleListElementBackgroundGradient(const State state);
    Color getToggleListElementColor(const State state) const;

    // Setters 
    bool setExtraListScroll(IBuiltInScroll *value); // Assign new scroll used in extra list. Set nullptr to use default one. Should not be the same as toggle list scroll. Old one will be destroyed automatically 
    bool setToggleListScroll(IBuiltInScroll *value); // Assign new scroll used in toggle list. Set nullptr to use default one. Should not be the same as extra list scroll. Old one will be destroyed automatically 
    bool setMoverAlwaysVisible(const bool value);
    bool setExtraAlwaysVisible(const bool value);
    bool setMoverKind(const MoverKind value);
    bool setOuterBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setOuterBorderColor(const BorderColor &value);
    bool setInnerBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setInnerBorderColor(const BorderColor &value);
    bool setPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setMoverMargin(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setMoverBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setMoverPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setMoverBorderColor(const State state, const BorderColor &value);
    bool setMoverBackgroundColor(const State state, const Color &value);
    bool setMoverForeground1Color(const State state, const Color &value);
    bool setMoverForeground2Color(const State state, const Color &value);
    bool setExtraMargin(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraSize(const float value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraBorderColor(const State state, const BorderColor &value);
    bool setExtraBackgroundColor(const State state, const Color &value);
    bool setExtraColor(const State state, const Color &value);
    bool setExtraListConstraints(const PointF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListOuterBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListOuterBorderColor(const BorderColor &value);
    bool setExtraListInnerBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListInnerBorderColor(const BorderColor &value);
    bool setExtraListPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListBackgroundColor(const Color &value);
    bool setExtraListShadowRadius(const int value);
    bool setExtraListShadowShift(const PointF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListShadowColor(const Color &value);
    bool setExtraListButtonPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListButtonBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setExtraListButtonBorderColor(const State state, const BorderColor &value);
    bool setExtraListButtonBackgroundColor(const State state, const Color &value);
    bool setExtraListButtonColor(const State state, const Color &value);
    bool setToggleListConstraints(const PointF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListOuterBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListOuterBorderColor(const BorderColor &value);
    bool setToggleListInnerBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListInnerBorderColor(const BorderColor &value);
    bool setToggleListPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListBackgroundColor(const Color &value);
    bool setToggleListShadowRadius(const int value);
    bool setToggleListShadowShift(const PointF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListShadowColor(const Color &value);
    bool setToggleListIconPadding(const float value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListElementPadding(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListElementBorderWidth(const RectF &value, const float tolerance = ntl::Tolerance<float>);
    bool setToggleListElementBorderColor(const State state, const BorderColor &value);
    bool setToggleListElementBackgroundColor(const State state, const Color &value);
    bool setToggleListElementColor(const State state, const Color &value);
};
Namespace: nitisa::standard
Include: Standard/Controls/CoolBar/CoolBar.h