; ; Window.pbi Interface Window AddKeyboardShortcut (Shortcut, Event) AddTimer (Timer, Timeout) BindEvent (Event, *Callback, Object = #PB_All, EventType = #PB_All) Close () Delete () Disable (State) GetColor () GetData () GetState () GetTitle () Hide (State, Flags = #Null) Is () PostEvent (Event, Object = #PB_All, Type = #PB_All, PostEventData = #PB_All) RemoveKeyboardShortcut (Shortcut) RemoveTimer (Timer) Resize (x, y, Width, Height) SetActive () SetCallback (*ProcedureName, Window = #Null) SetColor (Color) SetData (Value) SetState (State) SetTitle (Title$) SmartRefresh (State) Sticky (State) UnbindEvent (Event, *Callback, Object = #PB_All, EventType = #PB_All) Bounds (MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) Height (Mode = #PB_Window_InnerCoordinate) ID () MouseX () MouseY () Output () VectorOutput (Unit = #PB_Unit_Pixel) Width (Mode = #PB_Window_InnerCoordinate) Window () X (Mode = #PB_Window_FrameCoordinate) Y (Mode = #PB_Window_FrameCoordinate) EndInterface DeclareModule Window Declare KeyboardShortcut__Add (Window, Shortcut, Event) Declare Timer__Add (Window, Timer, Timeout) Declare Event__Bind (Event, *Callback, Window = #PB_All, Object = #PB_All, EventType = #PB_All) Declare Close (Window) Declare Disable (Window, State) Declare Event__Data () Declare Event__Gadget () Declare Event__lParam () Declare Event__Menu () Declare Event__Timer () Declare Event__Type () Declare Event__Window () Declare Event__wParam () Declare GetActive () Declare GetColor (Window) Declare GetData (Window) Declare GetState (Window) Declare$ GetTitle (Window) Declare Hide (Window, State, Flags = #Null) Declare Is (Window) Declare Open (Window, x, y, InnerWidth, InnerHeight, Title$, Flags = #Null, ParentWindowID = #Null) Declare New (Window, x, y, InnerWidth, InnerHeight, Title$, Flags = #Null, ParentWindowID = #Null) Declare Event__Post (Event, Window, Object = #Null, Type = #Null, PostEventData = #Null) Declare KeyboardShortcut__Remove (Window, Shortcut) Declare Timer__Remove (Window, Timer) Declare Resize (Window, x, y, Width, Height) Declare SetActive (Window) Declare SetCallback (*ProcedureName, Window = #Null) Declare SetColor (Window, Color) Declare SetData (Window, Value) Declare SetState (Window, State) Declare SetTitle (Window, Title$) Declare SmartRefresh (Window, State) Declare Sticky (Window, State) Declare Event__Unbind (Event, *Callback, Window = #Null, Object = #Null, EventType = #Null) Declare WaitEvent (Timeout = #Null) Declare Bounds (Window, MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) Declare Event () Declare Height (Window, Mode = #PB_Window_InnerCoordinate) Declare ID (Window) Declare Mouse__X (Window) Declare Mouse__Y (Window) Declare Output (Window) Declare VectorOutput (Window, Unit = #PB_Unit_Pixel) Declare Width (Window, Mode = #PB_Window_InnerCoordinate) Declare X (Window, Mode = #PB_Window_FrameCoordinate) Declare Y (Window, Mode = #PB_Window_FrameCoordinate) EndDeclareModule Module Window Structure SWindow *VTABLE Window. i EndStructure Procedure KeyboardShortcut__Add (Window, Shortcut, Event) AddKeyboardShortcut (Window, Shortcut, Event) EndProcedure Procedure IKeyboardShortcut__Add (*this. SWindow, Shortcut, Event) AddKeyboardShortcut (*this \ Window, Shortcut, Event) EndProcedure Procedure Timer__Add (Window, Timer, Timeout) AddWindowTimer (Window, Timer, Timeout) EndProcedure Procedure ITimer__Add (*this. SWindow, Timer, Timeout) AddWindowTimer (*this \ Window, Timer, Timeout) EndProcedure Procedure Event__Bind (Event, *Callback, Window = #PB_All, Object = #PB_All, EventType = #PB_All) BindEvent (Event, *Callback, Window, Object, EventType) EndProcedure Procedure IEvent__Bind (*this. SWindow, Event, *Callback, Object = #PB_All, EventType = #PB_All) BindEvent (Event, *Callback, *this \ Window, Object, EventType) EndProcedure Procedure Close (Window) CloseWindow (Window) EndProcedure Procedure IClose (*this. SWindow) CloseWindow (*this \ Window) EndProcedure Procedure IDelete (*this. SWindow) If IsWindow (*this \ Window) CloseWindow (*this \ Window) EndIf FreeMemory (*this) EndProcedure Procedure Disable (Window, State) DisableWindow (Window, State) EndProcedure Procedure IDisable (*this. SWindow, State) DisableWindow (*this \ Window, State) EndProcedure Procedure Event__Data () ProcedureReturn EventData () EndProcedure Procedure Event__Gadget () ProcedureReturn EventGadget () EndProcedure Procedure Event__lParam () ProcedureReturn EventlParam () EndProcedure Procedure Event__Menu () ProcedureReturn EventMenu () EndProcedure Procedure Event__Timer () ProcedureReturn EventTimer () EndProcedure Procedure Event__Type () ProcedureReturn EventType () EndProcedure Procedure Event__Window () ProcedureReturn EventWindow () EndProcedure Procedure Event__wParam () ProcedureReturn EventwParam () EndProcedure Procedure GetActive () ProcedureReturn GetActiveWindow () EndProcedure Procedure GetColor (Window) ProcedureReturn GetWindowColor (Window) EndProcedure Procedure IGetColor (*this. SWindow) ProcedureReturn GetWindowColor (*this \ Window) EndProcedure Procedure GetData (Window) ProcedureReturn GetWindowData (Window) EndProcedure Procedure IGetData (*this. SWindow) ProcedureReturn GetWindowData (*this \ Window) EndProcedure Procedure GetState (Window) ProcedureReturn GetWindowState (Window) EndProcedure Procedure IGetState (*this. SWindow) ProcedureReturn GetWindowState (*this \ Window) EndProcedure Procedure$ GetTitle (Window) ProcedureReturn GetWindowTitle (Window) EndProcedure Procedure$ IGetTitle (*this. SWindow) ProcedureReturn GetWindowTitle (*this \ Window) EndProcedure Procedure Hide (Window, State, Flags = #Null) HideWindow (Window, State, Flags) EndProcedure Procedure IHide (*this. SWindow, State, Flags = #Null) HideWindow (*this \ Window, State, Flags) EndProcedure Procedure Is (Window) ProcedureReturn IsWindow (Window) EndProcedure Procedure IIs (*this. SWindow) ProcedureReturn IsWindow (*this \ Window) EndProcedure Procedure Open (Window, x, y, InnerWidth, InnerHeight, Title$, Flags = #Null, ParentWindowID = #Null) ProcedureReturn OpenWindow (Window, x, y, InnerWidth, InnerHeight, Title$, Flags, ParentWindowID) EndProcedure Procedure New (Window, x, y, InnerWidth, InnerHeight, Title$, Flags = #Null, ParentWindowID = #Null) Protected *this. SWindow *this = AllocateMemory (SizeOf (SWindow)) If *this *this \ VTABLE = ? VTABLE_SWindow *this \ Window = OpenWindow (Window, x, y, InnerWidth, InnerHeight, Title$, Flags, ParentWindowID) ProcedureReturn *this EndIf EndProcedure Procedure Event__Post (Event, Window, Object = #Null, Type = #Null, EventPostData = #Null) PostEvent (Event, Window, Object, Type, EventPostData) EndProcedure Procedure IEvent__Post (Event, *this. SWindow, Object = #Null, Type = #Null, EventPostData = #Null) PostEvent (Event, *this \ Window, Object, Type, EventPostData) EndProcedure Procedure KeyboardShortcut__Remove (Window, Shortcut) RemoveKeyboardShortcut (Window, Shortcut) EndProcedure Procedure IKeyboardShortcut__Remove (*this. SWindow, Shortcut) RemoveKeyboardShortcut (*this \ Window, Shortcut) EndProcedure Procedure Timer__Remove (Window, Timer) RemoveWindowTimer (Window, Timer) EndProcedure Procedure ITimer__Remove (*this. SWindow, Timer) RemoveWindowTimer (*this \ Window, Timer) EndProcedure Procedure Resize (Window, x, y, Width, Height) ResizeWindow (Window, x, y, Width, Height) EndProcedure Procedure IResize (*this. SWindow, x, y, Width, Height) ResizeWindow (*this \ Window, x, y, Width, Height) EndProcedure Procedure SetActive (Window) SetActiveWindow (Window) EndProcedure Procedure ISetActive (*this. SWindow) SetActiveWindow (*this \ Window) EndProcedure Procedure SetCallback (*ProcedureName, Window = #Null) SetWindowCallback (*ProcedureName, Window) EndProcedure Procedure ISetCallback (*ProcedureName, *this. SWindow = #Null) SetWindowCallback (*ProcedureName, *this \ Window) EndProcedure Procedure SetColor (Window, Color) SetWindowColor (Window, Color) EndProcedure Procedure ISetColor (*this. SWindow, Color) SetWindowColor (*this \ Window, Color) EndProcedure Procedure SetData (Window, Value) SetWindowData (Window, Value) EndProcedure Procedure ISetData (*this. SWindow, Value) SetWindowData (*this \ Window, Value) EndProcedure Procedure SetState (Window, State) SetWindowState (Window, State) EndProcedure Procedure ISetState (*this. SWindow, State) SetWindowState (*this \ Window, State) EndProcedure Procedure SetTitle (Window, Title$) SetWindowTitle (Window, Title$) EndProcedure Procedure ISetTitle (*this. SWindow, Title$) SetWindowTitle (*this \ Window, Title$) EndProcedure Procedure SmartRefresh (Window, State) SmartWindowRefresh (Window, State) EndProcedure Procedure ISmartRefresh (*this. SWindow, State) SmartWindowRefresh (*this \ Window, State) EndProcedure Procedure Sticky (Window, State) StickyWindow (Window, State) EndProcedure Procedure ISticky (*this. SWindow, State) StickyWindow (*this \ Window, State) EndProcedure Procedure Event__Unbind (Event, *Callback, Window = #Null, Object = #Null, EventType = #Null) UnbindEvent (Event, *Callback, Window, Object, EventType) EndProcedure Procedure IEvent__Unbind (Event, *Callback, *this. SWindow = #Null, Object = #Null, EventType = #Null) UnbindEvent (Event, *Callback, *this \ Window, Object, EventType) EndProcedure Procedure WaitEvent (Timeout = #Null) ProcedureReturn WaitWindowEvent (Timeout) EndProcedure Procedure Bounds (Window, MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) WindowBounds (Window, MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) EndProcedure Procedure IBounds (*this. SWindow, MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) WindowBounds (*this \ Window, MinimumWidth, MinimumHeight, MaximumWidth, MaximumHeight) EndProcedure Procedure Event () ProcedureReturn WindowEvent () EndProcedure Procedure Height (Window, Mode = #PB_Window_InnerCoordinate) ProcedureReturn WindowHeight (Window, Mode) EndProcedure Procedure IHeight (*this. SWindow, Mode = #PB_Window_InnerCoordinate) ProcedureReturn WindowHeight (*this \ Window, Mode) EndProcedure Procedure ID (Window) ProcedureReturn WindowID (Window) EndProcedure Procedure IID (*this. SWindow) ProcedureReturn WindowID (*this \ Window) EndProcedure Procedure Mouse__X (Window) ProcedureReturn WindowMouseX (Window) EndProcedure Procedure IMouse__X (*this. SWindow) ProcedureReturn WindowMouseX (*this \ Window) EndProcedure Procedure Mouse__Y (Window) ProcedureReturn WindowMouseY (Window) EndProcedure Procedure IMouse__Y (*this. SWindow) ProcedureReturn WindowMouseY (*this \ Window) EndProcedure Procedure Output (Window) ProcedureReturn WindowOutput (Window) EndProcedure Procedure IOutput (*this. SWindow) ProcedureReturn WindowOutput (*this \ Window) EndProcedure Procedure VectorOutput (Window, Unit = #PB_Unit_Pixel) ProcedureReturn WindowVectorOutput (Window, Unit) EndProcedure Procedure IVectorOutput (*this. SWindow, Unit = #PB_Unit_Pixel) ProcedureReturn WindowVectorOutput (*this \ Window, Unit) EndProcedure Procedure Width (Window, Mode = #PB_Window_InnerCoordinate) ProcedureReturn WindowWidth (Window, Mode) EndProcedure Procedure IWidth (*this. SWindow, Mode = #PB_Window_InnerCoordinate) ProcedureReturn WindowWidth (*this \ Window, Mode) EndProcedure Procedure IWindow (*this. SWindow) ProcedureReturn *this \ Window EndProcedure Procedure X (Window, Mode = #PB_Window_FrameCoordinate) ProcedureReturn WindowX (Window, Mode) EndProcedure Procedure IX (*this. SWindow, Mode = #PB_Window_FrameCoordinate) ProcedureReturn WindowX (*this \ Window, Mode) EndProcedure Procedure Y (Window, Mode = #PB_Window_FrameCoordinate) ProcedureReturn WindowY (Window, Mode) EndProcedure Procedure IY (*this. SWindow, Mode = #PB_Window_FrameCoordinate) ProcedureReturn WindowY (*this \ Window, Mode) EndProcedure DataSection VTABLE_SWindow: Data. i @ IKeyboardShortcut__Add () Data. i @ ITimer__Add () Data. i @ IEvent__Bind () Data. i @ IClose () Data. i @ IDelete () Data. i @ IDisable () Data. i @ IGetColor () Data. i @ IGetData () Data. i @ IGetState () Data. i @ IGetTitle () Data. i @ IHide () Data. i @ IIs () Data. i @ IEvent__Post () Data. i @ IKeyboardShortcut__Remove () Data. i @ ITimer__Remove () Data. i @ IResize () Data. i @ ISetActive () Data. i @ ISetCallback () Data. i @ ISetColor () Data. i @ ISetData () Data. i @ ISetState () Data. i @ ISetTitle () Data. i @ ISmartRefresh () Data. i @ ISticky () Data. i @ IEvent__Unbind () Data. i @ IBounds () Data. i @ IHeight () Data. i @ IID () Data. i @ IMouse__X () Data. i @ IMouse__Y () Data. i @ IOutput () Data. i @ IVectorOutput () Data. i @ IWidth () Data. i @ IWindow () Data. i @ IX () Data. i @ IY () EndDataSection EndModule ; IDE Options = PureBasic 5.41 LTS (Windows - x86)