diff options
| -rw-r--r-- | indra/newview/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | indra/newview/app_settings/commands.xml | 10 | ||||
| -rw-r--r-- | indra/newview/llfloaterpathfindingbasic.cpp | 64 | ||||
| -rw-r--r-- | indra/newview/llfloaterpathfindingbasic.h | 57 | ||||
| -rw-r--r-- | indra/newview/llviewerfloaterreg.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/skins/default/textures/textures.xml | 1 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_pathfinding_basic.xml | 58 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_pathfinding_console.xml | 2 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_viewer.xml | 14 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/strings.xml | 2 | 
10 files changed, 204 insertions, 8 deletions
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 45688a1724..9772832474 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -218,6 +218,7 @@ set(viewer_SOURCE_FILES      llfloaterobjectweights.cpp      llfloateropenobject.cpp      llfloateroutbox.cpp +    llfloaterpathfindingbasic.cpp      llfloaterpathfindingcharacters.cpp      llfloaterpathfindingconsole.cpp      llfloaterpathfindinglinksets.cpp @@ -781,6 +782,7 @@ set(viewer_HEADER_FILES      llfloaterobjectweights.h      llfloateropenobject.h      llfloateroutbox.h +    llfloaterpathfindingbasic.h      llfloaterpathfindingcharacters.h      llfloaterpathfindingconsole.h      llfloaterpathfindinglinksets.h diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml index e8454f6dad..d3253bc381 100644 --- a/indra/newview/app_settings/commands.xml +++ b/indra/newview/app_settings/commands.xml @@ -155,6 +155,16 @@             is_running_function="Floater.IsOpen"             is_running_parameters="people"             /> +  <command name="pathfinding_basic" +           available_in_toybox="false" +           icon="Command_PF_Basic_Icon" +           label_ref="Command_PF_Basic_Label" +           tooltip_ref="Command_PF_Basic_Tooltip" +           execute_function="Floater.ToggleOrBringToFront" +           execute_parameters="pathfinding_basic" +           is_running_function="Floater.IsOpen" +           is_running_parameters="pathfinding_basic" +           />    <command name="pathfinding_console"             available_in_toybox="false"             icon="Command_Pathfinding_Icon" diff --git a/indra/newview/llfloaterpathfindingbasic.cpp b/indra/newview/llfloaterpathfindingbasic.cpp new file mode 100644 index 0000000000..a875cae883 --- /dev/null +++ b/indra/newview/llfloaterpathfindingbasic.cpp @@ -0,0 +1,64 @@ +/** 
 +* @file llfloaterpathfindingbasic.cpp
 +* @author William Todd Stinson
 +* @brief "Pathfinding basic" floater, allowing for basic freezing and unfreezing of the pathfinding avator mode.
 +*
 +* $LicenseInfo:firstyear=2002&license=viewerlgpl$
 +* Second Life Viewer Source Code
 +* Copyright (C) 2010, Linden Research, Inc.
 +* 
 +* This library is free software; you can redistribute it and/or
 +* modify it under the terms of the GNU Lesser General Public
 +* License as published by the Free Software Foundation;
 +* version 2.1 of the License only.
 +* 
 +* This library is distributed in the hope that it will be useful,
 +* but WITHOUT ANY WARRANTY; without even the implied warranty of
 +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 +* Lesser General Public License for more details.
 +* 
 +* You should have received a copy of the GNU Lesser General Public
 +* License along with this library; if not, write to the Free Software
 +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 +* 
 +* Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA
 +* $/LicenseInfo$
 +*/
 +
 +#include "llviewerprecompiledheaders.h"
 +#include "llfloaterpathfindingbasic.h"
 +
 +#include "llsd.h"
 +#include "llagent.h"
 +
 +//---------------------------------------------------------------------------
 +// LLFloaterPathfindingBasic
 +//---------------------------------------------------------------------------
 +
 +BOOL LLFloaterPathfindingBasic::postBuild()
 +{
 +	childSetAction("enter_unfrozen_mode", boost::bind(&LLFloaterPathfindingBasic::onUnfreezeClicked, this));
 +	childSetAction("enter_frozen_mode", boost::bind(&LLFloaterPathfindingBasic::onFreezeClicked, this));
 +
 +	return LLFloater::postBuild();
 +}
 +
 +
 +LLFloaterPathfindingBasic::LLFloaterPathfindingBasic(const LLSD& pSeed)
 +	: LLFloater(pSeed)
 +{
 +}
 +
 +LLFloaterPathfindingBasic::~LLFloaterPathfindingBasic()
 +{
 +}
 +
 +void LLFloaterPathfindingBasic::onUnfreezeClicked()
 +{
 +	llwarns << "functionality has not yet been implemented to set unfrozen state" << llendl;
 +}
 +
 +void LLFloaterPathfindingBasic::onFreezeClicked()
 +{
 +	llwarns << "functionality has not yet been implemented to set frozen state" << llendl;
 +}
 diff --git a/indra/newview/llfloaterpathfindingbasic.h b/indra/newview/llfloaterpathfindingbasic.h new file mode 100644 index 0000000000..888d06c521 --- /dev/null +++ b/indra/newview/llfloaterpathfindingbasic.h @@ -0,0 +1,57 @@ +/**  + * @file llfloaterpathfindingbasic.h + * @author William Todd Stinson + * @brief "Pathfinding basic" floater, allowing for basic freezing and unfreezing of the pathfinding avator mode. + * + * $LicenseInfo:firstyear=2002&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLFLOATERPATHFINDINGBASIC_H +#define LL_LLFLOATERPATHFINDINGBASIC_H + +#include "llfloater.h" +#include "llhandle.h" + +class LLSD; + +class LLFloaterPathfindingBasic +:	public LLFloater +{ +	friend class LLFloaterReg; + +public: + +	virtual BOOL postBuild(); + +protected: + +private: +	// Does its own instance management, so clients not allowed +	// to allocate or destroy. +	LLFloaterPathfindingBasic(const LLSD& pSeed); +	virtual ~LLFloaterPathfindingBasic(); + +	void onUnfreezeClicked(); +	void onFreezeClicked(); +}; + +#endif // LL_LLFLOATERPATHFINDINGBASIC_H diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index 5b6b07a49a..d396219bf8 100644 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -84,6 +84,7 @@  #include "llfloaterobjectweights.h"  #include "llfloateropenobject.h"  #include "llfloateroutbox.h" +#include "llfloaterpathfindingbasic.h"  #include "llfloaterpathfindingcharacters.h"  #include "llfloaterpathfindinglinksets.h"  #include "llfloaterpathfindingconsole.h" @@ -246,6 +247,7 @@ void LLViewerFloaterReg::registerFloaters()  	LLFloaterReg::add("outgoing_call", "floater_outgoing_call.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLOutgoingCallDialog>);  	LLFloaterPayUtil::registerFloater(); +	LLFloaterReg::add("pathfinding_basic", "floater_pathfinding_basic.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingBasic>);  	LLFloaterReg::add("pathfinding_characters", "floater_pathfinding_characters.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingCharacters>);  	LLFloaterReg::add("pathfinding_linksets", "floater_pathfinding_linksets.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingLinksets>);  	LLFloaterReg::add("pathfinding_console", "floater_pathfinding_console.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPathfindingConsole>); diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index 5eea581987..ee8b7ba082 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -140,6 +140,7 @@ with the same filename but different name    <texture name="Command_Outbox_Icon"       file_name="toolbar_icons/outbox.png"       preload="true" />    <texture name="Command_Pathfinding_Icon"  file_name="toolbar_icons/land.png"         preload="true" />    <texture name="Command_People_Icon"       file_name="toolbar_icons/people.png"       preload="true" /> +  <texture name="Command_PF_Basic_Icon"     file_name="toolbar_icons/land.png"         preload="true" />    <texture name="Command_PF_Characters_Icon" file_name="toolbar_icons/land.png"        preload="true" />    <texture name="Command_PF_Linksets_Icon"  file_name="toolbar_icons/land.png"         preload="true" />    <texture name="Command_Picks_Icon"        file_name="toolbar_icons/picks.png"        preload="true" /> diff --git a/indra/newview/skins/default/xui/en/floater_pathfinding_basic.xml b/indra/newview/skins/default/xui/en/floater_pathfinding_basic.xml new file mode 100644 index 0000000000..e21b6c842f --- /dev/null +++ b/indra/newview/skins/default/xui/en/floater_pathfinding_basic.xml @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<floater +    open_positioning="cascading" +    can_tear_off="false" +    height="204" +    layout="topleft" +    name="floater_pathfinding_basic" +    help_topic="floater_pathfinding_basic" +    reuse_instance="false" +    save_rect="false" +    single_instance="true" +    title="Basic pathfinding setup" +    width="312"> +  <text +      height="13" +      word_wrap="true" +      use_ellipses="false" +      type="string" +      text_color="LabelTextColor" +      length="1" +      follows="left|top" +      layout="topleft" +      left="15" +      top="15" +      width="289"> +    Permit object / terrain changes: +  </text> +  <button +      follows="left|top" +      height="22" +      label="Unfreeze" +      layout="topleft" +      name="enter_unfrozen_mode" +      width="116"/> +  <text +      height="82" +      word_wrap="true" +      use_ellipses="false" +      type="string" +      text_color="LabelTextColor" +      length="1" +      follows="left|top" +      layout="topleft" +      line_spacing.multiple="1.5" +      left="15" +      top_pad="23" +      width="289"> +    In unfrozen mode, you can move and make changes to objects and terrain.  When you are finished, click the Freeze button.  It may require a few minutes to process your changes. +  </text> +  <button +      follows="left|top" +      height="22" +      label="Freeze" +      layout="topleft" +      name="enter_frozen_mode" +      top_pad="0" +      width="116"/> +</floater> diff --git a/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml b/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml index 5aa53d0f93..3fe3dfe963 100644 --- a/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml +++ b/indra/newview/skins/default/xui/en/floater_pathfinding_console.xml @@ -9,7 +9,7 @@      reuse_instance="true"      save_rect="true"      single_instance="true" -    title="Pathfinding" +    title="Pathfinding edit / test"      width="455">    <floater.string name="navmesh_fetch_initial"></floater.string>    <floater.string name="navmesh_fetch_inprogress">Downloading the navmesh ...</floater.string> diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 47d6f36e1b..c4a95ce25e 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -934,21 +934,21 @@        <menu           create_jump_keys="true"           label="Pathfinding" -         name="Pathfindubg" +         name="Pathfinding"           tear_off="false">          <menu_item_call -            label="Edit/Test..." -            name="pathfinding_console_menu_item"> +            label="Basic setup..." +            name="pathfinding_basic_menu_item">            <menu_item_call.on_click                function="Floater.ToggleOrBringToFront" -              parameter="pathfinding_console" /> +              parameter="pathfinding_basic" />          </menu_item_call>          <menu_item_call -            label="Characters..." -            name="pathfinding_characters_menu_item"> +            label="Edit / test..." +            name="pathfinding_console_menu_item">            <menu_item_call.on_click                function="Floater.ToggleOrBringToFront" -              parameter="pathfinding_characters" /> +              parameter="pathfinding_console" />          </menu_item_call>        </menu> diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index 793893f540..02a07c9f02 100644 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -3696,6 +3696,7 @@ Try enclosing path to the editor with double quotes.    <string name="Command_Outbox_Label">Merchant outbox</string>    <string name="Command_Pathfinding_Label">Pathfinding</string>    <string name="Command_People_Label">People</string> +  <string name="Command_PF_Basic_Label">Pathfinding Basic</string>    <string name="Command_PF_Characters_Label">Pathfinding Characters</string>    <string name="Command_PF_Linksets_Label">Pathfinding Linksets</string>    <string name="Command_Picks_Label">Picks</string> @@ -3725,6 +3726,7 @@ Try enclosing path to the editor with double quotes.    <string name="Command_Outbox_Tooltip">Transfer items to your marketplace for sale</string>    <string name="Command_Pathfinding_Tooltip">Information about pathfinding</string>    <string name="Command_People_Tooltip">Friends, groups, and nearby people</string> +  <string name="Command_PF_Basic_Tooltip">Manipulation of pathfinding frozen/unfrozen state</string>    <string name="Command_PF_Characters_Tooltip">Manipulation of pathfinding characters</string>    <string name="Command_PF_Linksets_Tooltip">Manipulation of pathfinding linksets</string>    <string name="Command_Picks_Tooltip">Places to show as favorites in your profile</string>  | 
