Can now load XML files to the rocket data
This commit is contained in:
parent
2c88f2470b
commit
275dbf68ec
@ -27,7 +27,6 @@
|
|||||||
|
|
||||||
typedef struct EditorData
|
typedef struct EditorData
|
||||||
{
|
{
|
||||||
struct sync_data syncData;
|
|
||||||
TrackViewInfo trackViewInfo;
|
TrackViewInfo trackViewInfo;
|
||||||
TrackData trackData;
|
TrackData trackData;
|
||||||
} EditorData;
|
} EditorData;
|
||||||
@ -64,7 +63,7 @@ void Editor_update()
|
|||||||
{
|
{
|
||||||
Emgui_begin();
|
Emgui_begin();
|
||||||
|
|
||||||
TrackView_render(&s_editorData.trackViewInfo, &s_editorData.syncData);
|
TrackView_render(&s_editorData.trackViewInfo, &s_editorData.trackData.syncData);
|
||||||
|
|
||||||
Emgui_end();
|
Emgui_end();
|
||||||
}
|
}
|
||||||
@ -165,7 +164,7 @@ static void processCommands()
|
|||||||
|
|
||||||
// setup remap and send the keyframes to the demo
|
// setup remap and send the keyframes to the demo
|
||||||
RemoteConnection_mapTrackName(trackName);
|
RemoteConnection_mapTrackName(trackName);
|
||||||
RemoteConnection_sendKeyFrames(trackName, s_editorData.syncData.tracks[serverIndex]);
|
RemoteConnection_sendKeyFrames(trackName, s_editorData.trackData.syncData.tracks[serverIndex]);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -199,7 +198,8 @@ void Editor_timedUpdate()
|
|||||||
|
|
||||||
static void onOpen()
|
static void onOpen()
|
||||||
{
|
{
|
||||||
LoadSave_loadRocketXMLDialog(&s_editorData.trackData);
|
if (LoadSave_loadRocketXMLDialog(&s_editorData.trackData))
|
||||||
|
Editor_update();
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
@ -7,7 +7,7 @@ int TrackData_createGetTrack(TrackData* trackData, const char* name)
|
|||||||
int index = sync_find_track(&trackData->syncData, name);
|
int index = sync_find_track(&trackData->syncData, name);
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
{
|
{
|
||||||
int index = sync_create_track(&trackData->syncData, name);
|
index = sync_create_track(&trackData->syncData, name);
|
||||||
trackData->order[trackData->orderCount] = index;
|
trackData->order[trackData->orderCount] = index;
|
||||||
trackData->orderCount++;
|
trackData->orderCount++;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,9 +11,11 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
{
|
{
|
||||||
int track_index = 0;
|
int track_index = 0;
|
||||||
//struct sync_track** tracks = trackData->syncData.tracks;
|
//struct sync_track** tracks = trackData->syncData.tracks;
|
||||||
|
mxml_node_t* node = rootNode;
|
||||||
|
|
||||||
// find the tracks element
|
// find the tracks element
|
||||||
|
|
||||||
|
/*
|
||||||
mxml_node_t* node = mxmlFindElement(rootNode, rootNode, "tracks", NULL, NULL, MXML_NO_DESCEND);
|
mxml_node_t* node = mxmlFindElement(rootNode, rootNode, "tracks", NULL, NULL, MXML_NO_DESCEND);
|
||||||
|
|
||||||
if (!node)
|
if (!node)
|
||||||
@ -30,6 +32,9 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Traverse the tracks node data
|
// Traverse the tracks node data
|
||||||
|
|
||||||
@ -50,10 +55,12 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
{
|
{
|
||||||
// TODO: Create the new track/channel here
|
// TODO: Create the new track/channel here
|
||||||
|
|
||||||
track_index = TrackData_createGetTrack(trackData, element_name);
|
const char* track_name = mxmlElementGetAttr(node, "name");
|
||||||
|
|
||||||
|
track_index = TrackData_createGetTrack(trackData, track_name);
|
||||||
printf("track_index %d\n", track_index);
|
printf("track_index %d\n", track_index);
|
||||||
|
|
||||||
printf("Creating track/channel with name %s\n", mxmlElementGetAttr(node, "name"));
|
printf("Creating track/channel with name %s\n", track_name);
|
||||||
}
|
}
|
||||||
else if (!strcmp("key", element_name))
|
else if (!strcmp("key", element_name))
|
||||||
{
|
{
|
||||||
@ -68,7 +75,9 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
|||||||
k.value = (float)(atof(value));
|
k.value = (float)(atof(value));
|
||||||
k.type = (atoi(interpolation));
|
k.type = (atoi(interpolation));
|
||||||
|
|
||||||
assert(!is_key_frame(track, k.row));
|
int is_key = is_key_frame(track, k.row);
|
||||||
|
|
||||||
|
assert(!is_key);
|
||||||
sync_set_key(track, &k);
|
sync_set_key(track, &k);
|
||||||
|
|
||||||
printf("Adding key: row %s | value %s | interpolation %s\n", row, value, interpolation);
|
printf("Adding key: row %s | value %s | interpolation %s\n", row, value, interpolation);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user