CComponentService



Implements base component service. Derive your component service from this class.

You can find more information in comments below. Overrided methods can be found in corresponding base interface.

class CComponentService :public virtual IComponentService
{
public:
    CComponentService(CComponent *component); // Constructor
    virtual ~CComponentService() = default;

    void setName(const String &value) override;
    void setForm(IForm *value) override;

    void Release() override;
    void SendChangeNotification() override;
    void FreeResources() override;

    // State change notifications
    void NotifyOnAttach() override;
    void NotifyOnDetaching() override;
    void NotifyOnDetach() override;

    // Component notifications
    void NotifyOnComponentAttach(IComponent *component) override;
    void NotifyOnComponentDetach(IComponent *component) override;
    void NotifyOnComponentChange(IComponent *component) override;

    // Control notifications
    void NotifyOnControlAttach(IControl *control) override;
    void NotifyOnControlDetach(IControl *control) override;
    void NotifyOnControlChange(IControl *control) override;
    void NotifyOnControlSetFocus(IControl *control, const MESSAGE_FOCUS &m) override;
    void NotifyOnControlKillFocus(IControl *control) override;
    void NotifyOnControlSetCaptureKeyboard(IControl *control) override;
    void NotifyOnControlKillCaptureKeyboard(IControl *control) override;
    void NotifyOnControlSetCaptureMouse(IControl *control) override;
    void NotifyOnControlKillCaptureMouse(IControl *control) override;
    void NotifyOnControlSetModal(IControl *control) override;
    void NotifyOnControlKillModal(IControl *control) override;

    // Other input notifications
    void NotifyOnHotkey(const MESSAGE_HOTKEY &m) override;

    // Application notifications
    void NotifyOnApplicationActivate() override;
    void NotifyOnApplicationDeactivate() override;
    void NotifyOnTimeChange() override;
    void NotifyOnInputLanguageChange() override;
    void NotifyOnDisplayChange(const MESSAGE_SIZE &m) override;
    void NotifyOnThemeChange() override;
    void NotifyOnClipboardUpdate() override;
    // Since 2.0.0
    void NotifyOnTranslateChange() override;

    // Form/window notifications
    void NotifyOnFormActivate(const MESSAGE_WINDOW_ACTIVATE &m) override;
    void NotifyOnFormDeactivate() override;
    void NotifyOnFormSetFocus() override;
    void NotifyOnFormKillFocus() override;
    void NotifyOnFormEnable() override;
    void NotifyOnFormDisable() override;
    void NotifyOnFormShow() override;
    void NotifyOnFormHide() override;
    void NotifyOnFormMove(const MESSAGE_POSITION &m) override;
    void NotifyOnFormRestore(const MESSAGE_SIZE &m) override;
    void NotifyOnFormMinimize(const MESSAGE_SIZE &m) override;
    void NotifyOnFormMaximize(const MESSAGE_SIZE &m) override;
    void NotifyOnFormEnterSizeMove() override;
    void NotifyOnFormExitSizeMove() override;

    // Dialog box notifications(since 9.0.0)
    void NotifyOnDialogBoxActivate(IDialogBox *control) override;
    void NotifyOnDialogBoxDeactivate(IDialogBox *control) override;
};
Namespace: nitisa
Include: Nitisa/Core/ComponentService.h