rubidium@10455: /* $Id$ */ rubidium@10455: rubidium@10455: /** @file tilehighlight_func.h Functions related to tile highlights. */ rubidium@10455: rubidium@10455: #ifndef TILEHIGHLIGHT_FUNC_H rubidium@10455: #define TILEHIGHLIGHT_FUNC_H rubidium@10455: rubidium@10455: #include "gfx_type.h" rubidium@10455: #include "window_type.h" rubidium@10455: #include "viewport_type.h" rubidium@10455: #include "tilehighlight_type.h" rubidium@10455: rubidium@10455: typedef void PlaceProc(TileIndex tile); rubidium@10455: void PlaceProc_DemolishArea(TileIndex tile); glx@10645: bool GUIPlaceProcDragXY(ViewportDragDropSelectionProcess proc, TileIndex start_tile, TileIndex end_tile); rubidium@10455: rubidium@10455: bool HandlePlacePushButton(Window *w, int widget, CursorID cursor, ViewportHighlightMode mode, PlaceProc *placeproc); rubidium@10455: void SetObjectToPlaceWnd(CursorID icon, SpriteID pal, ViewportHighlightMode mode, Window *w); rubidium@10455: void SetObjectToPlace(CursorID icon, SpriteID pal, ViewportHighlightMode mode, WindowClass window_class, WindowNumber window_num); rubidium@10513: void ResetObjectToPlace(); rubidium@10513: rubidium@10513: void VpSelectTilesWithMethod(int x, int y, ViewportPlaceMethod method); rubidium@10513: void VpStartPlaceSizing(TileIndex tile, ViewportPlaceMethod method, ViewportDragDropSelectionProcess process); rubidium@10513: void VpSetPresizeRange(TileIndex from, TileIndex to); rubidium@10513: void VpSetPlaceSizingLimit(int limit); rubidium@10455: rubidium@10455: extern PlaceProc *_place_proc; rubidium@10455: extern TileHighlightData _thd; rubidium@10455: rubidium@10455: #endif /* TILEHIGHLIGHT_FUNC_H */