]> Shamusworld >> Repos - apple2/blobdiff - src/gui/element.h
Miscellaneous sound engine fixes (still needs fixing!), floppy diagnostics
[apple2] / src / gui / element.h
index a53d0011d7b85584792171eec856ee7068529291..a090a968c2164b9f92f1f912268d171cc3210c41 100755 (executable)
@@ -13,6 +13,7 @@
 enum { WINDOW_CLOSE, MENU_ITEM_CHOSEN, SCREEN_REFRESH_NEEDED };
 
 #include <SDL.h>
+#include <list>
 #include "types.h"
 
 class Element
@@ -34,12 +35,17 @@ class Element
 //Badly named, though we may code something that does this...
 //             SDL_Rect GetParentCorner(void);
                SDL_Rect GetScreenCoords(void);
-#if 0
+               SDL_Rect GetExtents(void);
+#if 1
 //May use this in the future...
                SDL_Rect GetParentRect(void);
 #endif
                void CreateBackstore(void);
                void RestoreScreenFromBackstore(void);
+               void SaveScreenToBackstore(void);
+               void ResetCoverageList(void);
+//Need something to prevent this on Elements that don't have mouseover effects...
+               void AdjustCoverageList(SDL_Rect r);
                // Class methods...
                static void SetScreen(SDL_Surface *);
                static bool ScreenNeedsRefreshing(void);
@@ -52,6 +58,7 @@ class Element
                uint32 fgColor;
                uint32 bgColor;
                SDL_Surface * backstore;
+               std::list<SDL_Rect> coverList;
 
                // Class variables...
                static SDL_Surface * screen;