diff options
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | indra/newview/llfilepicker.cpp | 20 | ||||
| -rw-r--r-- | indra/newview/llfloaterbvhpreview.cpp (renamed from indra/newview/llfloateranimpreview.cpp) | 110 | ||||
| -rw-r--r-- | indra/newview/llfloaterbvhpreview.h (renamed from indra/newview/llfloateranimpreview.h) | 16 | ||||
| -rw-r--r-- | indra/newview/llfloaternamedesc.cpp | 19 | ||||
| -rw-r--r-- | indra/newview/llfloaternamedesc.h | 7 | ||||
| -rw-r--r-- | indra/newview/llviewerfloaterreg.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/llviewermenufile.cpp | 16 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml | 76 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml (renamed from indra/newview/skins/default/xui/en/floater_animation_preview.xml) | 0 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/notifications.xml | 2 | 
11 files changed, 198 insertions, 77 deletions
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index f85b943c70..37b23803f2 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -166,7 +166,7 @@ set(viewer_SOURCE_FILES      llfirstuse.cpp      llflexibleobject.cpp      llfloaterabout.cpp -    llfloateranimpreview.cpp +    llfloaterbvhpreview.cpp      llfloaterauction.cpp      llfloateravatar.cpp      llfloateravatarpicker.cpp @@ -722,7 +722,7 @@ set(viewer_HEADER_FILES      llfirstuse.h      llflexibleobject.h      llfloaterabout.h -    llfloateranimpreview.h +    llfloaterbvhpreview.h      llfloaterauction.h      llfloateravatar.h      llfloateravatarpicker.h diff --git a/indra/newview/llfilepicker.cpp b/indra/newview/llfilepicker.cpp index 8024755e86..b426bcf84b 100644 --- a/indra/newview/llfilepicker.cpp +++ b/indra/newview/llfilepicker.cpp @@ -49,7 +49,7 @@ LLFilePicker LLFilePicker::sInstance;  #if LL_WINDOWS  #define SOUND_FILTER L"Sounds (*.wav)\0*.wav\0"  #define IMAGE_FILTER L"Images (*.tga; *.bmp; *.jpg; *.jpeg; *.png)\0*.tga;*.bmp;*.jpg;*.jpeg;*.png\0" -#define ANIM_FILTER L"Animations (*.bvh)\0*.bvh\0" +#define ANIM_FILTER L"Animations (*.bvh; *.anim)\0*.bvh;*.anim\0"  #define COLLADA_FILTER L"Scene (*.dae)\0*.dae\0"  #ifdef _CORY_TESTING  #define GEOMETRY_FILTER L"SL Geometry (*.slg)\0*.slg\0" @@ -593,8 +593,10 @@ Boolean LLFilePicker::navOpenFilterProc(AEDesc *theItem, void *info, void *callB  						}  						else if (filter == FFLOAD_ANIM)  						{ -							if (fileInfo.filetype != 'BVH ' &&  -								(fileInfo.extension && (CFStringCompare(fileInfo.extension, CFSTR("bvh"), kCFCompareCaseInsensitive) != kCFCompareEqualTo)) +							if (fileInfo.filetype != 'BVH ' && +								fileInfo.filetype != 'ANIM' && +								(fileInfo.extension && (CFStringCompare(fileInfo.extension, CFSTR("bvh"), kCFCompareCaseInsensitive) != kCFCompareEqualTo) && +								fileInfo.extension && (CFStringCompare(fileInfo.extension, CFSTR("anim"), kCFCompareCaseInsensitive) != kCFCompareEqualTo))  							)  							{  								result = false; @@ -1196,10 +1198,14 @@ static std::string add_wav_filter_to_gtkchooser(GtkWindow *picker)  						    LLTrans::getString("sound_files") + " (*.wav)");  } -static std::string add_bvh_filter_to_gtkchooser(GtkWindow *picker) +static std::string add_anim_filter_to_gtkchooser(GtkWindow *picker)  { -	return add_simple_pattern_filter_to_gtkchooser(picker,  "*.bvh", -						       LLTrans::getString("animation_files") + " (*.bvh)"); +	GtkFileFilter *gfilter = gtk_file_filter_new(); +	gtk_file_filter_add_pattern(gfilter, "*.bvh"); +	gtk_file_filter_add_pattern(gfilter, "*.anim"); +	std::string filtername = LLTrans::getString("animation_files") + " (*.bvh; *.anim)"); +	add_common_filters_to_gtkchooser(gfilter, picker, filtername); +	return filtername;  }  static std::string add_collada_filter_to_gtkchooser(GtkWindow *picker) @@ -1351,7 +1357,7 @@ BOOL LLFilePicker::getOpenFile( ELoadFilter filter, bool blocking )  			filtername = add_wav_filter_to_gtkchooser(picker);  			break;  		case FFLOAD_ANIM: -			filtername = add_bvh_filter_to_gtkchooser(picker); +			filtername = add_anim_filter_to_gtkchooser(picker);  			break;  		case FFLOAD_COLLADA:  			filtername = add_collada_filter_to_gtkchooser(picker); diff --git a/indra/newview/llfloateranimpreview.cpp b/indra/newview/llfloaterbvhpreview.cpp index 2a3512e21a..b050a638dc 100644 --- a/indra/newview/llfloateranimpreview.cpp +++ b/indra/newview/llfloaterbvhpreview.cpp @@ -1,6 +1,6 @@  /**  - * @file llfloateranimpreview.cpp - * @brief LLFloaterAnimPreview class implementation + * @file llfloaterbvhpreview.cpp + * @brief LLFloaterBvhPreview class implementation   *   * $LicenseInfo:firstyear=2004&license=viewerlgpl$   * Second Life Viewer Source Code @@ -26,7 +26,7 @@  #include "llviewerprecompiledheaders.h" -#include "llfloateranimpreview.h" +#include "llfloaterbvhpreview.h"  #include "llbvhloader.h"  #include "lldatapacker.h" @@ -115,9 +115,9 @@ std::string STATUS[] =  };  //----------------------------------------------------------------------------- -// LLFloaterAnimPreview() +// LLFloaterBvhPreview()  //----------------------------------------------------------------------------- -LLFloaterAnimPreview::LLFloaterAnimPreview(const std::string& filename) :  +LLFloaterBvhPreview::LLFloaterBvhPreview(const std::string& filename) :   	LLFloaterNameDesc(filename)  {  	mLastMouseX = 0; @@ -153,35 +153,35 @@ LLFloaterAnimPreview::LLFloaterAnimPreview(const std::string& filename) :  //-----------------------------------------------------------------------------  // setAnimCallbacks()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::setAnimCallbacks() +void LLFloaterBvhPreview::setAnimCallbacks()  { -	getChild<LLUICtrl>("playback_slider")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onSliderMove, this)); +	getChild<LLUICtrl>("playback_slider")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onSliderMove, this)); -	getChild<LLUICtrl>("preview_base_anim")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitBaseAnim, this)); +	getChild<LLUICtrl>("preview_base_anim")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitBaseAnim, this));  	getChild<LLUICtrl>("preview_base_anim")->setValue("Standing"); -	getChild<LLUICtrl>("priority")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitPriority, this)); -	getChild<LLUICtrl>("loop_check")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitLoop, this)); -	getChild<LLUICtrl>("loop_in_point")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitLoopIn, this)); -	getChild<LLUICtrl>("loop_in_point")->setValidateBeforeCommit( boost::bind(&LLFloaterAnimPreview::validateLoopIn, this, _1)); -	getChild<LLUICtrl>("loop_out_point")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitLoopOut, this)); -	getChild<LLUICtrl>("loop_out_point")->setValidateBeforeCommit( boost::bind(&LLFloaterAnimPreview::validateLoopOut, this, _1)); +	getChild<LLUICtrl>("priority")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitPriority, this)); +	getChild<LLUICtrl>("loop_check")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitLoop, this)); +	getChild<LLUICtrl>("loop_in_point")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitLoopIn, this)); +	getChild<LLUICtrl>("loop_in_point")->setValidateBeforeCommit( boost::bind(&LLFloaterBvhPreview::validateLoopIn, this, _1)); +	getChild<LLUICtrl>("loop_out_point")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitLoopOut, this)); +	getChild<LLUICtrl>("loop_out_point")->setValidateBeforeCommit( boost::bind(&LLFloaterBvhPreview::validateLoopOut, this, _1)); -	getChild<LLUICtrl>("hand_pose_combo")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitHandPose, this)); +	getChild<LLUICtrl>("hand_pose_combo")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitHandPose, this)); -	getChild<LLUICtrl>("emote_combo")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitEmote, this)); +	getChild<LLUICtrl>("emote_combo")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitEmote, this));  	getChild<LLUICtrl>("emote_combo")->setValue("[None]"); -	getChild<LLUICtrl>("ease_in_time")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitEaseIn, this)); -	getChild<LLUICtrl>("ease_in_time")->setValidateBeforeCommit( boost::bind(&LLFloaterAnimPreview::validateEaseIn, this, _1)); -	getChild<LLUICtrl>("ease_out_time")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitEaseOut, this)); -	getChild<LLUICtrl>("ease_out_time")->setValidateBeforeCommit( boost::bind(&LLFloaterAnimPreview::validateEaseOut, this, _1)); +	getChild<LLUICtrl>("ease_in_time")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitEaseIn, this)); +	getChild<LLUICtrl>("ease_in_time")->setValidateBeforeCommit( boost::bind(&LLFloaterBvhPreview::validateEaseIn, this, _1)); +	getChild<LLUICtrl>("ease_out_time")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitEaseOut, this)); +	getChild<LLUICtrl>("ease_out_time")->setValidateBeforeCommit( boost::bind(&LLFloaterBvhPreview::validateEaseOut, this, _1));  }  //-----------------------------------------------------------------------------  // postBuild()  //----------------------------------------------------------------------------- -BOOL LLFloaterAnimPreview::postBuild() +BOOL LLFloaterBvhPreview::postBuild()  {  	LLKeyframeMotion* motionp = NULL;  	LLBVHLoader* loaderp = NULL; @@ -191,7 +191,7 @@ BOOL LLFloaterAnimPreview::postBuild()  		return FALSE;  	} -	getChild<LLUICtrl>("name_form")->setCommitCallback(boost::bind(&LLFloaterAnimPreview::onCommitName, this)); +	getChild<LLUICtrl>("name_form")->setCommitCallback(boost::bind(&LLFloaterBvhPreview::onCommitName, this));  	childSetAction("ok_btn", onBtnOK, this);  	setDefaultBtn(); @@ -203,15 +203,15 @@ BOOL LLFloaterAnimPreview::postBuild()  	mPreviewImageRect.set(0.f, 1.f, 1.f, 0.f);  	mPlayButton = getChild<LLButton>( "play_btn"); -	mPlayButton->setClickedCallback(boost::bind(&LLFloaterAnimPreview::onBtnPlay, this)); +	mPlayButton->setClickedCallback(boost::bind(&LLFloaterBvhPreview::onBtnPlay, this));  	mPlayButton->setVisible(true);  	mPauseButton = getChild<LLButton>( "pause_btn"); -	mPauseButton->setClickedCallback(boost::bind(&LLFloaterAnimPreview::onBtnPause, this)); +	mPauseButton->setClickedCallback(boost::bind(&LLFloaterBvhPreview::onBtnPause, this));  	mPauseButton->setVisible(false);  	mStopButton = getChild<LLButton>( "stop_btn"); -	mStopButton->setClickedCallback(boost::bind(&LLFloaterAnimPreview::onBtnStop, this)); +	mStopButton->setClickedCallback(boost::bind(&LLFloaterBvhPreview::onBtnStop, this));  	getChildView("bad_animation_text")->setVisible(FALSE); @@ -363,9 +363,9 @@ BOOL LLFloaterAnimPreview::postBuild()  }  //----------------------------------------------------------------------------- -// LLFloaterAnimPreview() +// LLFloaterBvhPreview()  //----------------------------------------------------------------------------- -LLFloaterAnimPreview::~LLFloaterAnimPreview() +LLFloaterBvhPreview::~LLFloaterBvhPreview()  {  	mAnimPreview = NULL; @@ -375,7 +375,7 @@ LLFloaterAnimPreview::~LLFloaterAnimPreview()  //-----------------------------------------------------------------------------  // draw()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::draw() +void LLFloaterBvhPreview::draw()  {  	LLFloater::draw();  	LLRect r = getRect(); @@ -414,7 +414,7 @@ void LLFloaterAnimPreview::draw()  //-----------------------------------------------------------------------------  // resetMotion()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::resetMotion() +void LLFloaterBvhPreview::resetMotion()  {  	LLVOAvatar* avatarp = mAnimPreview->getDummyAvatar();  	BOOL paused = avatarp->areAnimationsPaused(); @@ -450,7 +450,7 @@ void LLFloaterAnimPreview::resetMotion()  //-----------------------------------------------------------------------------  // handleMouseDown()  //----------------------------------------------------------------------------- -BOOL LLFloaterAnimPreview::handleMouseDown(S32 x, S32 y, MASK mask) +BOOL LLFloaterBvhPreview::handleMouseDown(S32 x, S32 y, MASK mask)  {  	if (mPreviewRect.pointInRect(x, y))  	{ @@ -468,7 +468,7 @@ BOOL LLFloaterAnimPreview::handleMouseDown(S32 x, S32 y, MASK mask)  //-----------------------------------------------------------------------------  // handleMouseUp()  //----------------------------------------------------------------------------- -BOOL LLFloaterAnimPreview::handleMouseUp(S32 x, S32 y, MASK mask) +BOOL LLFloaterBvhPreview::handleMouseUp(S32 x, S32 y, MASK mask)  {  	gFocusMgr.setMouseCapture(FALSE);  	gViewerWindow->showCursor(); @@ -478,7 +478,7 @@ BOOL LLFloaterAnimPreview::handleMouseUp(S32 x, S32 y, MASK mask)  //-----------------------------------------------------------------------------  // handleHover()  //----------------------------------------------------------------------------- -BOOL LLFloaterAnimPreview::handleHover(S32 x, S32 y, MASK mask) +BOOL LLFloaterBvhPreview::handleHover(S32 x, S32 y, MASK mask)  {  	MASK local_mask = mask & ~MASK_ALT; @@ -533,7 +533,7 @@ BOOL LLFloaterAnimPreview::handleHover(S32 x, S32 y, MASK mask)  //-----------------------------------------------------------------------------  // handleScrollWheel()  //----------------------------------------------------------------------------- -BOOL LLFloaterAnimPreview::handleScrollWheel(S32 x, S32 y, S32 clicks) +BOOL LLFloaterBvhPreview::handleScrollWheel(S32 x, S32 y, S32 clicks)  {  	mAnimPreview->zoom((F32)clicks * -0.2f);  	mAnimPreview->requestUpdate(); @@ -544,7 +544,7 @@ BOOL LLFloaterAnimPreview::handleScrollWheel(S32 x, S32 y, S32 clicks)  //-----------------------------------------------------------------------------  // onMouseCaptureLost()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onMouseCaptureLost() +void LLFloaterBvhPreview::onMouseCaptureLost()  {  	gViewerWindow->showCursor();  } @@ -552,7 +552,7 @@ void LLFloaterAnimPreview::onMouseCaptureLost()  //-----------------------------------------------------------------------------  // onBtnPlay()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onBtnPlay() +void LLFloaterBvhPreview::onBtnPlay()  {  	if (!getEnabled())  		return; @@ -576,7 +576,7 @@ void LLFloaterAnimPreview::onBtnPlay()  //-----------------------------------------------------------------------------  // onBtnPause()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onBtnPause() +void LLFloaterBvhPreview::onBtnPause()  {  	if (!getEnabled())  		return; @@ -598,7 +598,7 @@ void LLFloaterAnimPreview::onBtnPause()  //-----------------------------------------------------------------------------  // onBtnStop()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onBtnStop() +void LLFloaterBvhPreview::onBtnStop()  {  	if (!getEnabled())  		return; @@ -614,7 +614,7 @@ void LLFloaterAnimPreview::onBtnStop()  //-----------------------------------------------------------------------------  // onSliderMove()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onSliderMove() +void LLFloaterBvhPreview::onSliderMove()  {  	if (!getEnabled())  		return; @@ -639,7 +639,7 @@ void LLFloaterAnimPreview::onSliderMove()  //-----------------------------------------------------------------------------  // onCommitBaseAnim()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitBaseAnim() +void LLFloaterBvhPreview::onCommitBaseAnim()  {  	if (!getEnabled())  		return; @@ -668,7 +668,7 @@ void LLFloaterAnimPreview::onCommitBaseAnim()  //-----------------------------------------------------------------------------  // onCommitLoop()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitLoop() +void LLFloaterBvhPreview::onCommitLoop()  {  	if (!getEnabled())  		return; @@ -687,7 +687,7 @@ void LLFloaterAnimPreview::onCommitLoop()  //-----------------------------------------------------------------------------  // onCommitLoopIn()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitLoopIn() +void LLFloaterBvhPreview::onCommitLoopIn()  {  	if (!getEnabled())  		return; @@ -707,7 +707,7 @@ void LLFloaterAnimPreview::onCommitLoopIn()  //-----------------------------------------------------------------------------  // onCommitLoopOut()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitLoopOut() +void LLFloaterBvhPreview::onCommitLoopOut()  {  	if (!getEnabled())  		return; @@ -727,7 +727,7 @@ void LLFloaterAnimPreview::onCommitLoopOut()  //-----------------------------------------------------------------------------  // onCommitName()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitName() +void LLFloaterBvhPreview::onCommitName()  {  	if (!getEnabled())  		return; @@ -746,7 +746,7 @@ void LLFloaterAnimPreview::onCommitName()  //-----------------------------------------------------------------------------  // onCommitHandPose()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitHandPose() +void LLFloaterBvhPreview::onCommitHandPose()  {  	if (!getEnabled())  		return; @@ -757,7 +757,7 @@ void LLFloaterAnimPreview::onCommitHandPose()  //-----------------------------------------------------------------------------  // onCommitEmote()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitEmote() +void LLFloaterBvhPreview::onCommitEmote()  {  	if (!getEnabled())  		return; @@ -768,7 +768,7 @@ void LLFloaterAnimPreview::onCommitEmote()  //-----------------------------------------------------------------------------  // onCommitPriority()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitPriority() +void LLFloaterBvhPreview::onCommitPriority()  {  	if (!getEnabled())  		return; @@ -782,7 +782,7 @@ void LLFloaterAnimPreview::onCommitPriority()  //-----------------------------------------------------------------------------  // onCommitEaseIn()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitEaseIn() +void LLFloaterBvhPreview::onCommitEaseIn()  {  	if (!getEnabled())  		return; @@ -797,7 +797,7 @@ void LLFloaterAnimPreview::onCommitEaseIn()  //-----------------------------------------------------------------------------  // onCommitEaseOut()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onCommitEaseOut() +void LLFloaterBvhPreview::onCommitEaseOut()  {  	if (!getEnabled())  		return; @@ -812,7 +812,7 @@ void LLFloaterAnimPreview::onCommitEaseOut()  //-----------------------------------------------------------------------------  // validateEaseIn()  //----------------------------------------------------------------------------- -bool LLFloaterAnimPreview::validateEaseIn(const LLSD& data) +bool LLFloaterBvhPreview::validateEaseIn(const LLSD& data)  {  	if (!getEnabled())  		return false; @@ -832,7 +832,7 @@ bool LLFloaterAnimPreview::validateEaseIn(const LLSD& data)  //-----------------------------------------------------------------------------  // validateEaseOut()  //----------------------------------------------------------------------------- -bool LLFloaterAnimPreview::validateEaseOut(const LLSD& data) +bool LLFloaterBvhPreview::validateEaseOut(const LLSD& data)  {  	if (!getEnabled())  		return false; @@ -852,7 +852,7 @@ bool LLFloaterAnimPreview::validateEaseOut(const LLSD& data)  //-----------------------------------------------------------------------------  // validateLoopIn()  //----------------------------------------------------------------------------- -bool LLFloaterAnimPreview::validateLoopIn(const LLSD& data) +bool LLFloaterBvhPreview::validateLoopIn(const LLSD& data)  {  	if (!getEnabled())  		return false; @@ -880,7 +880,7 @@ bool LLFloaterAnimPreview::validateLoopIn(const LLSD& data)  //-----------------------------------------------------------------------------  // validateLoopOut()  //----------------------------------------------------------------------------- -bool LLFloaterAnimPreview::validateLoopOut(const LLSD& data) +bool LLFloaterBvhPreview::validateLoopOut(const LLSD& data)  {  	if (!getEnabled())  		return false; @@ -909,7 +909,7 @@ bool LLFloaterAnimPreview::validateLoopOut(const LLSD& data)  //-----------------------------------------------------------------------------  // refresh()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::refresh() +void LLFloaterBvhPreview::refresh()  {  	// Are we showing the play button (default) or the pause button?  	bool show_play = true; @@ -958,9 +958,9 @@ void LLFloaterAnimPreview::refresh()  //-----------------------------------------------------------------------------  // onBtnOK()  //----------------------------------------------------------------------------- -void LLFloaterAnimPreview::onBtnOK(void* userdata) +void LLFloaterBvhPreview::onBtnOK(void* userdata)  { -	LLFloaterAnimPreview* floaterp = (LLFloaterAnimPreview*)userdata; +	LLFloaterBvhPreview* floaterp = (LLFloaterBvhPreview*)userdata;  	if (!floaterp->getEnabled()) return;  	if (floaterp->mAnimPreview) diff --git a/indra/newview/llfloateranimpreview.h b/indra/newview/llfloaterbvhpreview.h index f1ffb6547f..bae98c95d9 100644 --- a/indra/newview/llfloateranimpreview.h +++ b/indra/newview/llfloaterbvhpreview.h @@ -1,6 +1,6 @@  /**  - * @file llfloateranimpreview.h - * @brief LLFloaterAnimPreview class definition + * @file llfloaterbvhpreview.h + * @brief LLFloaterBvhPreview class definition   *   * $LicenseInfo:firstyear=2004&license=viewerlgpl$   * Second Life Viewer Source Code @@ -24,8 +24,8 @@   * $/LicenseInfo$   */ -#ifndef LL_LLFLOATERANIMPREVIEW_H -#define LL_LLFLOATERANIMPREVIEW_H +#ifndef LL_LLFLOATERBVHPREVIEW_H +#define LL_LLFLOATERBVHPREVIEW_H  #include "llassettype.h"  #include "llfloaternamedesc.h" @@ -67,11 +67,11 @@ protected:  	LLPointer<LLVOAvatar>			mDummyAvatar;  }; -class LLFloaterAnimPreview : public LLFloaterNameDesc +class LLFloaterBvhPreview : public LLFloaterNameDesc  {  public: -	LLFloaterAnimPreview(const std::string& filename); -	virtual ~LLFloaterAnimPreview(); +	LLFloaterBvhPreview(const std::string& filename); +	virtual ~LLFloaterBvhPreview();  	BOOL postBuild(); @@ -128,4 +128,4 @@ protected:  	std::map<std::string, LLUUID>	mIDList;  }; -#endif  // LL_LLFLOATERANIMPREVIEW_H +#endif  // LL_LLFLOATERBVHPREVIEW_H diff --git a/indra/newview/llfloaternamedesc.cpp b/indra/newview/llfloaternamedesc.cpp index 66f0fc3cd7..27b1c3b9cd 100644 --- a/indra/newview/llfloaternamedesc.cpp +++ b/indra/newview/llfloaternamedesc.cpp @@ -207,6 +207,25 @@ BOOL LLFloaterSoundPreview::postBuild()  //----------------------------------------------------------------------------- +// LLFloaterAnimPreview() +//----------------------------------------------------------------------------- + +LLFloaterAnimPreview::LLFloaterAnimPreview(const LLSD& filename ) +	: LLFloaterNameDesc(filename) +{ +} + +BOOL LLFloaterAnimPreview::postBuild() +{ +	if (!LLFloaterNameDesc::postBuild()) +	{ +		return FALSE; +	} +	getChild<LLUICtrl>("ok_btn")->setCommitCallback(boost::bind(&LLFloaterNameDesc::onBtnOK, this)); +	return TRUE; +} + +//-----------------------------------------------------------------------------  // LLFloaterScriptPreview()  //----------------------------------------------------------------------------- diff --git a/indra/newview/llfloaternamedesc.h b/indra/newview/llfloaternamedesc.h index 69bbccaf80..41643681ac 100644 --- a/indra/newview/llfloaternamedesc.h +++ b/indra/newview/llfloaternamedesc.h @@ -64,6 +64,13 @@ public:  	virtual BOOL postBuild();  }; +class LLFloaterAnimPreview : public LLFloaterNameDesc +{ +public: +	LLFloaterAnimPreview(const LLSD& filename ); +	virtual BOOL postBuild(); +}; +  class LLFloaterScriptPreview : public LLFloaterNameDesc  {  public: diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index bb870f7651..7fdaac68c8 100644 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -35,7 +35,6 @@  #include "llcallfloater.h"  #include "llfasttimerview.h"  #include "llfloaterabout.h" -#include "llfloateranimpreview.h"  #include "llfloaterauction.h"  #include "llfloateravatar.h"  #include "llfloateravatarpicker.h" @@ -49,6 +48,7 @@  #include "llfloaterbuyland.h"  #include "llfloaterbulkpermission.h"  #include "llfloaterbump.h" +#include "llfloaterbvhpreview.h"  #include "llfloatercamera.h"  #include "llfloaterdeleteenvpreset.h"  #include "llfloaterdisplayname.h" @@ -294,7 +294,8 @@ void LLViewerFloaterReg::registerFloaters()  	LLFloaterUIPreviewUtil::registerFloater(); -	LLFloaterReg::add("upload_anim", "floater_animation_preview.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterAnimPreview>, "upload"); +	LLFloaterReg::add("upload_anim_bvh", "floater_animation_bvh_preview.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterBvhPreview>, "upload"); +	LLFloaterReg::add("upload_anim_anim", "floater_animation_anim_preview.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterAnimPreview>, "upload");  	LLFloaterReg::add("upload_image", "floater_image_preview.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterImagePreview>, "upload");  	LLFloaterReg::add("upload_model", "floater_model_preview.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterModelPreview>, "upload");  	LLFloaterReg::add("upload_model_wizard", "floater_model_wizard.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterModelWizard>); diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index 7e830e14bf..95e3bc9b89 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -183,7 +183,7 @@ void LLFilePickerThread::clearDead()  #if LL_WINDOWS  static std::string SOUND_EXTENSIONS = "wav";  static std::string IMAGE_EXTENSIONS = "tga bmp jpg jpeg png"; -static std::string ANIM_EXTENSIONS =  "bvh"; +static std::string ANIM_EXTENSIONS =  "bvh anim";  #ifdef _CORY_TESTING  static std::string GEOMETRY_EXTENSIONS = "slg";  #endif @@ -385,7 +385,14 @@ class LLFileUploadAnim : public view_listener_t  		const std::string filename = upload_pick((void*)LLFilePicker::FFLOAD_ANIM);  		if (!filename.empty())  		{ -			LLFloaterReg::showInstance("upload_anim", LLSD(filename)); +			if (filename.rfind(".anim") != std::string::npos) +			{ +				LLFloaterReg::showInstance("upload_anim_anim", LLSD(filename)); +			} +			else +			{ +				LLFloaterReg::showInstance("upload_anim_bvh", LLSD(filename)); +			}  		}  		return true;  	} @@ -785,6 +792,11 @@ LLUUID upload_new_resource(  		upload_error(error_message, "DoNotSupportBulkAnimationUpload", filename, args);  		return LLUUID();  	} +	else if (exten == "anim") +	{ +		asset_type = LLAssetType::AT_ANIMATION; +		filename = src_filename; +	}  	else  	{  		// Unknown extension diff --git a/indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml b/indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml new file mode 100644 index 0000000000..b5538a511c --- /dev/null +++ b/indra/newview/skins/default/xui/en/floater_animation_anim_preview.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<floater + legacy_header_height="18" + height="190" + layout="topleft" + name="Anim Preview" + help_topic="animation_anim_preview" + title="ANIMATION.ANIM" + width="300"> +    <text +     type="string" +     length="1" +     follows="left|top" +     height="15" +     layout="topleft" +     left="10" +     mouse_opaque="false" +     name="name_label" +     top="20" +     width="275"> +        Name: +    </text> +    <line_editor +     border_style="line" +     border_thickness="1" +     follows="left|top|right" +     height="19" +     layout="topleft" +     left_delta="0" +     max_length_bytes="63" +     name="name_form" +     top_pad="0" +     width="280" /> +    <text +     type="string" +     length="1" +     follows="left|top" +     height="15" +     layout="topleft" +     left_delta="0" +     mouse_opaque="false" +     name="description_label" +     top_pad="10" +     width="270"> +        Description: +    </text> +    <line_editor +     border_style="line" +     border_thickness="1" +     follows="left|top|right" +     height="19" +     layout="topleft" +     left_delta="0" +     max_length_bytes="127" +     name="description_form" +     top_pad="0" +     width="280" /> +    <button +     follows="left|bottom" +     height="22" +     label="Upload (L$[AMOUNT])" +     layout="topleft" +     left="45" +     name="ok_btn" +     top_pad="60" +     width="150" /> +    <button +     follows="right|bottom" +     height="22" +     label="Cancel" +     label_selected="Cancel" +     layout="topleft" +     name="cancel_btn" +     left_pad="5" +     width="90" /> +</floater> diff --git a/indra/newview/skins/default/xui/en/floater_animation_preview.xml b/indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml index cb6b2f6ebc..cb6b2f6ebc 100644 --- a/indra/newview/skins/default/xui/en/floater_animation_preview.xml +++ b/indra/newview/skins/default/xui/en/floater_animation_bvh_preview.xml diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index af75d49353..2b85dc74a1 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -1667,7 +1667,7 @@ Unable to create output file: [FILE]     icon="alertmodal.tga"     name="DoNotSupportBulkAnimationUpload"     type="alertmodal"> -[APP_NAME] does not currently support bulk upload of animation files. +[APP_NAME] does not currently support bulk upload of BVH format animation files.    <tag>fail</tag>    </notification>  | 
