/*! \brief Open nested window. */ public void OpenNested(OS.Rect visible, OS.Coord scroll, uint behindWindow, uint parentWindow, uint nestedFlags, uint windowFlags) { // Make sure bit 0 of nested flags is set correctly depending on whether // window flags are supplied. if (windowFlags == 0xffffffff) { nestedFlags &= (~1U); windowFlags = 0; } else { nestedFlags |= 1; } var block = new NativeWimp.WindowStateBlock(WimpWindow.Handle, visible, scroll, behindWindow, windowFlags); Wimp.OpenWindowNested(ref block, parentWindow, nestedFlags); }
/*! \brief Gets the visible area of this window in screen coordinates. */ public OS.Rect GetVisibleArea() { var state = new NativeWimp.WindowStateBlock(); GetState(ref state); return(new OS.Rect(ref state.Visible)); }
/*! \brief Open a normal window (no nesting) */ public void Open(OS.Rect visible, OS.Coord scroll, uint behind) { var block = new NativeWimp.WindowStateBlock(WimpWindow.Handle, visible, scroll, behind, 0); // Flags are ignored on a normal window open Wimp.OpenWindow(ref block); }
/*! \brief Returns a summary of the given window's state and window nesting. * \param [in,out] block Reference to a native type to receive the window state. * \param [out] linkage Defines how the window is nested in the parent. * \return The Wimp window handle of the parent. */ public uint GetNestedState(ref NativeWimp.WindowStateBlock block, out uint linkage) { return(WimpWindow.GetNestedState(ref block, out linkage)); }
/*! \brief Return a summary of this window's state * \param [in,out] block Reference to a native type to receive the window state. * \return Nothing. */ public void GetState(ref NativeWimp.WindowStateBlock block) { WimpWindow.GetState(ref block); }
internal static extern IntPtr Wimp_GetWindowStateAndNesting( [In, MarshalAs(UnmanagedType.Struct)] ref NativeWimp.WindowStateBlock block, out uint parent, out uint nestedFlags);
internal static extern IntPtr Wimp_GetWindowState( [In, MarshalAs(UnmanagedType.Struct)] ref NativeWimp.WindowStateBlock block);
internal static extern IntPtr Wimp_OpenWindowNestedWithFlags( [In, MarshalAs(UnmanagedType.Struct)] ref NativeWimp.WindowStateBlock block, uint parent, uint nestedFlags);
/*! \brief Returns a summary of the given window's state and window nesting. * \param [in,out] block Reference to a native type to receive the window state. * \param [out] linkage Defines how the window is nested in the parent. * \return The Wimp window handle of the parent. */ public uint GetNestedState(ref NativeWimp.WindowStateBlock block, out uint linkage) { block.WindowHandle = Handle; return(Wimp.GetNestedWindowState(ref block, out linkage)); }
/*! \brief Return a summary of this window's state * \param [in,out] block Reference to a native type to receive the window state. * \return Nothing. */ public void GetState(ref NativeWimp.WindowStateBlock block) { block.WindowHandle = Handle; Wimp.GetWindowState(ref block); }
/*! \brief Find the origin of the window when its state is unknown. */ public OS.Coord GetOrigin() { NativeWimp.WindowStateBlock state = new NativeWimp.WindowStateBlock(); GetState(ref state); return(GetOrigin(ref state.Visible, ref state.Scroll)); }