CFormService



Form service implementation. Usually you don't have to override any methods of this class.

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

class CFormService :public virtual IFormService
{
protected:
    CForm *m_pForm;

    IControl *FindControlByTabOrder(const int tab_order);
    IControl *FindControlByTabOrder(IControl *parent, const int tab_order);
public:
    CFormService(CForm *form);
    virtual ~CFormService() = default;

    IWindow *getWindow() override;

    void setWindow(IWindow *value) override;
    void setRenderer(IRenderer *value) override;

    void Release() override;
    void UpdateTabOrders(const int old_tab_order, const int new_tab_order) override;
    String GenerateComponentName(IComponent *component) override;
    String GenerateControlName(IControl *control) override;
    bool MoveControl(IControl *control, const int before) override;
    void CleanupOnControlDetach(IControl *control) override;
    bool RegisterHotkey(IComponent *component, const KEY key, const bool ctrl, const bool alt, const bool shift, const bool is_down) override;
    bool UnregisterHotkey(IComponent *component, const KEY key, const bool ctrl, const bool alt, const bool shift, const bool is_down) override;
    bool UnregisterHotkeys(IComponent *component) override;
    bool RegisterHotkey(IControl *control, const KEY key, const bool ctrl, const bool alt, const bool shift, const bool is_down) override;
    bool UnregisterHotkey(IControl *control, const KEY key, const bool ctrl, const bool alt, const bool shift, const bool is_down) override;
    bool UnregisterHotkeys(IControl *control) override;
    void AlignControls() override;
    int GenerateTabOrder(IControl *control) override;
    void FreeResources() override;
    // Since 7.0.0
    bool RegisterMessageListener(IComponent *component, IWindowListenerOnMessage *listener) override;
    bool UnregisterMessageListener(IComponent *component, IWindowListenerOnMessage *listener) override;
    bool UnregisterMessageListeners(IComponent *component) override;
    // Since 9.0.0
    void ProcessControlDisable(IControl *control) override;
    void ProcessControlHide(IControl *control) override;
    void ProcessControlDetach(IControl *control) override;

    // Notifications from child controls
    void NotifyOnChildStyleChange(IControl *control) override;
    void NotifyOnChildFontChange(IControl *control) override;
    void NotifyOnChildTransform(IControl *control) override;
    void NotifyOnChildResize(IControl *control) override;
    void NotifyOnChildShow(IControl *control) override;
    void NotifyOnChildHide(IControl *control) override;
    void NotifyOnChildEnable(IControl *control) override;
    void NotifyOnChildDisable(IControl *control) override;

    // State change notifications
    void NotifyOnResize() override;
    void NotifyOnTransform() override;
    void NotifyOnTransformControls() override;
    void NotifyOnStyleChange() override;
    void NotifyOnFontChange() override;

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

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

    // Paint notifications
    void NotifyOnPaint(const MESSAGE_PAINT &m, bool &draw_children) override;
    void NotifyOnPaintEnd(const MESSAGE_PAINT &m) override;

    // Keyboard input notifications
    void NotifyOnKeyDown(const MESSAGE_KEY &m) override;
    void NotifyOnKeyUp(const MESSAGE_KEY &m) override;
    void NotifyOnChar(const MESSAGE_CHAR &m) override;
    void NotifyOnDeadChar(const MESSAGE_CHAR &m) override;

