From 10a87103e80556311f73a716b9df967daf854416 Mon Sep 17 00:00:00 2001 From: ansstuff Date: Mon, 11 Jun 2012 16:43:50 +0000 Subject: [PATCH] * Taseditor: "Branches only work when Recording" doesn't switch off Branches Tree * Taseditor: green arrow doesn't disappear when Playback cursor goes through it * Taseditor: changed icons column in Piano Roll, now can show both Bookmark and arrow --- src/drivers/win/res.rc | 131 ++++++++----- src/drivers/win/res/te_arrow.bmp | Bin 418 -> 574 bytes src/drivers/win/res/te_green_arrow.bmp | Bin 418 -> 574 bytes src/drivers/win/res/te_green_blue_arrow.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_0.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_0_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_0_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_1.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_10.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_10_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_10_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_11.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_11_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_11_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_12.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_12_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_12_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_13.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_13_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_13_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_14.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_14_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_14_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_15.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_15_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_15_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_16.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_16_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_16_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_17.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_17_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_17_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_18.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_18_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_18_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_19.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_19_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_19_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_1_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_1_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_2.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_2_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_2_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_3.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_3_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_3_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_4.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_4_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_4_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_5.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_5_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_5_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_6.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_6_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_6_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_7.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_7_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_7_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_8.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_8_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_8_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_9.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_9_lostpos.bmp | Bin 0 -> 574 bytes src/drivers/win/res/te_piano_9_playback.bmp | Bin 0 -> 574 bytes src/drivers/win/resource.h | 63 ++++++- src/drivers/win/taseditor/bookmarks.cpp | 82 +++++++- src/drivers/win/taseditor/bookmarks.h | 3 +- src/drivers/win/taseditor/piano_roll.cpp | 187 ++++++++++++++++--- src/drivers/win/taseditor/piano_roll.h | 14 +- src/drivers/win/taseditor/playback.cpp | 10 +- vc/vc10_fceux.vcxproj | 3 + vc/vc10_fceux.vcxproj.filters | 3 + 72 files changed, 401 insertions(+), 95 deletions(-) create mode 100644 src/drivers/win/res/te_green_blue_arrow.bmp create mode 100644 src/drivers/win/res/te_piano_0.bmp create mode 100644 src/drivers/win/res/te_piano_0_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_0_playback.bmp create mode 100644 src/drivers/win/res/te_piano_1.bmp create mode 100644 src/drivers/win/res/te_piano_10.bmp create mode 100644 src/drivers/win/res/te_piano_10_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_10_playback.bmp create mode 100644 src/drivers/win/res/te_piano_11.bmp create mode 100644 src/drivers/win/res/te_piano_11_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_11_playback.bmp create mode 100644 src/drivers/win/res/te_piano_12.bmp create mode 100644 src/drivers/win/res/te_piano_12_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_12_playback.bmp create mode 100644 src/drivers/win/res/te_piano_13.bmp create mode 100644 src/drivers/win/res/te_piano_13_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_13_playback.bmp create mode 100644 src/drivers/win/res/te_piano_14.bmp create mode 100644 src/drivers/win/res/te_piano_14_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_14_playback.bmp create mode 100644 src/drivers/win/res/te_piano_15.bmp create mode 100644 src/drivers/win/res/te_piano_15_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_15_playback.bmp create mode 100644 src/drivers/win/res/te_piano_16.bmp create mode 100644 src/drivers/win/res/te_piano_16_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_16_playback.bmp create mode 100644 src/drivers/win/res/te_piano_17.bmp create mode 100644 src/drivers/win/res/te_piano_17_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_17_playback.bmp create mode 100644 src/drivers/win/res/te_piano_18.bmp create mode 100644 src/drivers/win/res/te_piano_18_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_18_playback.bmp create mode 100644 src/drivers/win/res/te_piano_19.bmp create mode 100644 src/drivers/win/res/te_piano_19_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_19_playback.bmp create mode 100644 src/drivers/win/res/te_piano_1_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_1_playback.bmp create mode 100644 src/drivers/win/res/te_piano_2.bmp create mode 100644 src/drivers/win/res/te_piano_2_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_2_playback.bmp create mode 100644 src/drivers/win/res/te_piano_3.bmp create mode 100644 src/drivers/win/res/te_piano_3_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_3_playback.bmp create mode 100644 src/drivers/win/res/te_piano_4.bmp create mode 100644 src/drivers/win/res/te_piano_4_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_4_playback.bmp create mode 100644 src/drivers/win/res/te_piano_5.bmp create mode 100644 src/drivers/win/res/te_piano_5_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_5_playback.bmp create mode 100644 src/drivers/win/res/te_piano_6.bmp create mode 100644 src/drivers/win/res/te_piano_6_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_6_playback.bmp create mode 100644 src/drivers/win/res/te_piano_7.bmp create mode 100644 src/drivers/win/res/te_piano_7_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_7_playback.bmp create mode 100644 src/drivers/win/res/te_piano_8.bmp create mode 100644 src/drivers/win/res/te_piano_8_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_8_playback.bmp create mode 100644 src/drivers/win/res/te_piano_9.bmp create mode 100644 src/drivers/win/res/te_piano_9_lostpos.bmp create mode 100644 src/drivers/win/res/te_piano_9_playback.bmp diff --git a/src/drivers/win/res.rc b/src/drivers/win/res.rc index f468630a..85753716 100644 --- a/src/drivers/win/res.rc +++ b/src/drivers/win/res.rc @@ -1444,6 +1444,23 @@ BEGIN LTEXT "made by zeromus & adelikat",IDC_STATIC,138,35,96,9,SS_NOPREFIX END +IDD_TASEDITOR_NEWPROJECT DIALOGEX 0, 0, 171, 100 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Create New Project" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "OK",IDOK,7,80,50,14 + PUSHBUTTON "Cancel",IDCANCEL,114,80,50,14 + CONTROL " Copy current input",IDC_COPY_INPUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,80,14,75,10 + CONTROL " 1 player",IDC_RADIO_1PLAYER,"Button",BS_AUTORADIOBUTTON,16,14,45,10 + CONTROL " 2 players",IDC_RADIO_2PLAYERS,"Button",BS_AUTORADIOBUTTON,16,27,45,10 + CONTROL " Fourscore",IDC_RADIO_FOURSCORE,"Button",BS_AUTORADIOBUTTON,16,40,45,10 + CONTROL " Copy current markers",IDC_COPY_MARKERS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,80,27,83,10 + GROUPBOX "Input type",IDC_STATIC,5,3,67,52,BS_CENTER + EDITTEXT IDC_EDIT_AUTHOR,36,61,127,13,ES_AUTOHSCROLL + LTEXT "Author:",IDC_STATIC,8,63,26,9 +END + IDD_TASEDITOR_EXPORT DIALOGEX 0, 0, 158, 86 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU CAPTION "Export to FM2" @@ -1977,6 +1994,10 @@ BEGIN BEGIN END + IDD_TASEDITOR_NEWPROJECT, DIALOG + BEGIN + END + IDD_TASEDITOR_EXPORT, DIALOG BEGIN END @@ -2059,55 +2080,6 @@ END #endif // Нейтральный resources ///////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// Русский (Россия) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_RUS) -LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT -#pragma code_page(1251) - -///////////////////////////////////////////////////////////////////////////// -// -// Dialog -// - -IDD_TASEDITOR_NEWPROJECT DIALOGEX 0, 0, 171, 100 -STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Create New Project" -FONT 8, "MS Shell Dlg", 400, 0, 0x1 -BEGIN - DEFPUSHBUTTON "OK",IDOK,7,80,50,14 - PUSHBUTTON "Cancel",IDCANCEL,114,80,50,14 - CONTROL " Copy current input",IDC_COPY_INPUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,80,14,75,10 - CONTROL " 1 player",IDC_RADIO_1PLAYER,"Button",BS_AUTORADIOBUTTON,16,14,45,10 - CONTROL " 2 players",IDC_RADIO_2PLAYERS,"Button",BS_AUTORADIOBUTTON,16,27,45,10 - CONTROL " Fourscore",IDC_RADIO_FOURSCORE,"Button",BS_AUTORADIOBUTTON,16,40,45,10 - CONTROL " Copy current markers",IDC_COPY_MARKERS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,80,27,83,10 - GROUPBOX "Input type",IDC_STATIC,5,3,67,52,BS_CENTER - EDITTEXT IDC_EDIT_AUTHOR,36,61,127,13,ES_AUTOHSCROLL - LTEXT "Author:",IDC_STATIC,8,63,26,9 -END - - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - IDD_TASEDITOR_NEWPROJECT, DIALOG - BEGIN - END -END -#endif // APSTUDIO_INVOKED - -#endif // Русский (Россия) resources -///////////////////////////////////////////////////////////////////////////// - - ///////////////////////////////////////////////////////////////////////////// // Английский (США) resources @@ -2262,6 +2234,67 @@ IDB_BITMAP18 BITMAP "res\\te_18.bmp" IDB_BITMAP19 BITMAP "res\\te_19.bmp" IDB_TE_ARROW BITMAP "res\\te_arrow.bmp" IDB_TE_GREEN_ARROW BITMAP "res\\te_green_arrow.bmp" +IDB_TE_GREEN_BLUE_ARROW BITMAP "res\\te_green_blue_arrow.bmp" +IDB_PIANO_0 BITMAP "res\\te_piano_0.bmp" +IDB_PIANO_1 BITMAP "res\\te_piano_1.bmp" +IDB_PIANO_2 BITMAP "res\\te_piano_2.bmp" +IDB_PIANO_3 BITMAP "res\\te_piano_3.bmp" +IDB_PIANO_4 BITMAP "res\\te_piano_4.bmp" +IDB_PIANO_5 BITMAP "res\\te_piano_5.bmp" +IDB_PIANO_6 BITMAP "res\\te_piano_6.bmp" +IDB_PIANO_7 BITMAP "res\\te_piano_7.bmp" +IDB_PIANO_8 BITMAP "res\\te_piano_8.bmp" +IDB_PIANO_9 BITMAP "res\\te_piano_9.bmp" +IDB_PIANO_10 BITMAP "res\\te_piano_10.bmp" +IDB_PIANO_11 BITMAP "res\\te_piano_11.bmp" +IDB_PIANO_12 BITMAP "res\\te_piano_12.bmp" +IDB_PIANO_13 BITMAP "res\\te_piano_13.bmp" +IDB_PIANO_14 BITMAP "res\\te_piano_14.bmp" +IDB_PIANO_15 BITMAP "res\\te_piano_15.bmp" +IDB_PIANO_16 BITMAP "res\\te_piano_16.bmp" +IDB_PIANO_17 BITMAP "res\\te_piano_17.bmp" +IDB_PIANO_18 BITMAP "res\\te_piano_18.bmp" +IDB_PIANO_19 BITMAP "res\\te_piano_19.bmp" +IDB_PIANO_PLAYBACK_0 BITMAP "res\\te_piano_0_playback.bmp" +IDB_PIANO_PLAYBACK_1 BITMAP "res\\te_piano_1_playback.bmp" +IDB_PIANO_PLAYBACK_2 BITMAP "res\\te_piano_2_playback.bmp" +IDB_PIANO_PLAYBACK_3 BITMAP "res\\te_piano_3_playback.bmp" +IDB_PIANO_PLAYBACK_4 BITMAP "res\\te_piano_4_playback.bmp" +IDB_PIANO_PLAYBACK_5 BITMAP "res\\te_piano_5_playback.bmp" +IDB_PIANO_PLAYBACK_6 BITMAP "res\\te_piano_6_playback.bmp" +IDB_PIANO_PLAYBACK_7 BITMAP "res\\te_piano_7_playback.bmp" +IDB_PIANO_PLAYBACK_8 BITMAP "res\\te_piano_8_playback.bmp" +IDB_PIANO_PLAYBACK_9 BITMAP "res\\te_piano_9_playback.bmp" +IDB_PIANO_PLAYBACK_10 BITMAP "res\\te_piano_10_playback.bmp" +IDB_PIANO_PLAYBACK_11 BITMAP "res\\te_piano_11_playback.bmp" +IDB_PIANO_PLAYBACK_12 BITMAP "res\\te_piano_12_playback.bmp" +IDB_PIANO_PLAYBACK_13 BITMAP "res\\te_piano_13_playback.bmp" +IDB_PIANO_PLAYBACK_14 BITMAP "res\\te_piano_14_playback.bmp" +IDB_PIANO_PLAYBACK_15 BITMAP "res\\te_piano_15_playback.bmp" +IDB_PIANO_PLAYBACK_16 BITMAP "res\\te_piano_16_playback.bmp" +IDB_PIANO_PLAYBACK_17 BITMAP "res\\te_piano_17_playback.bmp" +IDB_PIANO_PLAYBACK_18 BITMAP "res\\te_piano_18_playback.bmp" +IDB_PIANO_PLAYBACK_19 BITMAP "res\\te_piano_19_playback.bmp" +IDB_PIANO_LOSTPOS_0 BITMAP "res\\te_piano_0_lostpos.bmp" +IDB_PIANO_LOSTPOS_1 BITMAP "res\\te_piano_1_lostpos.bmp" +IDB_PIANO_LOSTPOS_2 BITMAP "res\\te_piano_2_lostpos.bmp" +IDB_PIANO_LOSTPOS_3 BITMAP "res\\te_piano_3_lostpos.bmp" +IDB_PIANO_LOSTPOS_4 BITMAP "res\\te_piano_4_lostpos.bmp" +IDB_PIANO_LOSTPOS_5 BITMAP "res\\te_piano_5_lostpos.bmp" +IDB_PIANO_LOSTPOS_6 BITMAP "res\\te_piano_6_lostpos.bmp" +IDB_PIANO_LOSTPOS_7 BITMAP "res\\te_piano_7_lostpos.bmp" +IDB_PIANO_LOSTPOS_8 BITMAP "res\\te_piano_8_lostpos.bmp" +IDB_PIANO_LOSTPOS_9 BITMAP "res\\te_piano_9_lostpos.bmp" +IDB_PIANO_LOSTPOS_10 BITMAP "res\\te_piano_10_lostpos.bmp" +IDB_PIANO_LOSTPOS_11 BITMAP "res\\te_piano_11_lostpos.bmp" +IDB_PIANO_LOSTPOS_12 BITMAP "res\\te_piano_12_lostpos.bmp" +IDB_PIANO_LOSTPOS_13 BITMAP "res\\te_piano_13_lostpos.bmp" +IDB_PIANO_LOSTPOS_14 BITMAP "res\\te_piano_14_lostpos.bmp" +IDB_PIANO_LOSTPOS_15 BITMAP "res\\te_piano_15_lostpos.bmp" +IDB_PIANO_LOSTPOS_16 BITMAP "res\\te_piano_16_lostpos.bmp" +IDB_PIANO_LOSTPOS_17 BITMAP "res\\te_piano_17_lostpos.bmp" +IDB_PIANO_LOSTPOS_18 BITMAP "res\\te_piano_18_lostpos.bmp" +IDB_PIANO_LOSTPOS_19 BITMAP "res\\te_piano_19_lostpos.bmp" IDB_BRANCH_SPRITESHEET BITMAP "res\\branch_spritesheet.bmp" #endif // Английский (США) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/src/drivers/win/res/te_arrow.bmp b/src/drivers/win/res/te_arrow.bmp index 27a905d461a7c9e78c384cee6ffb9cd6806528ab..ce71cfa5175e7c8b1f86fc39d6536126631bf339 100644 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHor0ixe2;l`t>hLN>Rfk(ChB_Qd sv8ltR6o)ztr8v}K_#K-%3`IZz40YHPVW`8Q2vr?!MKE=ERX`*e0FN=#@c;k- literal 418 zcmZ?rUBt)$24+A~1Bf|+m=}l{865PXGV_ diff --git a/src/drivers/win/res/te_green_arrow.bmp b/src/drivers/win/res/te_green_arrow.bmp index ac099ed053d37127c1c131f7fa69de47f54de949..a8bbe3e7e99f8968e90b22cdde32609825296e9b 100644 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII0}$a?k5GqSDT+EgO3~Hf uQi??#R;Ae0VJgM04%6>g)L|+DilD2*st8>jE=4Hn@F;?+!>5!G=FS9tp(zIcK0caNM!4+$Y#5 zUwEHBcu4;WuJ>z0%+8@P*u(02iq6o+HMBUPy;E8pQO7a0E(XW(^{q>(clyTaC~BM{ XToosgI!R&*KXHHoqRinC12V$Y3sQ%y0?tNLickla gfGCA?A&il$4jyti!vz>Z_!R*aK;sQ9R57^>0Ko#2g8%>k literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_0_lostpos.bmp b/src/drivers/win/res/te_piano_0_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..46f2c8615f108ed3552bcdfdd0f2b71450f4bd0c GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII12V#@5k&=DHAFMA2B%7a${`G{pG`br2ymMQ~|2 M0}+yNA*>7r0PrDV00000 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_0_playback.bmp b/src/drivers/win/res/te_piano_0_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..33281280c99bd221dfdaee9f6a5e98fcc539beb6 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII12V#@5k&=DHAv~rU}OzY zb#NhwQm8s4rG(VMloFv1tdux)H-m{&_y0c;>cD;^qz)DkP<8N-LkSm{A|Oq4d?4w; H$7BEiclCb( literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_1.bmp b/src/drivers/win/res/te_piano_1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..bded79b39d4fa74418291c82e37f4078ddd8f9f4 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHouFT;O102Bx;SAE%0kuNRgPVcO bK$tgN)Zqy{pcfJTB~~2?;es5nXlw=mDvrYo literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_10.bmp b/src/drivers/win/res/te_piano_10.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8c3ef6cf4f7593745004e62f4b191b8c44893794 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi g0-_Yo1v5slI(W$83>RPs;Z+2bhs7IesABRM0CCL23jhEB literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_10_lostpos.bmp b/src/drivers/win/res/te_piano_10_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..97cd891bbe829c5c7119afcbee4f9532eaab9bf2 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|!~g#dhrmX_ z^uW}?_)u+Nb;wEysDmpdtPY}-D0M)kM5zNhp0GNI4+*G)2LntUJmeq@Ea3;#f}sd* O44i=y=x|X?1_J;ul97l2 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_10_playback.bmp b/src/drivers/win/res/te_piano_10_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..27a40f8c9dc8fe61023d342188bfd9861d35009b GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|15oMBU}W_$ zb#O6=QiwVvrG(VMloFv1tdux)H-m{&_y0c;>cCzkqz)DiFm>>dLk<_1A|OqCd?0DU H!(;#ew^y!- literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_11.bmp b/src/drivers/win/res/te_piano_11.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e1bc04c4eccc16fac07e25cc75b6c485ac30895e GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHop=`6&e>g&jLRn;}1L}mBhhZ2{ Z0Li@Jq7HZ9q579tbtHrfP$>?;003Z2+@k;h literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_11_lostpos.bmp b/src/drivers/win/res/te_piano_11_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5e76ba2ff2d0e50c7ef1aa34b7ab8dbfec3e7969 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e>lRX6Q??dLog|@HY5(j zJeXlXb;wEysDmpdtPY}-D0M)kM5zP1nXo#D$6)F(0uN{x+!ILVVN(YSA`lHT56DCf OKV(Iy>d<6RxeNem+N&S{ literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_11_playback.bmp b/src/drivers/win/res/te_piano_11_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c1993783b1246e9e1e0dab1e94cabe8fcbee8894 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e>lRX6SumX!N}@i>VRSp z^Wc&|bx2AHse>scLLFEsaq4ac6Q}O~e&*KXHHoq-?Vl7KEywJawpMAoIZHAzO_s ziNuDfBcv2b9bToV>ToN?PzP5EWFP^sI!O4zMbWrmaU^wUp$*rDPzPk;RRomB<~~%D HAUp;DjqS)_ literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_12_lostpos.bmp b/src/drivers/win/res/te_piano_12_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7284ec56d12c0bcfa63ef74a94d9f7eabb1570b0 GIT binary patch literal 574 zcma*iF%Ezr3hh=C@5GoKZ;QY&)l1QusJWnCyrSWZxNIfLu%nmtLM9@7ti8E>jgrheOVxHMfJWGdh0z~vX*{Ed z{!sU&s3HFwl+U#>!_VLDN{GQ>n{#$RsqFgENYxn?*QD-*nu`?OmB76yx}2ZRDJSkY eFHRpJMG0Q2v%WchGCD*2m2)Ekp=r2Z5Y^q|ceCCA literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_13.bmp b/src/drivers/win/res/te_piano_13.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2aebfcffa9dfe1b4c6f6f05ce3d58e6e6f4c0168 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi z0-_Yo1v6mwB8yT_9o%t11}Z?c7p@Lf5s-(f4kC@yeP|MBT(D-OaDiKjQyowTUPUu4h3)2{9caG jDm?^_$M5+pxL^&ZkHs&>@;>=LlK8mscDE#7n8g+zfti^9 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_13_playback.bmp b/src/drivers/win/res/te_piano_13_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..04f0b17566b4160e6a0dbbd87c71bdb51513208d GIT binary patch literal 574 zcma*jy%B&Q3Wn=FMPGDhSVQ=NAPUAHAnZFBycW{81JTB4w*m~lzV4tx@T^&sv zA2iP|x}~;3FT2)k)^1WJ`~v8GMsLnzLd6BjbsgdGaYh>))8M>09K0?N&zh4qOvncX gC+Xk*JW+KLOv(OBY|i^LgeTW6Q4n%0`YVLG2MKMq00000 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_14.bmp b/src/drivers/win/res/te_piano_14.bmp new file mode 100644 index 0000000000000000000000000000000000000000..fc8b00ff02766b04ca78e6f4a8d81c583f3be2a9 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoUD;-<|3HKRXrc~c7aECbHP~J> z6%Z~?br1<`ihwdm<`Gs0Q~@^z&VXoxkx1bJQ9)Q8+*F`a41i=FM2;x)FpPl(OLGGc1M%e zht$_33AY6W>{?k?Ek3#Z4y};9X4y|Tk5cLx0cAE0=s#y@=IrjpT(~xIVxsSW4Gxw2 d`H2OGuXO)nkf;V;YN_L-;QXu&jU39wfgamPokIWs literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_14_playback.bmp b/src/drivers/win/res/te_piano_14_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4a5f0ee60bd2ea8d7d3c19a10ab46a3151262558 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoMcHPn|3HKd;8u4t7+F1Dbx2AX zKo(&lpiw|Y5Ck@s2z6jnVd@}mLG}mSJTQYeb^rf^{Q)-y&cNb6WE(NnL1dxkp(%xM a!On*%gV+n_A)5ym1T#>>8C4FM#{d9h9J)jR literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_15.bmp b/src/drivers/win/res/te_piano_15.bmp new file mode 100644 index 0000000000000000000000000000000000000000..46f0000f357ea04fc4108baef88dc95f2a793f2a GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi z0-_Yo1v6mwB8yV24(=vo2C@zR|0B5%w<4exBz33;pz+91hios9jS7&=BdiWpD^?x@ E0NIDc8~^|S literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_15_lostpos.bmp b/src/drivers/win/res/te_piano_15_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8003bbfc0c10dc79bae503a390ed660ac61a6f9b GIT binary patch literal 574 zcma)$Jq~~{2!+wf#oZ%#0tW|U+&!%~@M4ude$r~2N`Msj9_2W~^GQtHR>^D}J#yG201};T2QG{isagMe*LG53^?6Z$K_7aC%Wh|K+ c#$lEw=cL)-TxneCK8N^GWLP`Ot-``2UlgqlljU_1Ve ct7ls*973tra*`KU?N1QD+s+_3AGad<03uYcng9R* literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_16.bmp b/src/drivers/win/res/te_piano_16.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3aa400bc15b0b7ad1855da2c322c399870513932 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi z0-_Yo1v6-<4(>7n_9Cl8bsUg~&3zb(aHu1}UZ7G`0Jaw>gzPvBMKF6&wPNKl006GW Bzt{i( literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_16_lostpos.bmp b/src/drivers/win/res/te_piano_16_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a1bf9062811cf35708d764ab9c5769b68449567f GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|!~g#dhrmX_ z^uW}?_)u+Nb;wEysDmpdtPY|SrVj2h2m@v>P!R-SQwMe{Tm`CmaDTuUaCHy?n0YX1 VLjJ|(KDb^WgZTJB)`gqR003h1j#U5v literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_16_playback.bmp b/src/drivers/win/res/te_piano_16_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c8b34c551755809ceb0f6dde0ee3eb48a41ca69b GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|15oMBU}W_$ zb#O6=QiwVvrG(VMloFv1tQ4jW?lLrcfr`Kgn>vVFVJaXVf~kZ11I~b}1B+m&L$epA V4W&*KXHHos%*2>e;~pQ$Ww>gNSJv*8}V9= xp$>{|2p8BMp}vgL=tl_l9B^+VOw>VlRIN`_PFuIdII|5wgSqT?dqqNLDp d+HvWErld|0XR=4uej|$u^yLtVdo47k^ZqL=^x literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_17_playback.bmp b/src/drivers/win/res/te_piano_17_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..aa4ecfeb40caa6c4e1fd78aa1d8dab1d3f7598cc GIT binary patch literal 574 zcma*ju@QhE3mF#4 z`;(r_pe_6>itOIw>Q>u%hYx~#MY01b?(@~jWm-CnG$%B>Iuf0Cm9t26A%L^UM9s-( bm(D0(BqxX)=}+biT*+nBb%4Z`b8Dgp5KO&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi j0-_Yo1v6-<4(>9X_5xjiR}oNtNVpF*NTIy%D54AiE9kzz literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_18_lostpos.bmp b/src/drivers/win/res/te_piano_18_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..8ad4d21c394786a20c8dba897b9c49c617bed998 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|!~g#dhrmX_ z^uW}?_)u+Nb;wEysDmpdtPY|SrVj2h2m@v>P!R;-^eKu1V_M=+u40NlHcJOBUy literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_18_playback.bmp b/src/drivers/win/res/te_piano_18_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2c56553379119d96020e0cefc92af8651bbcc377 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoq-?Vl3c{w70YwE|15oMBU}W_$ zb#O6=QiwVvrG(VMloFv1tQ4jW?lLrcfr`Kgw|`+OARdC5hsz&eOM#Mv)WP(_)M0fW ZOcB^TAc3g}Nd<%n_6LUO|L^ER3;<-0syzSz literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_19.bmp b/src/drivers/win/res/te_piano_19.bmp new file mode 100644 index 0000000000000000000000000000000000000000..79c3caf0daf05a338ed7c144c511318e51e2ee22 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHos%*2>e`JKA8LSRj1)Pnl6iFRi z0-_Yo1v6mwB8%cv2e%H+K-T&HKa#z06*$d9lR)Dl+=nKC#wAxB#27e<#UDT+xHL9P Of%4eG57i_Hj{yLTrN7t! literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_19_lostpos.bmp b/src/drivers/win/res/te_piano_19_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4b933adb51723feaf76cd0d6855a3546b9acf61a GIT binary patch literal 574 zcma*jF%Ezr37Sg{#nO$o&TbWb|Pe^IMr37-|u(vdEC9RS&){<~eTm3ODoKn2&orQYrc*4E( fr-(1VomTj8{tR5JKS%N|hk#0<-{Jp7A}90!K+=v? literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_19_playback.bmp b/src/drivers/win/res/te_piano_19_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..5712cffb3843073f7842792eedf63811080bfbe9 GIT binary patch literal 574 zcma*ju@QhE3*m^-*bey%1sdqAA zen{*1NJD6A^0I3!9&e`|xgRsaA1 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_1_lostpos.bmp b/src/drivers/win/res/te_piano_1_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a2090c8d8421a04d05a23afdf356028293c361b2 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC0~}%1h*KR<8?puj2Vx#v z4vkAd9o$sH>L5yqQU_E@lscfJ39Ezn45|*|JGiTXau5-?_wlKND*`fb+Ka3RMID+1 H8kYe8=tYr; literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_1_playback.bmp b/src/drivers/win/res/te_piano_1_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..fe51be1cca06577217ad46ecaf48f47861b40316 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC0~}%1h+EywU}OzYbwDAA zc?db6IwYlp)WMVzp$@E+ICVFJiBtFgKN0G{UW2N`5_nksi(MTeknq@xqzK4FxDQnv HoyPzGa2c+N literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_2.bmp b/src/drivers/win/res/te_piano_2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e293767e7eea6ff374005619bb3b29cdb3af1615 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII113V#PL?_}GmyC;^MC+u zFNBLpLe&veicp7NDT+EgO3~H9l>!;a0HhA$3AiX47b1>O2lp~gb#No$O5tY18Ccv0 JmqTVS003y@ooWC8 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_2_lostpos.bmp b/src/drivers/win/res/te_piano_2_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..2cec218a71b00f56a431e9cc7ffb079e6796f7f1 GIT binary patch literal 574 zcma)&yAgme3_}AI4Lu_;0VT)Lvowo=V;R}`6yy@0k)H(Qy!J8a+N7>>W;;V#RG)0F z4_2OkD;;-dx84pUPT^2#aE=lhyoaJ$D^pIpm9B ez0Vf&P_r+(G@W4G^ys_hi)7;ix&Fveb`mD5Fw!RF4R$JKfb>uq(PJSJzW?M2&MQ mS8^vEviE8(p}a}5;v|z&|HWS&{~ucvhI9`M{rzwb^Yj8ejELv} literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_3.bmp b/src/drivers/win/res/te_piano_3.bmp new file mode 100644 index 0000000000000000000000000000000000000000..81f48131bca8298a23447bc94226dedcea074ec1 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC12V$Y3sQ%y0?tNLickla zfGCA?Aq=R!$fDF!2X`EhfoubijlzekLsNvV4kC@yeP|MBT!>~wxWFyNsScJQ3c0myJT%pPAPp~n0Au0hYn@pS-u=JK S&*KXHHoO_{?X1|UKc1ai@ZsG$yG1{#TG zHOO8x6 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_4_lostpos.bmp b/src/drivers/win/res/te_piano_4_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..aaa25867bfc6b303d414b6a51f85e474e619513d GIT binary patch literal 574 zcma)&OAde_3`DCdH|{-xCva(udoS(9v@p$Nz)v7h+UaW>*pIchycV~!pD|8nQ`U#b z=OE10woI|@G~cSwFI45KfiCVT|xV} a*q;fliGHXc$`B6h=l?0>e!*2a4ebVnJa@?e literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_4_playback.bmp b/src/drivers/win/res/te_piano_4_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c3e8254e59045c53347f348cb69170adac149de4 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoS((Ej1|UKffwNIWQPkZGhARRx z@Tx;n3bF_jflLA_f*`Q5SQJ5>2v-L-6{-%b=RdmpkdzXq4&o2EF>nSJ_aWPeMIA&M dIb0x$fFx83?0lFqJmCjd0%pK;ql#kk7yu0rl*#}A literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_5.bmp b/src/drivers/win/res/te_piano_5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..7c9cb5fbeacc44bd64e8da4f57519b6dde79b4c4 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC12V$Y3sQ%y0?tNLickla zfGCA?Aq=R!$f6XhgS!ctfoubijc^|xMJVdf3_#-|%tMnv<08}{+Y4kqV0?R;Y_haqN*8)4^jBz@fTpuFu zL73~`GGN&*KXHHosLbII12V#@5k&=DHAv~rU}OzY zb#NhwQm8s4r67Be0lGSvQX9;s6|N2}L`WS>9~OIo ZUIxhm%|imX)gdVYGSR~YRTjZx008!wfcyXe literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_6.bmp b/src/drivers/win/res/te_piano_6.bmp new file mode 100644 index 0000000000000000000000000000000000000000..f960f233f4e830b9a311b01b2b65f1f917a17599 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC12V$Y3sQ%y0?tNLickla zfGCA?Aq?87gS(7?y~yg&90%lLaUZ54?CMCc7pN4?R45&cIsXI8%h+l<#VAadb+KZS*8E RPHD9vbT`EC|A?W6wjbV7Tn_*M literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_6_playback.bmp b/src/drivers/win/res/te_piano_6_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..9b0f9f80052eb34d760cc220c356356b5736021f GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII12V#@5k&=DHAv~rU}OzY zb#NhwQm8s4rG(VMloFv1tQ4>NfGS`Ji#n)VVJaXVLbn(0A-G8p5p;C~{0k2`6m&*KXHHoqRinC0}$cSLY6u_Mk4IOZ#B9) sTt*_)0X>1oNG$5G8i}F~ZX~8sbaim0XkiIb2XPh}Nr5^vtysAX0EeivGXMYp literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_7_lostpos.bmp b/src/drivers/win/res/te_piano_7_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..45a6ff814ae26efcc722533901b954f774def03e GIT binary patch literal 574 zcma)%I}U&_3_}AG3p+>P1dIr=b7?LHQ60IdB|cRfrS?k=`?2;`*5Y;cGsfv`D*6z9 zxkS1CEpu!;&G$S1$jM~o#E_7P6O|vs;fAA{If%j0;NKvDRXILM0!rohBn)y$XgH#| U3668Q0SDrP%aHe)D>koo0~O|humAu6 literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_7_playback.bmp b/src/drivers/win/res/te_piano_7_playback.bmp new file mode 100644 index 0000000000000000000000000000000000000000..0952d43360bd46ecd8da130d24edcb35ec478808 GIT binary patch literal 574 zcma*jF%Ezr3;@9D&*KXHHoqRinC12V$Y3sQ%y0?tNLickla jfGCA?Aq?87gS!l;y+9Y>R|Hfr6x@dvq)_g66k!Gc%_fVF literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_8_lostpos.bmp b/src/drivers/win/res/te_piano_8_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..3cbad74618e559f6835dff5a67d5dd53f346c049 GIT binary patch literal 574 zcma)&F%Ez*2u0D!#oZ%#0!L%qy|kBdY=8O*rAEc3CGdF!=zgrdl(WFjc%!~frlJp; zFM*o$?+CE%6n`HJ8^UN7`vT=mB1#Uv=>cbG%n|*Xk2BD|?&~2;8TaKX0e9cmcY%*I TZRIF=&T`(VKk3zUH4y^I&*KXHHosLbII12V#@5k&=DHAv~rU}OzY zb#NhwQm8s4rG(VMloFv1tQ4>NfGS`Jw|`+OARZ#ZUa%htse=UsUiZNi0cqUsLsA4) NhbjW*eMc8#003+~cMSjl literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_9.bmp b/src/drivers/win/res/te_piano_9.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b56b50b46eeacb6d27b8b8180347f3a80349c2a8 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHoqRinC12V$Y3sQ%y0?tNLickla zfGCA?Aq=R!$fEev!L5TckaYst2z%iwaGHlEfyPC+4^0A%ORhSIF>n%#KY&7TX{?q4 N6<`TJG?O4)1^`_YjgkNW literal 0 HcmV?d00001 diff --git a/src/drivers/win/res/te_piano_9_lostpos.bmp b/src/drivers/win/res/te_piano_9_lostpos.bmp new file mode 100644 index 0000000000000000000000000000000000000000..a0d3ed62d986f7e80bbf44c2ed967b4554f56010 GIT binary patch literal 574 zcmZ?rwPRuc12Z700mQse%*Y@C7UzJ&*KXHHosLbII12V#@5k&=DHAFMA2Blx8PpPd4@()&1wCAxl(5E00K055C8xG literal 0 HcmV?d00001 diff --git a/src/drivers/win/resource.h b/src/drivers/win/resource.h index 4ace07cc..87adf848 100644 --- a/src/drivers/win/resource.h +++ b/src/drivers/win/resource.h @@ -241,6 +241,67 @@ #define IDC_DEBUGGER_FLAG_Z 206 #define IDC_DEBUGGER_FLAG_C 207 #define IDC_DEBUGGER_ENABLE_SYMBOLIC 208 +#define IDB_TE_GREEN_BLUE_ARROW 208 +#define IDB_PIANO_0 209 +#define IDB_PIANO_1 210 +#define IDB_PIANO_2 211 +#define IDB_PIANO_3 212 +#define IDB_PIANO_4 213 +#define IDB_PIANO_5 214 +#define IDB_PIANO_6 215 +#define IDB_PIANO_7 216 +#define IDB_PIANO_8 217 +#define IDB_PIANO_9 218 +#define IDB_PIANO_10 219 +#define IDB_PIANO_11 220 +#define IDB_PIANO_12 221 +#define IDB_PIANO_13 222 +#define IDB_PIANO_14 223 +#define IDB_PIANO_15 224 +#define IDB_PIANO_16 225 +#define IDB_PIANO_17 226 +#define IDB_PIANO_18 227 +#define IDB_PIANO_19 228 +#define IDB_PIANO_PLAYBACK_0 229 +#define IDB_PIANO_PLAYBACK_1 230 +#define IDB_PIANO_PLAYBACK_2 231 +#define IDB_PIANO_PLAYBACK_3 232 +#define IDB_PIANO_PLAYBACK_4 233 +#define IDB_PIANO_PLAYBACK_5 234 +#define IDB_PIANO_PLAYBACK_6 235 +#define IDB_PIANO_PLAYBACK_7 236 +#define IDB_PIANO_PLAYBACK_8 237 +#define IDB_PIANO_PLAYBACK_9 238 +#define IDB_PIANO_PLAYBACK_10 239 +#define IDB_PIANO_PLAYBACK_11 240 +#define IDB_PIANO_PLAYBACK_12 241 +#define IDB_PIANO_PLAYBACK_13 242 +#define IDB_PIANO_PLAYBACK_14 243 +#define IDB_PIANO_PLAYBACK_15 244 +#define IDB_PIANO_PLAYBACK_16 245 +#define IDB_PIANO_PLAYBACK_17 246 +#define IDB_PIANO_PLAYBACK_18 247 +#define IDB_PIANO_PLAYBACK_19 248 +#define IDB_PIANO_LOSTPOS_0 249 +#define IDB_PIANO_LOSTPOS_1 250 +#define IDB_PIANO_LOSTPOS_2 251 +#define IDB_PIANO_LOSTPOS_3 252 +#define IDB_PIANO_LOSTPOS_4 253 +#define IDB_PIANO_LOSTPOS_5 254 +#define IDB_PIANO_LOSTPOS_6 255 +#define IDB_PIANO_LOSTPOS_7 256 +#define IDB_PIANO_LOSTPOS_8 257 +#define IDB_PIANO_LOSTPOS_9 258 +#define IDB_PIANO_LOSTPOS_10 259 +#define IDB_PIANO_LOSTPOS_11 260 +#define IDB_PIANO_LOSTPOS_12 261 +#define IDB_PIANO_LOSTPOS_13 262 +#define IDB_PIANO_LOSTPOS_14 263 +#define IDB_PIANO_LOSTPOS_15 264 +#define IDB_PIANO_LOSTPOS_16 265 +#define IDB_PIANO_LOSTPOS_17 266 +#define IDB_PIANO_LOSTPOS_18 267 +#define IDB_PIANO_LOSTPOS_19 268 #define BTN_NETMOO_CONNECT 250 #define MENU_HIDE_MENU 300 #define COMBO_FILTER 300 @@ -1021,7 +1082,7 @@ // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 206 +#define _APS_NEXT_RESOURCE_VALUE 269 #define _APS_NEXT_COMMAND_VALUE 40564 #define _APS_NEXT_CONTROL_VALUE 1281 #define _APS_NEXT_SYMED_VALUE 101 diff --git a/src/drivers/win/taseditor/bookmarks.cpp b/src/drivers/win/taseditor/bookmarks.cpp index 90aaf726..88312216 100644 --- a/src/drivers/win/taseditor/bookmarks.cpp +++ b/src/drivers/win/taseditor/bookmarks.cpp @@ -76,8 +76,69 @@ void BOOKMARKS::init() ListView_SetExtendedListViewStyleEx(hwndBookmarksList, LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES, LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES); // subclass the listview hwndBookmarksList_oldWndProc = (WNDPROC)SetWindowLong(hwndBookmarksList, GWL_WNDPROC, (LONG)BookmarksListWndProc); - // setup same images for the listview - ListView_SetImageList(hwndBookmarksList, piano_roll.himglist, LVSIL_SMALL); + // setup images for the listview + himglist = ImageList_Create(9, 13, ILC_COLOR8 | ILC_MASK, 1, 1); + HBITMAP bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP0)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP1)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP2)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP3)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP4)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP5)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP6)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP7)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP8)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP9)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP10)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP11)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP12)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP13)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP14)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP15)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP16)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP17)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP18)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP19)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + ListView_SetImageList(hwndBookmarksList, himglist, LVSIL_SMALL); // setup columns LVCOLUMN lvc; // icons column @@ -114,6 +175,11 @@ void BOOKMARKS::init() void BOOKMARKS::free() { bookmarks_array.resize(0); + if (himglist) + { + ImageList_Destroy(himglist); + himglist = 0; + } } void BOOKMARKS::reset() { @@ -402,17 +468,17 @@ error: void BOOKMARKS::RedrawBookmarksCaption() { int prev_edit_mode = edit_mode; - if (taseditor_config.branch_only_when_rec && movie_readonly) + if (taseditor_config.view_branches_tree) + { + edit_mode = EDIT_MODE_BRANCHES; + ShowWindow(hwndBookmarksList, SW_HIDE); + ShowWindow(hwndBranchesBitmap, SW_SHOW); + } else if (taseditor_config.branch_only_when_rec && movie_readonly) { edit_mode = EDIT_MODE_BOOKMARKS; ShowWindow(hwndBranchesBitmap, SW_HIDE); ShowWindow(hwndBookmarksList, SW_SHOW); RedrawBookmarksList(); - } else if (taseditor_config.view_branches_tree) - { - edit_mode = EDIT_MODE_BRANCHES; - ShowWindow(hwndBookmarksList, SW_HIDE); - ShowWindow(hwndBranchesBitmap, SW_SHOW); } else { edit_mode = EDIT_MODE_BOTH; diff --git a/src/drivers/win/taseditor/bookmarks.h b/src/drivers/win/taseditor/bookmarks.h index e5db12cd..e7bd56c7 100644 --- a/src/drivers/win/taseditor/bookmarks.h +++ b/src/drivers/win/taseditor/bookmarks.h @@ -21,7 +21,7 @@ enum COMMANDS TOTAL_COMMANDS }; -#define BOOKMARKSLIST_COLUMN_ICONS_WIDTH 13 +#define BOOKMARKSLIST_COLUMN_ICONS_WIDTH 14 #define BOOKMARKSLIST_COLUMN_FRAMENUM_WIDTH 74 #define BOOKMARKSLIST_COLUMN_TIME_WIDTH 82 @@ -104,5 +104,6 @@ private: // GDI stuff HFONT hBookmarksFont; + HIMAGELIST himglist; }; diff --git a/src/drivers/win/taseditor/piano_roll.cpp b/src/drivers/win/taseditor/piano_roll.cpp index d76bdbf2..93faf491 100644 --- a/src/drivers/win/taseditor/piano_roll.cpp +++ b/src/drivers/win/taseditor/piano_roll.cpp @@ -138,65 +138,185 @@ void PIANO_ROLL::init() // disable Visual Themes for header SetWindowTheme(hwndHeader, L"", L""); // setup images for the listview - himglist = ImageList_Create(9, 13, ILC_COLOR8 | ILC_MASK, 1, 1); - HBITMAP bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP0)); + himglist = ImageList_Create(13, 13, ILC_COLOR8 | ILC_MASK, 1, 1); + HBITMAP bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_0)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP1)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_1)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP2)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_2)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP3)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_3)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP4)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_4)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP5)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_5)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP6)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_6)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP7)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_7)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP8)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_8)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP9)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_9)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP10)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_10)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP11)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_11)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP12)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_12)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP13)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_13)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP14)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_14)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP15)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_15)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP16)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_16)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP17)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_17)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP18)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_18)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); - bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_BITMAP19)); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_19)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_0)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_1)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_2)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_3)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_4)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_5)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_6)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_7)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_8)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_9)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_10)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_11)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_12)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_13)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_14)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_15)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_16)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_17)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_18)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_PLAYBACK_19)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_0)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_1)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_2)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_3)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_4)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_5)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_6)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_7)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_8)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_9)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_10)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_11)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_12)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_13)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_14)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_15)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_16)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_17)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_18)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_PIANO_LOSTPOS_19)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_TE_ARROW)); @@ -205,6 +325,9 @@ void PIANO_ROLL::init() bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_TE_GREEN_ARROW)); ImageList_AddMasked(himglist, bmp, 0xFFFFFF); DeleteObject(bmp); + bmp = LoadBitmap(fceu_hInstance, MAKEINTRESOURCE(IDB_TE_GREEN_BLUE_ARROW)); + ImageList_AddMasked(himglist, bmp, 0xFFFFFF); + DeleteObject(bmp); ListView_SetImageList(hwndList, himglist, LVSIL_SMALL); // setup 0th column LVCOLUMN lvc; @@ -1064,10 +1187,24 @@ void PIANO_ROLL::GetDispInfo(NMLVDISPINFO* nmlvDispInfo) item.iImage = bookmarks.FindBookmarkAtFrame(item.iItem); if (item.iImage < 0) { - if (item.iItem == currFrameCounter) - item.iImage = ARROW_IMAGE_ID; - else if (item.iItem == playback.lost_position_frame-1) - item.iImage = GREEN_ARROW_IMAGE_ID; + // no bookmark at this frame + if (item.iItem == playback.lost_position_frame - 1) + { + if (item.iItem == currFrameCounter) + item.iImage = GREEN_BLUE_ARROW_IMAGE_ID; + else + item.iImage = GREEN_ARROW_IMAGE_ID; + } else if (item.iItem == currFrameCounter) + { + item.iImage = BLUE_ARROW_IMAGE_ID; + } + } else + { + // bookmark at this frame + if (item.iItem == playback.lost_position_frame - 1) + item.iImage += BOOKMARKS_WITH_GREEN_ARROW; + else if (item.iItem == currFrameCounter) + item.iImage += BOOKMARKS_WITH_BLUE_ARROW; } break; } diff --git a/src/drivers/win/taseditor/piano_roll.h b/src/drivers/win/taseditor/piano_roll.h index 778a85fc..66920802 100644 --- a/src/drivers/win/taseditor/piano_roll.h +++ b/src/drivers/win/taseditor/piano_roll.h @@ -86,10 +86,14 @@ enum DRAG_MODES #define NUM_COLUMNS_NEED_2ND_FRAMENUM COLUMN_JOYPAD4_R #define DIGITS_IN_FRAMENUM 7 -#define ARROW_IMAGE_ID 20 -#define GREEN_ARROW_IMAGE_ID 21 -#define COLUMN_ICONS_WIDTH 16 +#define BOOKMARKS_WITH_BLUE_ARROW 20 +#define BOOKMARKS_WITH_GREEN_ARROW 40 +#define BLUE_ARROW_IMAGE_ID 60 +#define GREEN_ARROW_IMAGE_ID 61 +#define GREEN_BLUE_ARROW_IMAGE_ID 62 + +#define COLUMN_ICONS_WIDTH 17 #define COLUMN_FRAMENUM_WIDTH 75 #define COLUMN_BUTTON_WIDTH 21 @@ -207,7 +211,6 @@ public: HWND hwndMarkerDragBox, hwndMarkerDragBoxText; // GDI stuff - HIMAGELIST himglist; HFONT hMainListFont, hMainListSelectFont, hMarkersFont, hMarkersEditFont, hTaseditorAboutFont; HBRUSH bg_brush, marker_drag_box_brush, marker_drag_box_brush_bind; @@ -225,6 +228,9 @@ private: HMENU hrmenu; + // GDI stuff + HIMAGELIST himglist; + WNDCLASSEX wincl; BLENDFUNCTION blend; diff --git a/src/drivers/win/taseditor/playback.cpp b/src/drivers/win/taseditor/playback.cpp index 0c55d3df..dfb5e90f 100644 --- a/src/drivers/win/taseditor/playback.cpp +++ b/src/drivers/win/taseditor/playback.cpp @@ -137,14 +137,10 @@ void PLAYBACK::update() } } - // forget lost_position_frame when the position is restored - if (currFrameCounter + 1 >= lost_position_frame) - lost_position_frame = 0; - // pause when seeking hits pause_frame if(pause_frame && currFrameCounter + 1 >= pause_frame) SeekingStop(); - else if (!lost_position_frame && currFrameCounter >= currMovieData.getNumRecords()-1 && autopause_at_the_end && taseditor_config.autopause_at_finish) + else if (currFrameCounter + 1 > lost_position_frame && currFrameCounter >= currMovieData.getNumRecords()-1 && autopause_at_the_end && taseditor_config.autopause_at_finish) // pause at the end of the movie PauseEmulation(); @@ -273,7 +269,7 @@ void PLAYBACK::UnpauseEmulation() } void PLAYBACK::RestorePosition() { - if (lost_position_frame && lost_position_frame > currFrameCounter + 1) + if (lost_position_frame > currFrameCounter + 1) { if (emu_paused) SeekingStart(lost_position_frame); @@ -304,7 +300,7 @@ void PLAYBACK::MiddleButtonClick() int selection_beginning = selection.GetCurrentSelectionBeginning(); if (selection_beginning > currFrameCounter) SeekingStart(selection_beginning + 1); - } else if (lost_position_frame && lost_position_frame > currFrameCounter + 1) // (GetAsyncKeyState(VK_MENU) < 0) + } else if (lost_position_frame > currFrameCounter + 1) { RestorePosition(); } else diff --git a/vc/vc10_fceux.vcxproj b/vc/vc10_fceux.vcxproj index b356af13..9425bfa3 100644 --- a/vc/vc10_fceux.vcxproj +++ b/vc/vc10_fceux.vcxproj @@ -872,6 +872,8 @@ + + @@ -915,6 +917,7 @@ $(OutDir)auxlib.lua;%(Outputs) + diff --git a/vc/vc10_fceux.vcxproj.filters b/vc/vc10_fceux.vcxproj.filters index 37af602f..3585c102 100644 --- a/vc/vc10_fceux.vcxproj.filters +++ b/vc/vc10_fceux.vcxproj.filters @@ -1544,6 +1544,9 @@ + + +