X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ftape.h;h=e7f4da6e1cc88ee1d1a489235d53d542b1614165;hb=5ef9148d1f605af02e872264519eda261a3e88ca;hp=cf6f4dfda9d046982b6f9ad148d97953770dafac;hpb=0f93b05731f58802973324200cfd8aecb11a4786;p=rocksndiamonds.git diff --git a/src/tape.h b/src/tape.h index cf6f4dfd..e7f4da6e 100644 --- a/src/tape.h +++ b/src/tape.h @@ -21,6 +21,12 @@ /* values for tape properties */ #define MAX_TAPE_LEN (1000 * FRAMES_PER_SECOND) /* max.time x fps */ +/* values for tape mouse actions */ +#define TAPE_ACTION_LX 0 +#define TAPE_ACTION_LY 1 +#define TAPE_ACTION_BUTTON 2 +#define TAPE_ACTION_UNUSED 3 + /* some positions in the video tape control window */ #define VIDEO_DISPLAY1_XPOS 5 #define VIDEO_DISPLAY1_YPOS 5 @@ -103,6 +109,8 @@ struct TapeButtonInfo struct XY pause; struct XY record; struct XY play; + struct XY insert_solution; + struct XY play_solution; }; struct TapeSymbolInfo @@ -182,6 +190,8 @@ struct TapeInfo int centered_player_nr_next; boolean set_centered_player; + boolean use_mouse; + struct { byte action[MAX_PLAYERS]; @@ -211,6 +221,7 @@ void TapeSetDateFromNow(); void TapeStartRecording(int); void TapeHaltRecording(void); void TapeStopRecording(void); +boolean TapeAddAction(byte *); void TapeRecordAction(byte *); void TapeTogglePause(boolean); void TapeStartPlaying(void); @@ -222,7 +233,10 @@ unsigned int GetTapeLengthFrames(void); unsigned int GetTapeLengthSeconds(void); void TapeQuickSave(void); void TapeQuickLoad(void); -void InsertSolutionTape(void); + +boolean hasSolutionTape(); +boolean InsertSolutionTape(void); +boolean PlaySolutionTape(void); void AutoPlayTape(void); @@ -232,6 +246,8 @@ void MapTapeEjectButton(); void MapTapeWarpButton(); void MapTapeButtons(); void UnmapTapeButtons(); +void RedrawTapeButtons(); +void RedrawOrRemapTapeButtons(); void HandleTapeButtonKeys(Key);