    // Mouse input notifications
    void NotifyOnMouseHover(const MESSAGE_MOUSE &m) override;
    void NotifyOnMouseLeave() override;
    void NotifyOnMouseMove(const MESSAGE_MOUSE &m) override;
    void NotifyOnLeftMouseButtonDown(const MESSAGE_MOUSE &m) override;
    void NotifyOnLeftMouseButtonUp(const MESSAGE_MOUSE &m) override;
    void NotifyOnLeftMouseButtonDoubleClick(const MESSAGE_MOUSE &m) override;
    void NotifyOnRightMouseButtonDown(const MESSAGE_MOUSE &m) override;
    void NotifyOnRightMouseButtonUp(const MESSAGE_MOUSE &m) override;
    void NotifyOnRightMouseButtonDoubleClick(const MESSAGE_MOUSE &m) override;
    void NotifyOnMiddleMouseButtonDown(const MESSAGE_MOUSE &m) override;
    void NotifyOnMiddleMouseButtonUp(const MESSAGE_MOUSE &m) override;
    void NotifyOnMiddleMouseButtonDoubleClick(const MESSAGE_MOUSE &m) override;
    void NotifyOnMouseVerticalWheel(const MESSAGE_MOUSE_WHEEL &m) override;
    void NotifyOnMouseHorizontalWheel(const MESSAGE_MOUSE_WHEEL &m) override;

    // Other input notifications
    void NotifyOnDropFiles(const MESSAGE_DROP_FILES &m, bool &accepted) override;
    void NotifyOnHotkey(const MESSAGE_HOTKEY &m) override;
    void NotifyOnGestureZoom(const MESSAGE_POSITION &m) override;
    void NotifyOnGesturePan(const MESSAGE_POSITION &m) override;
    void NotifyOnGestureRotate(const MESSAGE_POSITION &m) override;
    void NotifyOnGestureTwoFingerTap(const MESSAGE_POSITION &m) override;
    void NotifyOnGesturePressAndTap(const MESSAGE_POSITION &m) override;
    void NotifyOnGestureNotify() override;
    void NotifyOnTouch(const MESSAGE_TOUCH &m) override;

    // Application notifications
    void NotifyOnApplicationActivate() override;
    void NotifyOnApplicationDeactivate() override;
    void NotifyOnQueryEndSession(bool &restricted) override;
    void NotifyOnQueryOpen(bool &restricted) override;
    void NotifyOnEndSession(const MESSAGE_END_SESSION &m) override;
    void NotifyOnDeviceModeChange() override;
    void NotifyOnTimeChange() override;
    void NotifyOnInputLanguageChangeRequest(bool &restricted) override;
    void NotifyOnInputLanguageChange() override;
    void NotifyOnDisplayChange(const MESSAGE_SIZE &m) override;
    void NotifyOnThemeChange() override;
    void NotifyOnClipboardUpdate() override;
    // Since 2.0.0
    void NotifyOnTranslateChange() override;

    // Window notifications
    void NotifyOnCreate() override;
    void NotifyOnDestroy() override;
    void NotifyOnActivate(const MESSAGE_WINDOW_ACTIVATE &m) override;
    void NotifyOnDeactivate() override;
    void NotifyOnSetFocus() override;
    void NotifyOnKillFocus() override;
    void NotifyOnEnable() override;
    void NotifyOnDisable() override;
    void NotifyOnClose(CLOSE_ACTION &action) override;
    void NotifyOnShow() override;
    void NotifyOnHide() override;
    void NotifyOnMove(const MESSAGE_POSITION &m) override;
    void NotifyOnRestore(const MESSAGE_SIZE &m) override;
    void NotifyOnMinimize(const MESSAGE_SIZE &m) override;
    void NotifyOnMaximize(const MESSAGE_SIZE &m) override;
    void NotifyOnResizing(const MESSAGE_WINDOW_RESIZING &m) override;
    void NotifyOnMoving(const MESSAGE_RECT &m) override;
    void NotifyOnEnterSizeMove() override;
    void NotifyOnExitSizeMove() override;
    void NotifyOnHScroll(const MESSAGE_WINDOW_SCROLL &m) override;
    void NotifyOnVScroll(const MESSAGE_WINDOW_SCROLL &m) override;
    void NotifyOnLoseCapture() override;

    // Dialog box notifications(since 9.0.0)
    void NotifyOnDialogBoxActivate(IDialogBox *control) override;
    void NotifyOnDialogBoxDeactivate(IDialogBox *control) override;

    // Clipboard notifications(since 9.0.0)
    void NotifyOnPasteString(const MESSAGE_PASTE_STRING &m) override;
};
Namespace: nitisa
Include: Nitisa/Core/FormService.h