Class WNDCLASSEX

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<WNDCLASSEX>
org.lwjgl.system.windows.WNDCLASSEX
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class WNDCLASSEX extends org.lwjgl.system.Struct<WNDCLASSEX> implements org.lwjgl.system.NativeResource
Contains the window class attributes that are registered by the User32.RegisterClassEx(org.lwjgl.system.windows.WNDCLASSEX) function.

Layout


 struct WNDCLASSEX {
     UINT cbSize();
     UINT style();
     WNDPROC lpfnWndProc();
     int cbClsExtra();
     int cbWndExtra();
     HINSTANCE hInstance();
     HICON hIcon();
     HCURSOR hCursor();
     HBRUSH hbrBackground();
     LPCTSTR lpszMenuName();
     LPCTSTR lpszClassName();
     HICON hIconSm();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • CBSIZE

      public static final int CBSIZE
      The struct member offsets.
    • STYLE

      public static final int STYLE
      The struct member offsets.
    • LPFNWNDPROC

      public static final int LPFNWNDPROC
      The struct member offsets.
    • CBCLSEXTRA

      public static final int CBCLSEXTRA
      The struct member offsets.
    • CBWNDEXTRA

      public static final int CBWNDEXTRA
      The struct member offsets.
    • HINSTANCE

      public static final int HINSTANCE
      The struct member offsets.
    • HICON

      public static final int HICON
      The struct member offsets.
    • HCURSOR

      public static final int HCURSOR
      The struct member offsets.
    • HBRBACKGROUND

      public static final int HBRBACKGROUND
      The struct member offsets.
    • LPSZMENUNAME

      public static final int LPSZMENUNAME
      The struct member offsets.
    • LPSZCLASSNAME

      public static final int LPSZCLASSNAME
      The struct member offsets.
    • HICONSM

      public static final int HICONSM
      The struct member offsets.
  • Constructor Details

    • WNDCLASSEX

      public WNDCLASSEX(ByteBuffer container)
      Creates a WNDCLASSEX instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

      The created instance holds a strong reference to the container object.

  • Method Details

    • sizeof

      public int sizeof()
      Specified by:
      sizeof in class org.lwjgl.system.Struct<WNDCLASSEX>
    • cbSize

      public int cbSize()
      the size, in bytes, of this structure
    • style

      public int style()
      the class style(s)
    • lpfnWndProc

      public WindowProc lpfnWndProc()
      a pointer to the window procedure
    • cbClsExtra

      public int cbClsExtra()
      the number of extra bytes to allocate following the window-class structure. The system initializes the bytes to zero.
    • cbWndExtra

      public int cbWndExtra()
      the number of extra bytes to allocate following the window instance. The system initializes the bytes to zero.
    • hInstance

      public long hInstance()
      a handle to the instance that contains the window procedure for the class
    • hIcon

      public long hIcon()
      a handle to the class icon. This member must be a handle to an icon resource. If this member is NULL, the system provides a default icon.
    • hCursor

      public long hCursor()
      a handle to the class cursor. This member must be a handle to a cursor resource. If this member is NULL, an application must explicitly set the cursor shape whenever the mouse moves into the application's window.
    • hbrBackground

      public long hbrBackground()
      a handle to the class background brush. This member can be a handle to the brush to be used for painting the background, or it can be a color value. When this member is NULL, an application must paint its own background whenever it is requested to paint in its client area.
    • lpszMenuName

      @Nullable public ByteBuffer lpszMenuName()
      pointer to a null-terminated character string that specifies the resource name of the class menu, as the name appears in the resource file. If this member is NULL, windows belonging to this class have no default menu.
    • lpszMenuNameString

      @Nullable public String lpszMenuNameString()
      pointer to a null-terminated character string that specifies the resource name of the class menu, as the name appears in the resource file. If this member is NULL, windows belonging to this class have no default menu.
    • lpszClassName

      public ByteBuffer lpszClassName()
      a pointer to a null-terminated string or is an atom
    • lpszClassNameString

      public String lpszClassNameString()
      a pointer to a null-terminated string or is an atom
    • hIconSm

      public long hIconSm()
      a handle to a small icon that is associated with the window class. If this member is NULL, the system searches the icon resource specified by the hIcon member for an icon of the appropriate size to use as the small icon.
    • cbSize

      public WNDCLASSEX cbSize(int value)
      Sets the specified value to the cbSize() field.
    • style

      public WNDCLASSEX style(int value)
      Sets the specified value to the style() field.
    • lpfnWndProc

      public WNDCLASSEX lpfnWndProc(WindowProcI value)
      Sets the specified value to the lpfnWndProc() field.
    • cbClsExtra

      public WNDCLASSEX cbClsExtra(int value)
      Sets the specified value to the cbClsExtra() field.
    • cbWndExtra

      public WNDCLASSEX cbWndExtra(int value)
      Sets the specified value to the cbWndExtra() field.
    • hInstance

      public WNDCLASSEX hInstance(long value)
      Sets the specified value to the hInstance() field.
    • hIcon

      public WNDCLASSEX hIcon(long value)
      Sets the specified value to the hIcon() field.
    • hCursor

      public WNDCLASSEX hCursor(long value)
      Sets the specified value to the hCursor() field.
    • hbrBackground

      public WNDCLASSEX hbrBackground(long value)
      Sets the specified value to the hbrBackground() field.
    • lpszMenuName

      public WNDCLASSEX lpszMenuName(@Nullable ByteBuffer value)
      Sets the address of the specified encoded string to the lpszMenuName() field.
    • lpszClassName

      public WNDCLASSEX lpszClassName(ByteBuffer value)
      Sets the address of the specified encoded string to the lpszClassName() field.
    • hIconSm

      public WNDCLASSEX hIconSm(long value)
      Sets the specified value to the hIconSm() field.
    • set

      public WNDCLASSEX set(int cbSize, int style, WindowProcI lpfnWndProc, int cbClsExtra, int cbWndExtra, long hInstance, long hIcon, long hCursor, long hbrBackground, @Nullable ByteBuffer lpszMenuName, ByteBuffer lpszClassName, long hIconSm)
      Initializes this struct with the specified values.
    • set

      public WNDCLASSEX set(WNDCLASSEX src)
      Copies the specified struct data to this struct.
      Parameters:
      src - the source struct
      Returns:
      this struct
    • malloc

      public static WNDCLASSEX malloc()
      Returns a new WNDCLASSEX instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static WNDCLASSEX calloc()
      Returns a new WNDCLASSEX instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static WNDCLASSEX create()
      Returns a new WNDCLASSEX instance allocated with BufferUtils.
    • create

      public static WNDCLASSEX create(long address)
      Returns a new WNDCLASSEX instance for the specified memory address.
    • createSafe

      @Nullable public static WNDCLASSEX createSafe(long address)
      Like create, but returns null if address is NULL.
    • malloc

      public static WNDCLASSEX.Buffer malloc(int capacity)
      Returns a new WNDCLASSEX.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static WNDCLASSEX.Buffer calloc(int capacity)
      Returns a new WNDCLASSEX.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static WNDCLASSEX.Buffer create(int capacity)
      Returns a new WNDCLASSEX.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

      public static WNDCLASSEX.Buffer create(long address, int capacity)
      Create a WNDCLASSEX.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      @Nullable public static WNDCLASSEX.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • mallocStack

      @Deprecated public static WNDCLASSEX mallocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static WNDCLASSEX callocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static WNDCLASSEX mallocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static WNDCLASSEX callocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static WNDCLASSEX.Buffer mallocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static WNDCLASSEX.Buffer callocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • mallocStack

      @Deprecated public static WNDCLASSEX.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static WNDCLASSEX.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • malloc

      public static WNDCLASSEX malloc(org.lwjgl.system.MemoryStack stack)
      Returns a new WNDCLASSEX instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

      public static WNDCLASSEX calloc(org.lwjgl.system.MemoryStack stack)
      Returns a new WNDCLASSEX instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      stack - the stack from which to allocate
    • malloc

      public static WNDCLASSEX.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new WNDCLASSEX.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static WNDCLASSEX.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new WNDCLASSEX.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • ncbSize

      public static int ncbSize(long struct)
      Unsafe version of cbSize().
    • nstyle

      public static int nstyle(long struct)
      Unsafe version of style().
    • nlpfnWndProc

      public static WindowProc nlpfnWndProc(long struct)
      Unsafe version of lpfnWndProc().
    • ncbClsExtra

      public static int ncbClsExtra(long struct)
      Unsafe version of cbClsExtra().
    • ncbWndExtra

      public static int ncbWndExtra(long struct)
      Unsafe version of cbWndExtra().
    • nhInstance

      public static long nhInstance(long struct)
      Unsafe version of hInstance().
    • nhIcon

      public static long nhIcon(long struct)
      Unsafe version of hIcon().
    • nhCursor

      public static long nhCursor(long struct)
      Unsafe version of hCursor().
    • nhbrBackground

      public static long nhbrBackground(long struct)
      Unsafe version of hbrBackground().
    • nlpszMenuName

      @Nullable public static ByteBuffer nlpszMenuName(long struct)
      Unsafe version of lpszMenuName().
    • nlpszMenuNameString

      @Nullable public static String nlpszMenuNameString(long struct)
      Unsafe version of lpszMenuNameString().
    • nlpszClassName

      public static ByteBuffer nlpszClassName(long struct)
      Unsafe version of lpszClassName().
    • nlpszClassNameString

      public static String nlpszClassNameString(long struct)
      Unsafe version of lpszClassNameString().
    • nhIconSm

      public static long nhIconSm(long struct)
      Unsafe version of hIconSm().
    • ncbSize

      public static void ncbSize(long struct, int value)
      Unsafe version of cbSize.
    • nstyle

      public static void nstyle(long struct, int value)
      Unsafe version of style.
    • nlpfnWndProc

      public static void nlpfnWndProc(long struct, WindowProcI value)
      Unsafe version of lpfnWndProc.
    • ncbClsExtra

      public static void ncbClsExtra(long struct, int value)
      Unsafe version of cbClsExtra.
    • ncbWndExtra

      public static void ncbWndExtra(long struct, int value)
      Unsafe version of cbWndExtra.
    • nhInstance

      public static void nhInstance(long struct, long value)
      Unsafe version of hInstance.
    • nhIcon

      public static void nhIcon(long struct, long value)
      Unsafe version of hIcon.
    • nhCursor

      public static void nhCursor(long struct, long value)
      Unsafe version of hCursor.
    • nhbrBackground

      public static void nhbrBackground(long struct, long value)
      Unsafe version of hbrBackground.
    • nlpszMenuName

      public static void nlpszMenuName(long struct, @Nullable ByteBuffer value)
      Unsafe version of lpszMenuName.
    • nlpszClassName

      public static void nlpszClassName(long struct, ByteBuffer value)
      Unsafe version of lpszClassName.
    • nhIconSm

      public static void nhIconSm(long struct, long value)
      Unsafe version of hIconSm.
    • validate

      public static void validate(long struct)
      Validates pointer members that should not be NULL.
      Parameters:
      struct - the struct to validate