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
|
||||
{
|
||||
struct sync_data syncData;
|
||||
TrackViewInfo trackViewInfo;
|
||||
TrackData trackData;
|
||||
} EditorData;
|
||||
@ -64,7 +63,7 @@ void Editor_update()
|
||||
{
|
||||
Emgui_begin();
|
||||
|
||||
TrackView_render(&s_editorData.trackViewInfo, &s_editorData.syncData);
|
||||
TrackView_render(&s_editorData.trackViewInfo, &s_editorData.trackData.syncData);
|
||||
|
||||
Emgui_end();
|
||||
}
|
||||
@ -165,7 +164,7 @@ static void processCommands()
|
||||
|
||||
// setup remap and send the keyframes to the demo
|
||||
RemoteConnection_mapTrackName(trackName);
|
||||
RemoteConnection_sendKeyFrames(trackName, s_editorData.syncData.tracks[serverIndex]);
|
||||
RemoteConnection_sendKeyFrames(trackName, s_editorData.trackData.syncData.tracks[serverIndex]);
|
||||
|
||||
break;
|
||||
}
|
||||
@ -199,7 +198,8 @@ void Editor_timedUpdate()
|
||||
|
||||
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);
|
||||
if (index < 0)
|
||||
{
|
||||
int index = sync_create_track(&trackData->syncData, name);
|
||||
index = sync_create_track(&trackData->syncData, name);
|
||||
trackData->order[trackData->orderCount] = index;
|
||||
trackData->orderCount++;
|
||||
}
|
||||
|
||||
@ -11,9 +11,11 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
||||
{
|
||||
int track_index = 0;
|
||||
//struct sync_track** tracks = trackData->syncData.tracks;
|
||||
mxml_node_t* node = rootNode;
|
||||
|
||||
// find the tracks element
|
||||
|
||||
/*
|
||||
mxml_node_t* node = mxmlFindElement(rootNode, rootNode, "tracks", NULL, NULL, MXML_NO_DESCEND);
|
||||
|
||||
if (!node)
|
||||
@ -30,6 +32,9 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
||||
return;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
// 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
|
||||
|
||||
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("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))
|
||||
{
|
||||
@ -68,7 +75,9 @@ static void parseXml(mxml_node_t* rootNode, TrackData* trackData)
|
||||
k.value = (float)(atof(value));
|
||||
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);
|
||||
|
||||
printf("Adding key: row %s | value %s | interpolation %s\n", row, value, interpolation);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user