It's sometimes useful to be able to load a rocket-file by dragging
it onto the editor executable, or even registering the editor as
an open-handler for the rocket-filetype
Support this by accepting an optional argument that specifies the
file to load.
Shift+PgUp/PgDn was a poor choice for bookmark-browsing keys, as
it's also useful for selecting sync-data for copy/paste.
Fix this by changing the hotkeys to Alt+PgUp/PgDn instead.
A typo made the finding of the previous bookmark when the current
row is located after the last bookmark to fail. Fix this by
replacing a call to std::set<int>::rend() with a call to
std::set<int>::rbegin().
A new, unmodified document does not contain any interresting data,
let's not bother the user about saving before quitting in that
case.
fixup some code style while at it.
return the status from EndDialog instead of a constant TRUE. This
is mostly about keeping the code "honest", it doesn't change
anything in reality.
Also fix up some code-style.
We previously rolled our own text <-> int conversion code for
the dialogs. Use winapi's built-in one instead.
While we're at it, fix some indentation and a return-code.
If an error happens while loading, the old document should be left
intact. Ensure this by not modifying the document until all loading
code has been run.
Remove newlines to reduce noise from visual studio when updating
the resources.
Fix _APS_NEXT_RESOURCE_VALUE so 104 won't be generated, it already
exist.
afxres.h is MFC-ism, and is not included in Visual Studio Express 2008.
To avoid confusing the resource editor in other visual studio versions,
let's implement a minimal version ourselves.
With some really bad luck, it was possible to crash inside
std::string::resize() if the connection was disconnected
right after sending the GET_TRACK command.
The network code assumes that the client and server have the
same endianess. This isn't always the case, so let's change
it all to network byte-order.
This change is not backwards compatible, so old clients and
new editors (or vica verca) will not work together any more.
Previously the only way of reordering tracks were with an
obscure keyboard short-cut. Most users would expect to be
able to do this with the mouse, so we'll allow that.