summaryrefslogtreecommitdiff
path: root/src/testApp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/testApp.cpp')
-rwxr-xr-xsrc/testApp.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/testApp.cpp b/src/testApp.cpp
index 312aa57..e443c1e 100755
--- a/src/testApp.cpp
+++ b/src/testApp.cpp
@@ -1,4 +1,20 @@
#include "testApp.h"
+string urlDecode(string &SRC) {
+ string ret;
+ char ch;
+ int i, ii;
+ for (i=0; i<SRC.length(); i++) {
+ if (int(SRC[i])==37) {
+ sscanf(SRC.substr(i+1,2).c_str(), "%x", &ii);
+ ch=static_cast<char>(ii);
+ ret+=ch;
+ i=i+2;
+ } else {
+ ret+=SRC[i];
+ }
+ }
+ return (ret);
+}
//--------------------------------------------------------------
guiWindow::~guiWindow(){
cout << "gui window destroyed" << endl;
@@ -245,7 +261,6 @@ void testApp::mousePressed(int x, int y, int button){
case 0:
selectedPoint=boundaries[selectedBoundary].findPoint(p);
if (selectedPoint<0) {
- selectedPoint=boundaries[selectedBoundary].points.size();
boundaries[selectedBoundary].add(p);
}
else boundaries[selectedBoundary].points[selectedPoint]=p;
@@ -286,7 +301,8 @@ void testApp::dragEvent(ofDragInfo dragInfo) {
printf("got draginfo: %f,%f,%f\n",dragInfo.position.x,dragInfo.position.y,dragInfo.position.z);
int sta=dragInfo.files[0].find_last_of("\\/")+1;
int len=(dragInfo.files[0].find_last_of(".")+4)-sta;
- string filename=dragInfo.files[0].substr(sta,len);
+ string f=dragInfo.files[0].substr(sta,len);
+ string filename=urlDecode(f);
for (int i=0;i<boundaries.size();i++) {
if (boundaries[i].checkFile(dragInfo.position,filename)) printf("loaded %s into shape %i\n",filename.c_str(),i);
}