tron@2186: /* $Id$ */ tron@2186: glx@8844: /** @file window_func.h Window functions not directly related to making/drawing windows. */ belugas@8531: rubidium@8602: #ifndef WINDOW_FUNC_H rubidium@8602: #define WINDOW_FUNC_H truelight@0: rubidium@8602: #include "window_type.h" rubidium@8750: #include "player_type.h" rubidium@8041: rubidium@8041: /** rubidium@8041: * Marks the window as dirty for repaint. rubidium@8041: * rubidium@8041: * @ingroup dirty rubidium@8041: */ belugas@4171: void SetWindowDirty(const Window *w); rubidium@5838: void SendWindowMessage(WindowClass wnd_class, WindowNumber wnd_num, int msg, int wparam, int lparam); rubidium@5838: void SendWindowMessageClass(WindowClass wnd_class, int msg, int wparam, int lparam); truelight@0: truelight@0: Window *FindWindowById(WindowClass cls, WindowNumber number); truelight@0: void DeleteWindow(Window *w); bjarni@5077: void ChangeWindowOwner(PlayerID old_player, PlayerID new_player); truelight@0: Darkvater@5268: void ResizeWindow(Window *w, int x, int y); rubidium@8603: int PositionMainToolbar(Window *w); truelight@0: rubidium@6573: void InitWindowSystem(); rubidium@6573: void UnInitWindowSystem(); rubidium@6573: void ResetWindowSystem(); rubidium@8603: void SetupColorsAndInitialWindow(); rubidium@6573: void InputLoop(); bjarni@4766: void InvalidateThisWindowData(Window *w); bjarni@4739: void InvalidateWindowData(WindowClass cls, WindowNumber number); truelight@0: void RelocateAllWindows(int neww, int newh); truelight@0: rubidium@6573: void DeleteNonVitalWindows(); rubidium@6573: void DeleteAllNonVitalWindows(); rubidium@6573: void HideVitalWindows(); rubidium@6573: void ShowVitalWindows(); Darkvater@5124: Window **FindWindowZPosition(const Window *w); truelight@0: rubidium@8627: void InvalidateWindow(WindowClass cls, WindowNumber number); rubidium@8627: void InvalidateWindowWidget(WindowClass cls, WindowNumber number, byte widget_index); rubidium@8627: void InvalidateWindowClasses(WindowClass cls); rubidium@8627: void InvalidateWindowClassesData(WindowClass cls); rubidium@8627: void DeleteWindowById(WindowClass cls, WindowNumber number); rubidium@8627: void DeleteWindowByClass(WindowClass cls); rubidium@8627: rubidium@8602: #endif /* WINDOW_FUNC_H */