Added highlightRowStep
This is used to change the the highlighted row number in the UI which might be useful depending on if the music has a non-regular BPM or similar issue. Right now it's not possible to change it in the UI so the best way to change it right now is to save a .rocket file, open it in a text editor and change the "highlightRowStep" on the <tracks tag Closes #85
This commit is contained in:
parent
3533af8de7
commit
aeddba394f
@ -260,6 +260,7 @@ void Editor_create()
|
|||||||
s_editorData.trackViewInfo.smallFontId = id;
|
s_editorData.trackViewInfo.smallFontId = id;
|
||||||
s_editorData.trackData.startRow = 0;
|
s_editorData.trackData.startRow = 0;
|
||||||
s_editorData.trackData.endRow = 10000;
|
s_editorData.trackData.endRow = 10000;
|
||||||
|
s_editorData.trackData.highlightRowStep = 8;
|
||||||
|
|
||||||
Emgui_setDefaultFont();
|
Emgui_setDefaultFont();
|
||||||
}
|
}
|
||||||
@ -1363,6 +1364,8 @@ static void onTab()
|
|||||||
|
|
||||||
void Editor_menuEvent(int menuItem)
|
void Editor_menuEvent(int menuItem)
|
||||||
{
|
{
|
||||||
|
int highlightRowStep = getTrackData()->highlightRowStep;
|
||||||
|
|
||||||
switch (menuItem)
|
switch (menuItem)
|
||||||
{
|
{
|
||||||
case EDITOR_MENU_ENTER_CURRENT_V :
|
case EDITOR_MENU_ENTER_CURRENT_V :
|
||||||
@ -1438,8 +1441,8 @@ void Editor_menuEvent(int menuItem)
|
|||||||
// View
|
// View
|
||||||
|
|
||||||
case EDITOR_MENU_PLAY : onPlay(); break;
|
case EDITOR_MENU_PLAY : onPlay(); break;
|
||||||
case EDITOR_MENU_ROWS_UP : onRowStep(-8, NO_SELECTION); break;
|
case EDITOR_MENU_ROWS_UP : onRowStep(-highlightRowStep , NO_SELECTION); break;
|
||||||
case EDITOR_MENU_ROWS_DOWN : onRowStep(8, NO_SELECTION); break;
|
case EDITOR_MENU_ROWS_DOWN : onRowStep(highlightRowStep , NO_SELECTION); break;
|
||||||
case EDITOR_MENU_PREV_BOOKMARK : onBookmarkDir(ARROW_UP, NO_SELECTION); break;
|
case EDITOR_MENU_PREV_BOOKMARK : onBookmarkDir(ARROW_UP, NO_SELECTION); break;
|
||||||
case EDITOR_MENU_NEXT_BOOKMARK : onBookmarkDir(ARROW_DOWN, NO_SELECTION); break;
|
case EDITOR_MENU_NEXT_BOOKMARK : onBookmarkDir(ARROW_DOWN, NO_SELECTION); break;
|
||||||
case EDITOR_MENU_FIRST_TRACK : onTrackSide(ARROW_LEFT, true, NO_SELECTION); break;
|
case EDITOR_MENU_FIRST_TRACK : onTrackSide(ARROW_LEFT, true, NO_SELECTION); break;
|
||||||
@ -1505,6 +1508,7 @@ static bool doEditing(int key)
|
|||||||
bool Editor_keyDown(int key, int keyCode, int modifiers)
|
bool Editor_keyDown(int key, int keyCode, int modifiers)
|
||||||
{
|
{
|
||||||
enum Selection selection = modifiers & EMGUI_KEY_SHIFT ? DO_SELECTION : NO_SELECTION;
|
enum Selection selection = modifiers & EMGUI_KEY_SHIFT ? DO_SELECTION : NO_SELECTION;
|
||||||
|
int highlightRowStep = getTrackData()->highlightRowStep;
|
||||||
|
|
||||||
if (Emgui_hasKeyboardFocus())
|
if (Emgui_hasKeyboardFocus())
|
||||||
{
|
{
|
||||||
@ -1556,7 +1560,7 @@ bool Editor_keyDown(int key, int keyCode, int modifiers)
|
|||||||
else if (modifiers & EMGUI_KEY_COMMAND)
|
else if (modifiers & EMGUI_KEY_COMMAND)
|
||||||
onBookmarkDir(ARROW_UP, selection);
|
onBookmarkDir(ARROW_UP, selection);
|
||||||
else if (modifiers & EMGUI_KEY_ALT)
|
else if (modifiers & EMGUI_KEY_ALT)
|
||||||
onRowStep(-8, selection);
|
onRowStep(-highlightRowStep , selection);
|
||||||
else
|
else
|
||||||
onRowStep(-1, selection);
|
onRowStep(-1, selection);
|
||||||
|
|
||||||
@ -1570,7 +1574,7 @@ bool Editor_keyDown(int key, int keyCode, int modifiers)
|
|||||||
else if (modifiers & EMGUI_KEY_COMMAND)
|
else if (modifiers & EMGUI_KEY_COMMAND)
|
||||||
onBookmarkDir(ARROW_DOWN, selection);
|
onBookmarkDir(ARROW_DOWN, selection);
|
||||||
else if (modifiers & EMGUI_KEY_ALT)
|
else if (modifiers & EMGUI_KEY_ALT)
|
||||||
onRowStep(8, selection);
|
onRowStep(highlightRowStep, selection);
|
||||||
else
|
else
|
||||||
onRowStep(1, selection);
|
onRowStep(1, selection);
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -73,6 +73,7 @@ typedef struct TrackData
|
|||||||
int trackCount;
|
int trackCount;
|
||||||
int startRow;
|
int startRow;
|
||||||
int endRow;
|
int endRow;
|
||||||
|
int highlightRowStep;
|
||||||
char* editText;
|
char* editText;
|
||||||
} TrackData;
|
} TrackData;
|
||||||
|
|
||||||
|
|||||||
@ -598,7 +598,7 @@ bool TrackView_render(TrackViewInfo* viewInfo, TrackData* trackData)
|
|||||||
|
|
||||||
x_pos = TrackView_getStartOffset() + -viewInfo->startPixel;
|
x_pos = TrackView_getStartOffset() + -viewInfo->startPixel;
|
||||||
|
|
||||||
printRowNumbers(2, adjust_top_size, end_row, y_pos_row, font_size, 8, y_end_border);
|
printRowNumbers(2, adjust_top_size, end_row, y_pos_row, font_size, trackData->highlightRowStep, y_end_border);
|
||||||
Emgui_drawBorder(border_color, border_color, 48, info.startY - font_size * 4, viewInfo->windowSizeX - 80, (info.endSizeY - info.startY) + 40);
|
Emgui_drawBorder(border_color, border_color, 48, info.startY - font_size * 4, viewInfo->windowSizeX - 80, (info.endSizeY - info.startY) + 40);
|
||||||
|
|
||||||
Emgui_setLayer(1);
|
Emgui_setLayer(1);
|
||||||
|
|||||||
@ -22,6 +22,7 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
|
|
||||||
free(trackData->bookmarks);
|
free(trackData->bookmarks);
|
||||||
trackData->bookmarkCount = 0;
|
trackData->bookmarkCount = 0;
|
||||||
|
trackData->highlightRowStep = 8;
|
||||||
|
|
||||||
// Traverse the tracks node data
|
// Traverse the tracks node data
|
||||||
|
|
||||||
@ -55,12 +56,16 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
{
|
{
|
||||||
const char* start_row = mxmlElementGetAttr(node, "startRow");
|
const char* start_row = mxmlElementGetAttr(node, "startRow");
|
||||||
const char* end_row = mxmlElementGetAttr(node, "endRow");
|
const char* end_row = mxmlElementGetAttr(node, "endRow");
|
||||||
|
const char* hlrow_step = mxmlElementGetAttr(node, "highlightRowStep");
|
||||||
|
|
||||||
if (start_row)
|
if (start_row)
|
||||||
trackData->startRow = atoi(start_row);
|
trackData->startRow = atoi(start_row);
|
||||||
|
|
||||||
if (end_row)
|
if (end_row)
|
||||||
trackData->endRow = atoi(end_row);
|
trackData->endRow = atoi(end_row);
|
||||||
|
|
||||||
|
if (hlrow_step)
|
||||||
|
trackData->highlightRowStep = atoi(hlrow_step);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!strcmp("track", element_name))
|
if (!strcmp("track", element_name))
|
||||||
@ -312,6 +317,7 @@ int LoadSave_saveRocketXML(const text_t* path, TrackData* trackData)
|
|||||||
mxmlElementSetAttr(tracks, "rows", "10000");
|
mxmlElementSetAttr(tracks, "rows", "10000");
|
||||||
setElementInt(tracks, "startRow", "%d", trackData->startRow);
|
setElementInt(tracks, "startRow", "%d", trackData->startRow);
|
||||||
setElementInt(tracks, "endRow", "%d", trackData->endRow);
|
setElementInt(tracks, "endRow", "%d", trackData->endRow);
|
||||||
|
setElementInt(tracks, "highlightRowStep", "%d", trackData->highlightRowStep);
|
||||||
|
|
||||||
for (p = 0; p < sync_data->num_tracks; ++p)
|
for (p = 0; p < sync_data->num_tracks; ++p)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user