wxSizeEvent(3)

πŸ“¦
version 29.0.6 Β· 3 versions
, in ubuntu stonking

πŸ’– NAME πŸ’–

wxSizeEvent β€” a size event holds information about size change events of wxWindow. (This is the Erlang module definition, bestie, so you already know we're in wx land.)


✨ DESCRIPTION ✨

Okay so picture this: your window just got resized, and the EVT_SIZE handler function is literally the thing that gets called when that happens. No cap.

You may wish to use this for frames to resize their child windows as appropriate. Very "mom frame making sure all the baby windows are comfortable" energy. 🫢

Heads up! The size passed is of the whole window. If you want the area that's actually usable by the application, call wxWindow:getClientSize/1. Don't get it twisted. πŸ’…

When a window is resized, usually only a small part of the window is damaged, and you may only need to repaint that area. But β€” and this is the plot twist β€” if your drawing depends on the size of the window, you may need to clear the DC explicitly and repaint the whole window. In which case, you may need to call wxWindow:refresh/2 to invalidate the entire window. It's giving "start from scratch, babe." 😭

Important : Sizers (see overview_sizer) rely on size events to function correctly. Therefore, in a sizer-based layout, do not forget to call Skip on all size events you catch β€” and don't catch size events at all when you don't need to. This is not optional, bestie, this is the whole vibe check. πŸ”₯

See:

  • {Width,Height}
  • Overview events

This class is derived, and can use functions, from:

  • wxEvent

wxWidgets docs: wxSizeEvent

🌈 Events 🌈

Use wxEvtHandler:connect/3 with wxSizeEventType to subscribe to events of this type. Go get your notifications, queen. πŸ‘‘


πŸŽ€ DATA TYPES πŸŽ€

  • wxSize() :: #wxSize{}.
  • wxSizeEvent() :: wx:wx_object().
  • wxSizeEventType() :: size.

🧚 FUNCTIONS 🧚

  • getRect(This) -> {X :: integer(), Y :: integer(), W :: integer(), H :: integer()} when This :: wxSizeEvent().
getRect(This) ->
                 {X :: integer(),
                  Y :: integer(),
                  W :: integer(),
                  H :: integer()}
                 when This :: wxSizeEvent().
  • getSize(This) -> {W :: integer(), H :: integer()} when This :: wxSizeEvent().
getSize(This) -> {W :: integer(), H :: integer()}
                 when This :: wxSizeEvent().

Returns the entire size of the window generating the size change event. πŸ¦‹

This is the new total size of the window, i.e. the same size as would be returned by wxWindow:getSize/1 if it were called now. Use wxWindow:getClientSize/1 if you catch this event in a top level window such as wxFrame to find the size available for the window contents. Two different numbers, two different moods β€” pick the right one for your situation. ⭐


And that's the whole thing, bestie β€” every flag, every type, every signature, untouched, just vibing. Periodt. πŸ’œ

Signed off with love by Ericsson AB, wx 2.6, wxSizeEvent(3) β€” see you in the next manpage, mwah! πŸŽ€βœ¨

πŸ“¦ where this page comes from