diff options
| author | Josh Bell <josh@lindenlab.com> | 2007-04-04 19:49:24 +0000 |
|---|---|---|
| committer | Josh Bell <josh@lindenlab.com> | 2007-04-04 19:49:24 +0000 |
| commit | 98740db8fd5875033d08b6aef6d9bf5c3c49eeee (patch) | |
| tree | dd0e83734e50ffd4d9f87eb2ed4091f867f2f1fd /indra/newview/llfloatermap.cpp | |
| parent | aa96d1fddff3d5bf68a5014229a0d20584937222 (diff) | |
svn merge -r 59826:59968 svn+ssh://svn.lindenlab.com/svn/linden/branches/maintenance --> release
Diffstat (limited to 'indra/newview/llfloatermap.cpp')
| -rw-r--r-- | indra/newview/llfloatermap.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/indra/newview/llfloatermap.cpp b/indra/newview/llfloatermap.cpp index d53929272c..242f5b7991 100644 --- a/indra/newview/llfloatermap.cpp +++ b/indra/newview/llfloatermap.cpp @@ -197,3 +197,47 @@ void LLFloaterMap::toggle(void*) } } } + + +BOOL process_secondlife_url(LLString url) +{ + S32 strpos, strpos2; + + LLString slurlID = "slurl.com/secondlife/"; + strpos = url.find(slurlID); + + if (strpos < 0) + { + slurlID="secondlife://"; + strpos = url.find(slurlID); + } + + if (strpos >= 0) + { + LLString simname; + + strpos+=slurlID.length(); + strpos2=url.find("/",strpos); + if (strpos2 < strpos) strpos2=url.length(); + simname="secondlife://" + url.substr(strpos,url.length() - strpos); + + LLURLSimString::setString( simname ); + LLURLSimString::parse(); + + // if there is a world map + if ( gFloaterWorldMap ) + { + // mark where the destination is + gFloaterWorldMap->trackURL( LLURLSimString::sInstance.mSimName.c_str(), + LLURLSimString::sInstance.mX, + LLURLSimString::sInstance.mY, + LLURLSimString::sInstance.mZ ); + + // display map + LLFloaterWorldMap::show( NULL, TRUE ); + }; + + return TRUE; + } + return FALSE; +} |
