* Taseditor: fixed bug when saving/loading LagLog
* Taseditor: moved "Adjust Input according to Lag" checkbox to Config menu * Taseditor: History Log highlights items related to current item
This commit is contained in:
parent
fd35046e62
commit
10d40f6b98
|
@ -277,7 +277,8 @@ BEGIN
|
|||
MENUITEM "Set Autosave period", ID_CONFIG_SETAUTOSAVEPERIOD,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM MFT_SEPARATOR
|
||||
MENUITEM "Silent Autosave", ID_CONFIG_SILENTAUTOSAVE,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM "Autofire Pattern skips Lag", ID_CONFIG_COLUMNSETPATTERNSKIPSLAG,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM "Autofire Pattern skips Lag", ID_CONFIG_PATTERNSKIPSLAG,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM "Auto-adjust Input according to Lag", ID_CONFIG_ADJUSTLAG,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM "Draw Input by dragging", ID_CONFIG_DRAWINPUTBYDRAGGING,MFT_STRING,MFS_ENABLED
|
||||
MENUITEM MFT_SEPARATOR
|
||||
MENUITEM "Combine consecutive Recordings/Draws", ID_CONFIG_COMBINECONSECUTIVERECORDINGS,MFT_STRING,MFS_ENABLED
|
||||
|
@ -1405,21 +1406,21 @@ BEGIN
|
|||
EDITTEXT IDC_LABEL_NEWPPUUSED,76,166,155,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP
|
||||
END
|
||||
|
||||
TASEDITOR DIALOGEX 0, 0, 326, 359
|
||||
TASEDITOR DIALOGEX 0, 0, 326, 348
|
||||
STYLE DS_SETFONT | DS_SETFOREGROUND | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME
|
||||
CAPTION "TAS Editor"
|
||||
MENU TASEDITORMENU
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
CONTROL "",IDC_PROGRESS_BUTTON,"Button",BS_OWNERDRAW,200,36,116,12
|
||||
CONTROL "",IDC_BRANCHES_BUTTON,"Button",BS_OWNERDRAW,207,179,104,10
|
||||
CONTROL "",IDC_LIST1,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOSORTHEADER | WS_BORDER,5,13,187,328
|
||||
GROUPBOX " Playback ",IDC_PLAYBACK_BOX,197,0,123,75,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Recorder ",IDC_RECORDER_BOX,197,75,123,46,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Splicer ",IDC_SPLICER_BOX,197,122,123,30,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Lua ",IDC_LUA_BOX,197,153,123,26,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Bookmarks ",IDC_BOOKMARKS_BOX,197,180,123,102,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " History ",IDC_HISTORY_BOX,197,283,123,52,BS_CENTER,WS_EX_RIGHT
|
||||
CONTROL "",IDC_BRANCHES_BUTTON,"Button",BS_OWNERDRAW,207,167,104,10
|
||||
CONTROL "",IDC_LIST1,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOSORTHEADER | WS_BORDER,5,13,187,316
|
||||
GROUPBOX " Playback ",IDC_PLAYBACK_BOX,197,0,123,62,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Recorder ",IDC_RECORDER_BOX,197,63,123,46,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Splicer ",IDC_SPLICER_BOX,197,110,123,30,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Lua ",IDC_LUA_BOX,197,141,123,26,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " Bookmarks ",IDC_BOOKMARKS_BOX,197,168,123,102,BS_CENTER,WS_EX_RIGHT
|
||||
GROUPBOX " History ",IDC_HISTORY_BOX,197,271,123,53,BS_CENTER,WS_EX_RIGHT
|
||||
PUSHBUTTON "<<",TASEDITOR_REWIND_FULL,201,9,23,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "<",TASEDITOR_REWIND,224,9,23,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "||",TASEDITOR_PLAYSTOP,247,9,23,14,NOT WS_TABSTOP
|
||||
|
@ -1429,32 +1430,30 @@ BEGIN
|
|||
CONTROL " Follow cursor",CHECK_FOLLOW_CURSOR,"Button",BS_AUTOCHECKBOX,203,25,56,12
|
||||
CONTROL " Auto-restore last position",CHECK_AUTORESTORE_PLAYBACK,
|
||||
"Button",BS_AUTOCHECKBOX,203,48,109,12
|
||||
CONTROL "",IDC_BOOKMARKSLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOSCROLL | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | NOT WS_VISIBLE | WS_BORDER,202,189,113,89
|
||||
CONTROL "",IDC_HISTORYLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_NOLABELWRAP | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | WS_BORDER,202,292,113,39
|
||||
CONTROL " All",IDC_RADIO_ALL,"Button",BS_AUTORADIOBUTTON,291,83,24,10
|
||||
CONTROL " 1P",IDC_RADIO_1P,"Button",BS_AUTORADIOBUTTON,203,95,25,10
|
||||
CONTROL " 2P",IDC_RADIO_2P,"Button",BS_AUTORADIOBUTTON,232,95,25,10
|
||||
CONTROL " 3P",IDC_RADIO_3P,"Button",BS_AUTORADIOBUTTON,262,95,24,10
|
||||
CONTROL " 4P",IDC_RADIO_4P,"Button",BS_AUTORADIOBUTTON,291,95,24,10
|
||||
CONTROL " Superimpose",IDC_SUPERIMPOSE,"Button",BS_AUTO3STATE,203,108,55,10
|
||||
PUSHBUTTON "<<",TASEDITOR_PREV_MARKER,202,340,23,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "Similar",TASEDITOR_FIND_BEST_SIMILAR_MARKER,225,340,34,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "More",TASEDITOR_FIND_NEXT_SIMILAR_MARKER,259,340,34,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON ">>",TASEDITOR_NEXT_MARKER,292,340,23,14,NOT WS_TABSTOP
|
||||
CONTROL "",IDC_BOOKMARKSLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOSCROLL | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | NOT WS_VISIBLE | WS_BORDER,202,177,113,89
|
||||
CONTROL "",IDC_HISTORYLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_NOLABELWRAP | LVS_ALIGNLEFT | LVS_OWNERDATA | LVS_NOCOLUMNHEADER | LVS_NOSORTHEADER | WS_BORDER,202,280,113,40
|
||||
CONTROL " All",IDC_RADIO_ALL,"Button",BS_AUTORADIOBUTTON,291,71,24,10
|
||||
CONTROL " 1P",IDC_RADIO_1P,"Button",BS_AUTORADIOBUTTON,203,83,25,10
|
||||
CONTROL " 2P",IDC_RADIO_2P,"Button",BS_AUTORADIOBUTTON,232,83,25,10
|
||||
CONTROL " 3P",IDC_RADIO_3P,"Button",BS_AUTORADIOBUTTON,262,83,24,10
|
||||
CONTROL " 4P",IDC_RADIO_4P,"Button",BS_AUTORADIOBUTTON,291,83,24,10
|
||||
CONTROL " Superimpose",IDC_SUPERIMPOSE,"Button",BS_AUTO3STATE,203,96,55,10
|
||||
PUSHBUTTON "<<",TASEDITOR_PREV_MARKER,202,328,23,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "Similar",TASEDITOR_FIND_BEST_SIMILAR_MARKER,225,328,34,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON "More",TASEDITOR_FIND_NEXT_SIMILAR_MARKER,259,328,34,14,NOT WS_TABSTOP
|
||||
PUSHBUTTON ">>",TASEDITOR_NEXT_MARKER,292,328,23,14,NOT WS_TABSTOP
|
||||
EDITTEXT IDC_PLAYBACK_MARKER_EDIT,65,0,127,13,ES_AUTOHSCROLL | ES_READONLY | NOT WS_TABSTOP
|
||||
RTEXT "Marker 0",IDC_PLAYBACK_MARKER,4,2,60,10,SS_NOTIFY,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SELECTION_MARKER_EDIT,65,341,127,13,ES_AUTOHSCROLL | ES_READONLY | NOT WS_TABSTOP
|
||||
RTEXT "Marker 99999",IDC_SELECTION_MARKER,4,343,60,10,SS_NOTIFY,WS_EX_RIGHT
|
||||
CONTROL "",IDC_BRANCHES_BITMAP,"Static",SS_OWNERDRAW | SS_NOTIFY | SS_REALSIZEIMAGE | NOT WS_VISIBLE,202,189,113,89
|
||||
RTEXT "Marker 0",IDC_PLAYBACK_MARKER,3,2,60,10,SS_NOTIFY,WS_EX_RIGHT
|
||||
EDITTEXT IDC_SELECTION_MARKER_EDIT,65,329,127,13,ES_AUTOHSCROLL | ES_READONLY | NOT WS_TABSTOP
|
||||
RTEXT "Marker 99999",IDC_SELECTION_MARKER,3,331,60,10,SS_NOTIFY,WS_EX_RIGHT
|
||||
CONTROL "",IDC_BRANCHES_BITMAP,"Static",SS_OWNERDRAW | SS_NOTIFY | SS_REALSIZEIMAGE | NOT WS_VISIBLE,202,177,113,89
|
||||
CONTROL " Turbo seek",CHECK_TURBO_SEEK,"Button",BS_AUTOCHECKBOX,263,25,50,12
|
||||
LTEXT "Selection: 0 rows, 16 columns",IDC_TEXT_SELECTION,204,130,112,10,SS_NOTIFY
|
||||
LTEXT "Clipboard: 0 rows, 16 columns",IDC_TEXT_CLIPBOARD,203,140,114,10,SS_NOTIFY
|
||||
CONTROL " Recording",IDC_RECORDING,"Button",BS_AUTO3STATE,203,83,64,10
|
||||
PUSHBUTTON "Run function",TASEDITOR_RUN_MANUAL,202,162,54,14,WS_DISABLED | NOT WS_TABSTOP
|
||||
CONTROL "Auto function",IDC_RUN_AUTO,"Button",BS_AUTOCHECKBOX,261,164,55,10
|
||||
CONTROL " Use pattern",IDC_USEPATTERN,"Button",BS_AUTOCHECKBOX,262,108,53,10
|
||||
CONTROL " Auto-adjust Input due to lag",CHECK_AUTOADJUSTINPUTDUETOLAG,
|
||||
"Button",BS_AUTOCHECKBOX,203,61,109,12
|
||||
LTEXT "Selection: 0 rows, 16 columns",IDC_TEXT_SELECTION,204,118,112,10,SS_NOTIFY
|
||||
LTEXT "Clipboard: 0 rows, 16 columns",IDC_TEXT_CLIPBOARD,203,128,114,10,SS_NOTIFY
|
||||
CONTROL " Recording",IDC_RECORDING,"Button",BS_AUTO3STATE,203,71,81,10
|
||||
PUSHBUTTON "Run function",TASEDITOR_RUN_MANUAL,202,150,54,14,WS_DISABLED | NOT WS_TABSTOP
|
||||
CONTROL "Auto function",IDC_RUN_AUTO,"Button",BS_AUTOCHECKBOX,261,152,55,10
|
||||
CONTROL " Use pattern",IDC_USEPATTERN,"Button",BS_AUTOCHECKBOX,262,96,53,10
|
||||
END
|
||||
|
||||
IDD_TASEDITOR_ABOUT DIALOGEX 0, 0, 238, 78
|
||||
|
|
|
@ -1124,6 +1124,9 @@
|
|||
#define ACCEL_CTRL_SPACE 40563
|
||||
#define ID_HELP_OPEN_MANUAL 40564
|
||||
#define ID_DISPLAY_FPS 40565
|
||||
#define ID_CONFIG_AUTO 40566
|
||||
#define ID_CONFIG_ADJUSTLAG 40567
|
||||
#define ID_CONFIG_PATTERNSKIPSLAG 40568
|
||||
#define IDC_DEBUGGER_ICONTRAY 55535
|
||||
#define MW_ValueLabel2 65423
|
||||
#define MW_ValueLabel1 65426
|
||||
|
@ -1133,7 +1136,7 @@
|
|||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 289
|
||||
#define _APS_NEXT_COMMAND_VALUE 40566
|
||||
#define _APS_NEXT_COMMAND_VALUE 40569
|
||||
#define _APS_NEXT_CONTROL_VALUE 1282
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
|
|
|
@ -1151,7 +1151,46 @@ LONG HISTORY::CustomDraw(NMLVCUSTOMDRAW* msg)
|
|||
case CDDS_PREPAINT:
|
||||
return CDRF_NOTIFYITEMDRAW;
|
||||
case CDDS_ITEMPREPAINT:
|
||||
{
|
||||
msg->clrText = HISTORY_NORMAL_COLOR;
|
||||
msg->clrTextBk = HISTORY_NORMAL_BG_COLOR;
|
||||
// if this row is not "current History item" then check if it's "related" to current
|
||||
int row = msg->nmcd.dwItemSpec;
|
||||
if (row != history_cursor_pos)
|
||||
{
|
||||
int current_start_frame = snapshots[(history_start_pos + history_cursor_pos) % history_size].start_frame;
|
||||
int current_end_frame = snapshots[(history_start_pos + history_cursor_pos) % history_size].end_frame;
|
||||
int row_start_frame = snapshots[(history_start_pos + row) % history_size].start_frame;
|
||||
int row_end_frame = snapshots[(history_start_pos + row) % history_size].end_frame;
|
||||
if (current_end_frame >= 0)
|
||||
{
|
||||
if (row_end_frame >= 0)
|
||||
{
|
||||
// both items have defined ends, check if they intersect
|
||||
if (row_start_frame <= current_end_frame && row_end_frame >= current_start_frame)
|
||||
msg->clrTextBk = HISTORY_RELATED_BG_COLOR;
|
||||
} else
|
||||
{
|
||||
// current item has defined end, check if the row item falls into the segment
|
||||
if (row_start_frame >= current_start_frame && row_start_frame <= current_end_frame)
|
||||
msg->clrTextBk = HISTORY_RELATED_BG_COLOR;
|
||||
}
|
||||
} else
|
||||
{
|
||||
if (row_end_frame >= 0)
|
||||
{
|
||||
// row item has defined end, check if current item falls into the segment
|
||||
if (current_start_frame >= row_start_frame && current_start_frame <= row_end_frame)
|
||||
msg->clrTextBk = HISTORY_RELATED_BG_COLOR;
|
||||
} else
|
||||
{
|
||||
// both items don't have defined ends, check if they are at the same frame
|
||||
if (row_start_frame == current_start_frame)
|
||||
msg->clrTextBk = HISTORY_RELATED_BG_COLOR;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
default:
|
||||
return CDRF_DODEFAULT;
|
||||
}
|
||||
|
|
|
@ -82,6 +82,8 @@ enum CATEGORIES_OF_OPERATIONS
|
|||
};
|
||||
|
||||
#define HISTORY_NORMAL_COLOR 0x000000
|
||||
#define HISTORY_NORMAL_BG_COLOR 0xFFFFFF
|
||||
#define HISTORY_RELATED_BG_COLOR 0xF9DDE6
|
||||
|
||||
#define WM_MOUSEWHEEL_RESENT WM_APP+123
|
||||
|
||||
|
|
|
@ -32,10 +32,17 @@ void LAGLOG::reset()
|
|||
void LAGLOG::compress_data()
|
||||
{
|
||||
int len = lag_log.size() * sizeof(uint8);
|
||||
uLongf comprlen = (len>>9)+12 + len;
|
||||
lag_log_compressed.resize(comprlen);
|
||||
compress(&lag_log_compressed[0], &comprlen, (uint8*)&lag_log[0], len);
|
||||
lag_log_compressed.resize(comprlen);
|
||||
if (len)
|
||||
{
|
||||
uLongf comprlen = (len>>9)+12 + len;
|
||||
lag_log_compressed.resize(comprlen);
|
||||
compress(&lag_log_compressed[0], &comprlen, (uint8*)&lag_log[0], len);
|
||||
lag_log_compressed.resize(comprlen);
|
||||
} else
|
||||
{
|
||||
// LagLog can be empty
|
||||
lag_log_compressed.resize(0);
|
||||
}
|
||||
already_compressed = true;
|
||||
}
|
||||
bool LAGLOG::Get_already_compressed()
|
||||
|
@ -52,11 +59,14 @@ void LAGLOG::save(EMUFILE *os)
|
|||
// write size
|
||||
int size = lag_log.size();
|
||||
write32le(size, os);
|
||||
// write array
|
||||
if (!already_compressed)
|
||||
compress_data();
|
||||
write32le(lag_log_compressed.size(), os);
|
||||
os->fwrite(&lag_log_compressed[0], lag_log_compressed.size());
|
||||
if (size)
|
||||
{
|
||||
// write array
|
||||
if (!already_compressed)
|
||||
compress_data();
|
||||
write32le(lag_log_compressed.size(), os);
|
||||
os->fwrite(&lag_log_compressed[0], lag_log_compressed.size());
|
||||
}
|
||||
}
|
||||
// returns true if couldn't load
|
||||
bool LAGLOG::load(EMUFILE *is)
|
||||
|
@ -64,17 +74,23 @@ bool LAGLOG::load(EMUFILE *is)
|
|||
int size;
|
||||
if (read32le(&size, is))
|
||||
{
|
||||
lag_log.resize(size);
|
||||
// read and uncompress array
|
||||
already_compressed = true;
|
||||
int comprlen;
|
||||
uLongf destlen = size * sizeof(int);
|
||||
if (!read32le(&comprlen, is)) return true;
|
||||
if (comprlen <= 0) return true;
|
||||
lag_log_compressed.resize(comprlen);
|
||||
if (is->fread(&lag_log_compressed[0], comprlen) != comprlen) return true;
|
||||
int e = uncompress((uint8*)&lag_log[0], &destlen, &lag_log_compressed[0], comprlen);
|
||||
if (e != Z_OK && e != Z_BUF_ERROR) return true;
|
||||
lag_log.resize(size);
|
||||
if (size)
|
||||
{
|
||||
// read and uncompress array
|
||||
int comprlen;
|
||||
uLongf destlen = size * sizeof(int);
|
||||
if (!read32le(&comprlen, is)) return true;
|
||||
if (comprlen <= 0) return true;
|
||||
lag_log_compressed.resize(comprlen);
|
||||
if (is->fread(&lag_log_compressed[0], comprlen) != comprlen) return true;
|
||||
int e = uncompress((uint8*)&lag_log[0], &destlen, &lag_log_compressed[0], comprlen);
|
||||
if (e != Z_OK && e != Z_BUF_ERROR) return true;
|
||||
} else
|
||||
{
|
||||
lag_log_compressed.resize(0);
|
||||
}
|
||||
// all ok
|
||||
return false;
|
||||
}
|
||||
|
@ -82,12 +98,15 @@ bool LAGLOG::load(EMUFILE *is)
|
|||
}
|
||||
bool LAGLOG::skipLoad(EMUFILE *is)
|
||||
{
|
||||
if (!(is->fseek(sizeof(int), SEEK_CUR)))
|
||||
int size;
|
||||
if (read32le(&size, is))
|
||||
{
|
||||
// read array
|
||||
int comprlen;
|
||||
if (!read32le(&comprlen, is)) return true;
|
||||
if (is->fseek(comprlen, SEEK_CUR) != 0) return true;
|
||||
if (size)
|
||||
{
|
||||
// skip array
|
||||
if (!read32le(&size, is)) return true;
|
||||
if (is->fseek(size, SEEK_CUR) != 0) return true;
|
||||
}
|
||||
// all ok
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -86,7 +86,8 @@ void SNAPSHOT::save(EMUFILE *os)
|
|||
os->fwrite(&description[0], len);
|
||||
// save InputLog data
|
||||
inputlog.save(os);
|
||||
|
||||
// save LagLog data
|
||||
laglog.save(os);
|
||||
// save Markers data
|
||||
markers.save(os);
|
||||
}
|
||||
|
@ -108,7 +109,8 @@ bool SNAPSHOT::load(EMUFILE *is)
|
|||
description[tmp] = 0; // add '0' because it wasn't saved in the file
|
||||
// load InputLog data
|
||||
if (inputlog.load(is)) return true;
|
||||
|
||||
// load LagLog data
|
||||
if (laglog.load(is)) return true;
|
||||
// load Markers data
|
||||
if (markers.load(is)) return true;
|
||||
return false;
|
||||
|
@ -130,7 +132,8 @@ bool SNAPSHOT::skipLoad(EMUFILE *is)
|
|||
if (is->fseek(tmp1, SEEK_CUR) != 0) return true;
|
||||
// skip InputLog data
|
||||
if (inputlog.skipLoad(is)) return true;
|
||||
|
||||
// skip LagLog data
|
||||
if (laglog.skipLoad(is)) return true;
|
||||
// skip Markers data
|
||||
if (markers.skipLoad(is)) return true;
|
||||
return false;
|
||||
|
|
|
@ -25,8 +25,8 @@ public:
|
|||
LAGLOG laglog;
|
||||
MARKERS markers;
|
||||
int keyframe; // for jumping when making undo
|
||||
int start_frame; // for consecutive Draws
|
||||
int end_frame; // for consecutive Draws
|
||||
int start_frame; // for consecutive Draws and "Related items highlighting"
|
||||
int end_frame; // for consecutive Draws and "Related items highlighting"
|
||||
int consecutive_tag; // for consecutive Recordings and Draws
|
||||
uint32 rec_joypad_diff_bits; // for consecutive Recordings
|
||||
int mod_type;
|
||||
|
|
|
@ -72,7 +72,6 @@ LRESULT APIENTRY TASEDITOR_FORWARD_WndProc(HWND hWnd, UINT msg, WPARAM wParam, L
|
|||
LRESULT APIENTRY TASEDITOR_FORWARD_FULL_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY CHECK_FOLLOW_CURSOR_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY CHECK_AUTORESTORE_PLAYBACK_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY CHECK_AUTOADJUSTINPUTDUETOLAG_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY IDC_RADIO_ALL_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY IDC_RADIO_1P_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
LRESULT APIENTRY IDC_RADIO_2P_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||
|
@ -99,7 +98,6 @@ WNDPROC
|
|||
TASEDITOR_FORWARD_FULL_oldWndProc = 0,
|
||||
CHECK_FOLLOW_CURSOR_oldWndProc = 0,
|
||||
CHECK_AUTORESTORE_PLAYBACK_oldWndProc = 0,
|
||||
CHECK_AUTOADJUSTINPUTDUETOLAG_oldWndProc = 0,
|
||||
IDC_RADIO_ALL_oldWndProc = 0,
|
||||
IDC_RADIO_1P_oldWndProc = 0,
|
||||
IDC_RADIO_2P_oldWndProc = 0,
|
||||
|
@ -148,7 +146,6 @@ Window_items_struct window_items[TASEDITOR_WINDOW_TOTAL_ITEMS] = {
|
|||
IDC_PROGRESS1, -1, 0, 0, 0, "", "", false, 0, 0,
|
||||
CHECK_FOLLOW_CURSOR, -1, 0, 0, 0, "The Piano Roll will follow Playback cursor movements", "", false, 0, 0,
|
||||
CHECK_AUTORESTORE_PLAYBACK, -1, 0, 0, 0, "Whenever you change Input above Playback cursor, the cursor returns to where it was before the change", "", false, EMUCMD_TASEDITOR_SWITCH_AUTORESTORING, 0,
|
||||
CHECK_AUTOADJUSTINPUTDUETOLAG, -1, 0, 0, 0, "TAS Editor will adjust Input when new lag frames appear or old lag frames disappear while emulating", "", false, 0, 0,
|
||||
IDC_BOOKMARKSLIST, -1, 0, 0, 0, "Right click = set Bookmark, Left click = jump to Bookmark or load Branch", "", false, 0, 0,
|
||||
IDC_HISTORYLIST, -1, 0, 0, -1, "Click to revert the project back to that time", "", false, 0, 0,
|
||||
IDC_RADIO_ALL, -1, 0, 0, 0, "Switch off Multitracking", "", false, 0, 0,
|
||||
|
@ -157,7 +154,7 @@ Window_items_struct window_items[TASEDITOR_WINDOW_TOTAL_ITEMS] = {
|
|||
IDC_RADIO_3P, -1, 0, 0, 0, "Select Joypad 3 as current", "", false, EMUCMD_TASEDITOR_SWITCH_MULTITRACKING, 0,
|
||||
IDC_RADIO_4P, -1, 0, 0, 0, "Select Joypad 4 as current", "", false, EMUCMD_TASEDITOR_SWITCH_MULTITRACKING, 0,
|
||||
IDC_SUPERIMPOSE, -1, 0, 0, 0, "Allows to superimpose old Input with new buttons, instead of overwriting", "", false, 0, 0,
|
||||
IDC_USEPATTERN, -1, 0, 0, 0, "Applies current Autofire Pattern to Input recording", "", false, 0, 0,
|
||||
IDC_USEPATTERN, -1, 0, 0, 0, "Applies current Autofire Pattern to Input recording", "", false, 0, 0,
|
||||
TASEDITOR_PREV_MARKER, -1, -1, 0, -1, "Send Selection to previous Marker (mouse: Ctrl+Wheel up) (hotkey: Ctrl+PageUp)", "", false, 0, 0,
|
||||
TASEDITOR_FIND_BEST_SIMILAR_MARKER, -1, -1, 0, -1, "Auto-search for Marker Note", "", false, 0, 0,
|
||||
TASEDITOR_FIND_NEXT_SIMILAR_MARKER, -1, -1, 0, -1, "Continue Auto-search", "", false, 0, 0,
|
||||
|
@ -272,7 +269,6 @@ void TASEDITOR_WINDOW::init()
|
|||
TASEDITOR_FORWARD_FULL_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, TASEDITOR_FORWARD_FULL), GWL_WNDPROC, (LONG)TASEDITOR_FORWARD_FULL_WndProc);
|
||||
CHECK_FOLLOW_CURSOR_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, CHECK_FOLLOW_CURSOR), GWL_WNDPROC, (LONG)CHECK_FOLLOW_CURSOR_WndProc);
|
||||
CHECK_AUTORESTORE_PLAYBACK_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, CHECK_AUTORESTORE_PLAYBACK), GWL_WNDPROC, (LONG)CHECK_AUTORESTORE_PLAYBACK_WndProc);
|
||||
CHECK_AUTOADJUSTINPUTDUETOLAG_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, CHECK_AUTOADJUSTINPUTDUETOLAG), GWL_WNDPROC, (LONG)CHECK_AUTOADJUSTINPUTDUETOLAG_WndProc);
|
||||
IDC_RADIO_ALL_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, IDC_RADIO_ALL), GWL_WNDPROC, (LONG)IDC_RADIO_ALL_WndProc);
|
||||
IDC_RADIO_1P_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, IDC_RADIO_1P), GWL_WNDPROC, (LONG)IDC_RADIO_1P_WndProc);
|
||||
IDC_RADIO_2P_oldWndProc = (WNDPROC)SetWindowLong(GetDlgItem(hwndTasEditor, IDC_RADIO_2P), GWL_WNDPROC, (LONG)IDC_RADIO_2P_WndProc);
|
||||
|
@ -553,7 +549,6 @@ void TASEDITOR_WINDOW::UpdateCheckedItems()
|
|||
// check option ticks
|
||||
CheckDlgButton(hwndTasEditor, CHECK_FOLLOW_CURSOR, taseditor_config.follow_playback?BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hwndTasEditor, CHECK_AUTORESTORE_PLAYBACK, taseditor_config.restore_position?BST_CHECKED:BST_UNCHECKED);
|
||||
CheckDlgButton(hwndTasEditor, CHECK_AUTOADJUSTINPUTDUETOLAG, taseditor_config.adjust_input_due_to_lag?BST_CHECKED:BST_UNCHECKED);
|
||||
if (taseditor_config.superimpose == SUPERIMPOSE_UNCHECKED)
|
||||
CheckDlgButton(hwndTasEditor, IDC_SUPERIMPOSE, BST_UNCHECKED);
|
||||
else if (taseditor_config.superimpose == SUPERIMPOSE_CHECKED)
|
||||
|
@ -565,20 +560,21 @@ void TASEDITOR_WINDOW::UpdateCheckedItems()
|
|||
CheckDlgButton(hwndTasEditor, CHECK_TURBO_SEEK, taseditor_config.turbo_seek?BST_CHECKED : BST_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_SHOWBRANCHSCREENSHOTS, taseditor_config.show_branch_screenshots?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_SHOWBRANCHTOOLTIPS, taseditor_config.show_branch_descr?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_ENABLEHOTCHANGES, taseditor_config.enable_hot_changes?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_JUMPWHENMAKINGUNDO, taseditor_config.jump_to_undo?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_FOLLOWMARKERNOTECONTEXT, taseditor_config.follow_note_context?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_VIEW_ENABLEHOTCHANGES, taseditor_config.enable_hot_changes?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_BRANCHESRESTOREFULLMOVIE, taseditor_config.branch_full_movie?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_OLDBRANCHINGCONTROLS, taseditor_config.old_branching_controls?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_HUDINBRANCHSCREENSHOTS, taseditor_config.branch_scr_hud?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_BINDMARKERSTOINPUT, taseditor_config.bind_markers?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_EMPTYNEWMARKERNOTES, taseditor_config.empty_marker_notes?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_SILENTAUTOSAVE, taseditor_config.silent_autosave?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_PATTERNSKIPSLAG, taseditor_config.pattern_skips_lag?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_ADJUSTLAG, taseditor_config.adjust_input_due_to_lag?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_DRAWINPUTBYDRAGGING, taseditor_config.draw_input?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_COMBINECONSECUTIVERECORDINGS, taseditor_config.combine_consecutive?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_USE1PFORRECORDING, taseditor_config.use_1p_rec?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_USEINPUTKEYSFORCOLUMNSET, taseditor_config.columnset_by_keys?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_COLUMNSETPATTERNSKIPSLAG, taseditor_config.pattern_skips_lag?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_DRAWINPUTBYDRAGGING, taseditor_config.draw_input?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_SILENTAUTOSAVE, taseditor_config.silent_autosave?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_BINDMARKERSTOINPUT, taseditor_config.bind_markers?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_EMPTYNEWMARKERNOTES, taseditor_config.empty_marker_notes?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_OLDBRANCHINGCONTROLS, taseditor_config.old_branching_controls?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_BRANCHESRESTOREFULLMOVIE, taseditor_config.branch_full_movie?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_HUDINBRANCHSCREENSHOTS, taseditor_config.branch_scr_hud?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_CONFIG_AUTOPAUSEATTHEENDOFMOVIE, taseditor_config.autopause_at_finish?MF_CHECKED : MF_UNCHECKED);
|
||||
CheckMenuItem(hmenu, ID_HELP_TOOLTIPS, taseditor_config.tooltips?MF_CHECKED : MF_UNCHECKED);
|
||||
}
|
||||
|
@ -1039,7 +1035,7 @@ BOOL CALLBACK WndprocTasEditor(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPara
|
|||
taseditor_config.restore_position ^= 1;
|
||||
taseditor_window.UpdateCheckedItems();
|
||||
break;
|
||||
case CHECK_AUTOADJUSTINPUTDUETOLAG:
|
||||
case ID_CONFIG_ADJUSTLAG:
|
||||
taseditor_config.adjust_input_due_to_lag ^= 1;
|
||||
taseditor_window.UpdateCheckedItems();
|
||||
break;
|
||||
|
@ -1126,7 +1122,7 @@ BOOL CALLBACK WndprocTasEditor(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPara
|
|||
taseditor_config.columnset_by_keys ^= 1;
|
||||
taseditor_window.UpdateCheckedItems();
|
||||
break;
|
||||
case ID_CONFIG_COLUMNSETPATTERNSKIPSLAG:
|
||||
case ID_CONFIG_PATTERNSKIPSLAG:
|
||||
taseditor_config.pattern_skips_lag ^= 1;
|
||||
taseditor_window.UpdateCheckedItems();
|
||||
break;
|
||||
|
@ -1646,19 +1642,6 @@ LRESULT APIENTRY CHECK_AUTORESTORE_PLAYBACK_WndProc(HWND hWnd, UINT msg, WPARAM
|
|||
}
|
||||
return CallWindowProc(CHECK_AUTORESTORE_PLAYBACK_oldWndProc, hWnd, msg, wParam, lParam);
|
||||
}
|
||||
LRESULT APIENTRY CHECK_AUTOADJUSTINPUTDUETOLAG_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
switch(msg)
|
||||
{
|
||||
case WM_MBUTTONDOWN:
|
||||
case WM_MBUTTONDBLCLK:
|
||||
playback.MiddleButtonClick();
|
||||
return 0;
|
||||
case WM_KEYDOWN:
|
||||
return 0; // disable Spacebar
|
||||
}
|
||||
return CallWindowProc(CHECK_AUTOADJUSTINPUTDUETOLAG_oldWndProc, hWnd, msg, wParam, lParam);
|
||||
}
|
||||
LRESULT APIENTRY IDC_RADIO_ALL_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
switch(msg)
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue