diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index e271ff5e42..8d3900ce48 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -19880,9 +19880,31 @@ Change of this parameter will affect the layout of buttons in notification toast
Type
Boolean
Value
- 0
+ 0
Backup
0
+ FSTeleportHistoryShowPosition
+
+ FSTeleportHistoryShowDate
+
diff --git a/indra/newview/llpanelteleporthistory.cpp b/indra/newview/llpanelteleporthistory.cpp
index 0c5d4605d8..f021f28f1e 100644
--- a/indra/newview/llpanelteleporthistory.cpp
+++ b/indra/newview/llpanelteleporthistory.cpp
@@ -57,7 +57,10 @@ static const std::string COLLAPSED_BY_USER = "collapsed_by_user";
class LLTeleportHistoryFlatItem : public LLPanel
{
public:
- LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const std::string &hl);
+ // Extended TP history
+ //LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const std::string &hl);
+ LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const LLDate& date, const LLVector3& local_pos, const std::string &hl);
+ //
virtual ~LLTeleportHistoryFlatItem();
virtual BOOL postBuild();
@@ -71,6 +74,11 @@ public:
void setHighlightedText(const std::string& text);
void updateTitle();
+ // Extended TP history
+ void setDate(const LLDate& date);
+ void setLocalPos(const LLVector3& local_pos);
+ //
+
/*virtual*/ void setValue(const LLSD& value);
void onMouseEnter(S32 x, S32 y, MASK mask);
@@ -93,6 +101,14 @@ private:
std::string mRegionName;
std::string mHighlight;
LLRootHandle mItemHandle;
+
+ // Extended TP history
+ LLVector3 mLocalPos;
+ LLDate mDate;
+
+ LLTextBox* mDateBox;
+ LLTextBox* mLocalPosBox;
+ //
};
////////////////////////////////////////////////////////////////////////////////
@@ -123,11 +139,18 @@ private:
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
-LLTeleportHistoryFlatItem::LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const std::string &hl)
+// Extended TP history
+//LLTeleportHistoryFlatItem::LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const std::string &hl)
+LLTeleportHistoryFlatItem::LLTeleportHistoryFlatItem(S32 index, LLTeleportHistoryPanel::ContextMenu *context_menu, const std::string ®ion_name, const LLDate& date, const LLVector3& local_pos, const std::string &hl)
+//
: LLPanel(),
mIndex(index),
mContextMenu(context_menu),
mRegionName(region_name),
+ // Extended TP history
+ mDate(date),
+ mLocalPos(local_pos),
+ //
mHighlight(hl)
{
buildFromFile( "panel_teleport_history_item.xml");
@@ -142,6 +165,11 @@ BOOL LLTeleportHistoryFlatItem::postBuild()
{
mTitle = getChild("region");
+ // Extended TP history
+ mDateBox = getChild("date");
+ mLocalPosBox = getChild("position");
+ //
+
mProfileBtn = getChild("profile_btn");
mProfileBtn->setClickedCallback(boost::bind(&LLTeleportHistoryFlatItem::onProfileBtnClick, this));
@@ -181,6 +209,18 @@ void LLTeleportHistoryFlatItem::setRegionName(const std::string& name)
mRegionName = name;
}
+// Extended TP history
+void LLTeleportHistoryFlatItem::setDate(const LLDate& date)
+{
+ mDate = date;
+}
+
+void LLTeleportHistoryFlatItem::setLocalPos(const LLVector3& local_pos)
+{
+ mLocalPos.set(local_pos);
+}
+//
+
void LLTeleportHistoryFlatItem::updateTitle()
{
static LLUIColor sFgColor = LLUIColorTable::instance().getColor("MenuItemEnabledColor", LLColor4U(255, 255, 255));
@@ -190,6 +230,25 @@ void LLTeleportHistoryFlatItem::updateTitle()
LLStyle::Params().color(sFgColor),
mRegionName,
mHighlight);
+
+ // Extended TP history
+ LLTextUtil::textboxSetHighlightedVal(
+ mLocalPosBox,
+ LLStyle::Params().color(sFgColor),
+ llformat("%.0f, %.0f, %.0f", mLocalPos.mV[VX], mLocalPos.mV[VY], mLocalPos.mV[VZ]),
+ mHighlight);
+
+ LLSD args;
+ args["datetime"] = mDate.secondsSinceEpoch();
+ std::string date = getString("DateFmt");
+ LLStringUtil::format(date, args);
+
+ LLTextUtil::textboxSetHighlightedVal(
+ mDateBox,
+ LLStyle::Params().color(sFgColor),
+ date,
+ mHighlight);
+ //
}
void LLTeleportHistoryFlatItem::onMouseEnter(S32 x, S32 y, MASK mask)
@@ -252,6 +311,12 @@ LLTeleportHistoryFlatItemStorage::getFlatItemForPersistentItem (
const S32 cur_item_index,
const std::string &hl)
{
+ // Extended TP history
+ LLVector3 local_pos((F32)fmod(persistent_item.mGlobalPos.mdV[VX], (F64)REGION_WIDTH_METERS),
+ (F32)fmod(persistent_item.mGlobalPos.mdV[VY], (F64)REGION_WIDTH_METERS),
+ (F32)persistent_item.mGlobalPos.mdV[VZ]);
+ //
+
LLTeleportHistoryFlatItem* item = NULL;
if ( cur_item_index < (S32) mItems.size() )
{
@@ -260,6 +325,10 @@ LLTeleportHistoryFlatItemStorage::getFlatItemForPersistentItem (
{
item->setIndex(cur_item_index);
item->setRegionName(persistent_item.mTitle);
+ // Extended TP history
+ item->setDate(persistent_item.mDate);
+ item->setLocalPos(local_pos);
+ //
item->setHighlightedText(hl);
item->setVisible(TRUE);
item->updateTitle();
@@ -276,6 +345,10 @@ LLTeleportHistoryFlatItemStorage::getFlatItemForPersistentItem (
item = new LLTeleportHistoryFlatItem(cur_item_index,
context_menu,
persistent_item.mTitle,
+ // Extended TP history
+ persistent_item.mDate,
+ local_pos,
+ //
hl);
mItems.push_back(item->getItemHandle());
}
diff --git a/indra/newview/skins/default/xui/de/panel_preferences_UI.xml b/indra/newview/skins/default/xui/de/panel_preferences_UI.xml
index c5e71b2af6..ae0b7406d0 100644
--- a/indra/newview/skins/default/xui/de/panel_preferences_UI.xml
+++ b/indra/newview/skins/default/xui/de/panel_preferences_UI.xml
@@ -37,6 +37,11 @@
+
+ Teleport-Liste erweitern um:
+
+
+
Skriptdialoge pro Objekt:
diff --git a/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml b/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml
index 4b57aa69b6..b91a50fade 100644
--- a/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml
+++ b/indra/newview/skins/default/xui/de/panel_teleport_history_item.xml
@@ -1,5 +1,18 @@
-
+
+ [day,datetime,local].[mthnum,datetime,local].[year,datetime,local], [hour,datetime,local]:[min,datetime,local]
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/indra/newview/skins/default/xui/en/panel_preferences_UI.xml b/indra/newview/skins/default/xui/en/panel_preferences_UI.xml
index 2682e7c055..b776716c4d 100644
--- a/indra/newview/skins/default/xui/en/panel_preferences_UI.xml
+++ b/indra/newview/skins/default/xui/en/panel_preferences_UI.xml
@@ -39,7 +39,7 @@
layout="topleft"
left="10"
name="UI Size:"
- top_pad="10"
+ top_pad="8"
width="200">
UI Scaling (may have side effects):
@@ -61,7 +61,7 @@
Hovertip Trigger Delays:
@@ -133,7 +133,7 @@
min_val="0"
name="ToolTipDelay_slider"
tool_tip="Delay after that tooltips for user interface elements such as buttons are shown. (Default: 0.7)"
- top_pad="8"
+ top_pad="1"
width="200" />
+
+ Extend teleport history by:
+
+
+
+
+
+
+
+ [mthnum,datetime,local]/[day,datetime,local]/[year,datetime,local], [hour12,datetime,local]:[min,datetime,local] [ampm,datetime,local]
+
+
+
+
+
+ width="150" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+