starting to do some saving/loading stuff
This commit is contained in:
parent
86543e1d04
commit
b7641dfcee
@ -86,6 +86,11 @@ BEGIN
|
||||
MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY
|
||||
MENUITEM "Cu&t\tCtrl+X", ID_EDIT_CUT
|
||||
MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE
|
||||
MENUITEM "Clear\tDel", ID_EDIT_CLEAR
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Select All\tCtrl+A", ID_EDIT_SELECTALL
|
||||
MENUITEM "Select Track", ID_EDIT_SELECTTRACK
|
||||
MENUITEM "Select Row", ID_EDIT_SELECTROW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Bias Selection\tCtrl+B", ID_EDIT_BIAS
|
||||
MENUITEM SEPARATOR
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Visual C++ generated include file.
|
||||
// Used by synctracker2.rc
|
||||
// Used by editor.rc
|
||||
//
|
||||
#define IDR_ACCELERATOR 101
|
||||
#define IDR_MENU 102
|
||||
@ -14,13 +14,17 @@
|
||||
#define ID_EDIT 40003
|
||||
#define ID_EDIT_SETROWS 40007
|
||||
#define ID_EDIT_BIAS 40008
|
||||
#define ID_EDIT_CLEAR40011 40011
|
||||
#define ID_EDIT_SELECTALL 40012
|
||||
#define ID_EDIT_SELECTROW 40013
|
||||
#define ID_EDIT_SELECTTRACK 40014
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 104
|
||||
#define _APS_NEXT_COMMAND_VALUE 40011
|
||||
#define _APS_NEXT_COMMAND_VALUE 40015
|
||||
#define _APS_NEXT_CONTROL_VALUE 1004
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
|
||||
@ -43,7 +43,7 @@ public:
|
||||
send(clientSocket, (char*)&cmd, 1, 0);
|
||||
send(clientSocket, (char*)&row, sizeof(int), 0);
|
||||
}
|
||||
|
||||
|
||||
void sendPauseCommand(bool pause)
|
||||
{
|
||||
unsigned char cmd = PAUSE;
|
||||
@ -52,7 +52,12 @@ public:
|
||||
send(clientSocket, (char*)&flag, 1, 0);
|
||||
clientPaused = pause;
|
||||
}
|
||||
|
||||
|
||||
void sendSaveCommand()
|
||||
{
|
||||
unsigned char cmd = SAVE_TRACKS;
|
||||
send(clientSocket, (char*)&cmd, 1, 0);
|
||||
}
|
||||
|
||||
class Command
|
||||
{
|
||||
|
||||
@ -939,6 +939,10 @@ LRESULT TrackView::onChar(UINT keyCode, UINT flags)
|
||||
case 'i':
|
||||
editToggleInterpolationType();
|
||||
break;
|
||||
|
||||
case 's':
|
||||
syncData->sendSaveCommand();
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -21,7 +21,10 @@ public:
|
||||
bool update(float row);
|
||||
|
||||
private:
|
||||
const std::string &baseName;
|
||||
std::string getTrackFileName(std::string trackName);
|
||||
void saveTracks();
|
||||
|
||||
const std::string baseName;
|
||||
sync::Data syncData;
|
||||
Timer &timer;
|
||||
|
||||
@ -121,6 +124,10 @@ bool ClientDevice::update(float row)
|
||||
}
|
||||
break;
|
||||
|
||||
case SAVE_TRACKS:
|
||||
saveTracks();
|
||||
break;
|
||||
|
||||
default:
|
||||
assert(false);
|
||||
fprintf(stderr, "unknown cmd: %02x\n", cmd);
|
||||
@ -143,6 +150,25 @@ bool ClientDevice::update(float row)
|
||||
return !done;
|
||||
}
|
||||
|
||||
std::string ClientDevice::getTrackFileName(std::string trackName)
|
||||
{
|
||||
std::string fileName = baseName.c_str();
|
||||
fileName += "_";
|
||||
fileName += trackName;
|
||||
fileName += ".track";
|
||||
return fileName;
|
||||
}
|
||||
|
||||
void ClientDevice::saveTracks()
|
||||
{
|
||||
sync::Data::TrackContainer::iterator iter;
|
||||
for (iter = syncData.tracks.begin(); iter != syncData.tracks.end(); ++iter)
|
||||
{
|
||||
std::string fileName = getTrackFileName(iter->first);
|
||||
printf("\"%s\"\n", fileName.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
Device *sync::createDevice(const std::string &baseName, Timer &timer)
|
||||
{
|
||||
if (false == initNetwork()) return NULL;
|
||||
@ -157,6 +183,6 @@ Device *sync::createDevice(const std::string &baseName, Timer &timer)
|
||||
SOCKET serverSocket = serverConnect(&sain);
|
||||
if (INVALID_SOCKET == serverSocket) return NULL;
|
||||
|
||||
Device *device = new ClientDevice(baseName, serverSocket, timer);
|
||||
ClientDevice *device = new ClientDevice(baseName, serverSocket, timer);
|
||||
return device;
|
||||
}
|
||||
|
||||
@ -13,19 +13,21 @@ SOCKET serverConnect(struct sockaddr_in *addr);
|
||||
|
||||
bool pollRead(SOCKET socket);
|
||||
|
||||
enum RemoteCommand {
|
||||
enum RemoteCommand
|
||||
{
|
||||
// server -> client
|
||||
SET_KEY = 0,
|
||||
DELETE_KEY = 1,
|
||||
SET_KEY,
|
||||
DELETE_KEY,
|
||||
|
||||
// client -> server
|
||||
GET_TRACK = 2,
|
||||
GET_TRACK,
|
||||
|
||||
// client -> server, server -> client
|
||||
SET_ROW = 3,
|
||||
SET_ROW,
|
||||
|
||||
// server -> client
|
||||
PAUSE = 4,
|
||||
PAUSE,
|
||||
SAVE_TRACKS
|
||||
};
|
||||
|
||||
#endif /* NETWORK_H */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user