Merge with Tip
|
|
@ -77,7 +77,7 @@ inline U32 get_cpu_clock_count_64()
|
|||
{
|
||||
U64 x;
|
||||
__asm__ volatile (".byte 0x0f, 0x31": "=A"(x));
|
||||
return x >> 8;
|
||||
return x;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ const S32 TEAROFF_SEPARATOR_HEIGHT_PIXELS = 10;
|
|||
const S32 MENU_ITEM_PADDING = 4;
|
||||
|
||||
const std::string BOOLEAN_TRUE_PREFIX( "\xE2\x9C\x94" ); // U+2714 HEAVY CHECK MARK
|
||||
const std::string BRANCH_SUFFIX( ">" );
|
||||
const std::string BRANCH_SUFFIX( "\xE2\x96\xB6" ); // U+25B6 BLACK RIGHT-POINTING TRIANGLE
|
||||
const std::string ARROW_UP ("^^^^^^^");
|
||||
const std::string ARROW_DOWN("vvvvvvv");
|
||||
|
||||
|
|
|
|||
|
|
@ -868,14 +868,6 @@ bool LLUICtrl::findHelpTopic(std::string& help_topic_out)
|
|||
|
||||
if (panel)
|
||||
{
|
||||
// does the panel have an active tab with a help topic?
|
||||
LLPanel *tab = panel->childGetVisibleTabWithHelp();
|
||||
if (tab)
|
||||
{
|
||||
help_topic_out = tab->getHelpTopic();
|
||||
return true; // success (tab)
|
||||
}
|
||||
|
||||
// does the panel have a sub-panel with a help topic?
|
||||
LLPanel *subpanel = panel->childGetVisiblePanelWithHelp();
|
||||
if (subpanel)
|
||||
|
|
@ -884,6 +876,14 @@ bool LLUICtrl::findHelpTopic(std::string& help_topic_out)
|
|||
return true; // success (subpanel)
|
||||
}
|
||||
|
||||
// does the panel have an active tab with a help topic?
|
||||
LLPanel *tab = panel->childGetVisibleTabWithHelp();
|
||||
if (tab)
|
||||
{
|
||||
help_topic_out = tab->getHelpTopic();
|
||||
return true; // success (tab)
|
||||
}
|
||||
|
||||
// otherwise, does the panel have a help topic itself?
|
||||
if (!panel->getHelpTopic().empty())
|
||||
{
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
#include "llcallingcard.h"
|
||||
#include "llchannelmanager.h"
|
||||
#include "llconsole.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloatercamera.h"
|
||||
#include "llfloatercustomize.h"
|
||||
#include "llfloaterreg.h"
|
||||
|
|
@ -5697,10 +5697,10 @@ void LLAgent::processScriptControlChange(LLMessageSystem *msg, void **)
|
|||
}
|
||||
|
||||
// Any control taken? If so, might be first time.
|
||||
if (total_count > 0)
|
||||
{
|
||||
LLFirstUse::useOverrideKeys();
|
||||
}
|
||||
//if (total_count > 0)
|
||||
//{
|
||||
//LLFirstUse::useOverrideKeys();
|
||||
//}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1364,15 +1364,15 @@ void LLAgentWearables::makeNewOutfit(const std::string& new_folder_name,
|
|||
}
|
||||
}
|
||||
|
||||
class LLAutoRenameFolder: public LLInventoryCallback
|
||||
class LLShowCreatedOutfit: public LLInventoryCallback
|
||||
{
|
||||
public:
|
||||
LLAutoRenameFolder(LLUUID& folder_id):
|
||||
LLShowCreatedOutfit(LLUUID& folder_id):
|
||||
mFolderID(folder_id)
|
||||
{
|
||||
}
|
||||
|
||||
virtual ~LLAutoRenameFolder()
|
||||
virtual ~LLShowCreatedOutfit()
|
||||
{
|
||||
LLSD key;
|
||||
LLSideTray::getInstance()->showPanel("panel_outfits_inventory", key);
|
||||
|
|
@ -1382,13 +1382,15 @@ public:
|
|||
{
|
||||
outfit_panel->getRootFolder()->clearSelection();
|
||||
outfit_panel->getRootFolder()->setSelectionByID(mFolderID, TRUE);
|
||||
outfit_panel->getRootFolder()->setNeedsAutoRename(TRUE);
|
||||
}
|
||||
LLAccordionCtrlTab* tab_outfits = outfit_panel ? outfit_panel->findChild<LLAccordionCtrlTab>("tab_outfits") : 0;
|
||||
if (tab_outfits && !tab_outfits->getDisplayChildren())
|
||||
{
|
||||
tab_outfits->changeOpenClose(tab_outfits->getDisplayChildren());
|
||||
}
|
||||
|
||||
LLAppearanceManager::instance().updateIsDirty();
|
||||
LLAppearanceManager::instance().updatePanelOutfitName("");
|
||||
}
|
||||
|
||||
virtual void fire(const LLUUID&)
|
||||
|
|
@ -1413,10 +1415,10 @@ LLUUID LLAgentWearables::makeNewOutfitLinks(const std::string& new_folder_name)
|
|||
LLFolderType::FT_OUTFIT,
|
||||
new_folder_name);
|
||||
|
||||
LLPointer<LLInventoryCallback> cb = new LLAutoRenameFolder(folder_id);
|
||||
LLPointer<LLInventoryCallback> cb = new LLShowCreatedOutfit(folder_id);
|
||||
LLAppearanceManager::instance().shallowCopyCategory(LLAppearanceManager::instance().getCOF(),folder_id, cb);
|
||||
LLAppearanceManager::instance().createBaseOutfitLink(folder_id, NULL);
|
||||
|
||||
LLAppearanceManager::instance().createBaseOutfitLink(folder_id, cb);
|
||||
|
||||
return folder_id;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -392,6 +392,21 @@ const LLViewerInventoryItem* LLAppearanceManager::getBaseOutfitLink()
|
|||
return NULL;
|
||||
}
|
||||
|
||||
bool LLAppearanceManager::getBaseOutfitName(std::string& name)
|
||||
{
|
||||
const LLViewerInventoryItem* outfit_link = getBaseOutfitLink();
|
||||
if(outfit_link)
|
||||
{
|
||||
const LLViewerInventoryCategory *cat = outfit_link->getLinkedCategory();
|
||||
if (cat)
|
||||
{
|
||||
name = cat->getName();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Update appearance from outfit folder.
|
||||
void LLAppearanceManager::changeOutfit(bool proceed, const LLUUID& category, bool append)
|
||||
{
|
||||
|
|
@ -630,6 +645,7 @@ void LLAppearanceManager::createBaseOutfitLink(const LLUUID& category, LLPointer
|
|||
LLAssetType::AT_LINK_FOLDER, link_waiter);
|
||||
new_outfit_name = catp->getName();
|
||||
}
|
||||
|
||||
updatePanelOutfitName(new_outfit_name);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -63,6 +63,7 @@ public:
|
|||
|
||||
// Finds the folder link to the currently worn outfit
|
||||
const LLViewerInventoryItem *getBaseOutfitLink();
|
||||
bool getBaseOutfitName(std::string &name);
|
||||
|
||||
// Update the displayed outfit name in UI.
|
||||
void updatePanelOutfitName(const std::string& name);
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@
|
|||
#include "lluicolortable.h"
|
||||
#include "llurldispatcher.h"
|
||||
#include "llurlhistory.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llrender.h"
|
||||
#include "llteleporthistory.h"
|
||||
#include "lllocationhistory.h"
|
||||
|
|
@ -1915,25 +1915,25 @@ bool LLAppViewer::initConfiguration()
|
|||
// These are warnings that appear on the first experience of that condition.
|
||||
// They are already set in the settings_default.xml file, but still need to be added to LLFirstUse
|
||||
// for disable/reset ability
|
||||
LLFirstUse::addConfigVariable("FirstBalanceIncrease");
|
||||
LLFirstUse::addConfigVariable("FirstBalanceDecrease");
|
||||
LLFirstUse::addConfigVariable("FirstSit");
|
||||
LLFirstUse::addConfigVariable("FirstMap");
|
||||
LLFirstUse::addConfigVariable("FirstGoTo");
|
||||
LLFirstUse::addConfigVariable("FirstBuild");
|
||||
// LLFirstUse::addConfigVariable("FirstBalanceIncrease");
|
||||
// LLFirstUse::addConfigVariable("FirstBalanceDecrease");
|
||||
// LLFirstUse::addConfigVariable("FirstSit");
|
||||
// LLFirstUse::addConfigVariable("FirstMap");
|
||||
// LLFirstUse::addConfigVariable("FirstGoTo");
|
||||
// LLFirstUse::addConfigVariable("FirstBuild");
|
||||
// LLFirstUse::addConfigVariable("FirstLeftClickNoHit");
|
||||
LLFirstUse::addConfigVariable("FirstTeleport");
|
||||
LLFirstUse::addConfigVariable("FirstOverrideKeys");
|
||||
LLFirstUse::addConfigVariable("FirstAttach");
|
||||
LLFirstUse::addConfigVariable("FirstAppearance");
|
||||
LLFirstUse::addConfigVariable("FirstInventory");
|
||||
LLFirstUse::addConfigVariable("FirstSandbox");
|
||||
LLFirstUse::addConfigVariable("FirstFlexible");
|
||||
LLFirstUse::addConfigVariable("FirstDebugMenus");
|
||||
LLFirstUse::addConfigVariable("FirstStreamingMedia");
|
||||
LLFirstUse::addConfigVariable("FirstSculptedPrim");
|
||||
LLFirstUse::addConfigVariable("FirstVoice");
|
||||
LLFirstUse::addConfigVariable("FirstMedia");
|
||||
// LLFirstUse::addConfigVariable("FirstTeleport");
|
||||
// LLFirstUse::addConfigVariable("FirstOverrideKeys");
|
||||
// LLFirstUse::addConfigVariable("FirstAttach");
|
||||
// LLFirstUse::addConfigVariable("FirstAppearance");
|
||||
// LLFirstUse::addConfigVariable("FirstInventory");
|
||||
// LLFirstUse::addConfigVariable("FirstSandbox");
|
||||
// LLFirstUse::addConfigVariable("FirstFlexible");
|
||||
// LLFirstUse::addConfigVariable("FirstDebugMenus");
|
||||
// LLFirstUse::addConfigVariable("FirstStreamingMedia");
|
||||
// LLFirstUse::addConfigVariable("FirstSculptedPrim");
|
||||
// LLFirstUse::addConfigVariable("FirstVoice");
|
||||
// LLFirstUse::addConfigVariable("FirstMedia");
|
||||
|
||||
// - read command line settings.
|
||||
LLControlGroupCLP clp;
|
||||
|
|
|
|||
|
|
@ -172,24 +172,6 @@ void LLAvatarActions::offerTeleport(const std::vector<LLUUID>& ids)
|
|||
return;
|
||||
|
||||
handle_lure(ids);
|
||||
|
||||
// Record the offer.
|
||||
for (std::vector<LLUUID>::const_iterator it = ids.begin(); it != ids.end(); it++)
|
||||
{
|
||||
LLUUID target_id = *it;
|
||||
std::string target_name;
|
||||
|
||||
gCacheName->getFullName(target_id, target_name);
|
||||
|
||||
LLSD args;
|
||||
args["TO_NAME"] = target_name;
|
||||
|
||||
LLSD payload;
|
||||
payload["from_id"] = target_id;
|
||||
payload["SESSION_NAME"] = target_name;
|
||||
payload["SUPPRESS_TOAST"] = true;
|
||||
LLNotificationsUtil::add("TeleportOfferSent", args, payload);
|
||||
}
|
||||
}
|
||||
|
||||
// static
|
||||
|
|
|
|||
|
|
@ -320,6 +320,11 @@ boost::signals2::connection LLAvatarList::setRefreshCompleteCallback(const commi
|
|||
return mRefreshCompleteSignal.connect(cb);
|
||||
}
|
||||
|
||||
boost::signals2::connection LLAvatarList::setItemDoubleClickCallback(const mouse_signal_t::slot_type& cb)
|
||||
{
|
||||
return mItemDoubleClickSignal.connect(cb);
|
||||
}
|
||||
|
||||
void LLAvatarList::addNewItem(const LLUUID& id, const std::string& name, BOOL is_online, EAddPosition pos)
|
||||
{
|
||||
LLAvatarListItem* item = new LLAvatarListItem();
|
||||
|
|
@ -333,6 +338,8 @@ void LLAvatarList::addNewItem(const LLUUID& id, const std::string& name, BOOL is
|
|||
item->setShowProfileBtn(mShowProfileBtn);
|
||||
item->showSpeakingIndicator(mShowSpeakingIndicator);
|
||||
|
||||
item->setDoubleClickCallback(boost::bind(&LLAvatarList::onItemDoucleClicked, this, _1, _2, _3, _4));
|
||||
|
||||
addItem(item, id, pos);
|
||||
}
|
||||
|
||||
|
|
@ -400,6 +407,11 @@ void LLAvatarList::updateLastInteractionTimes()
|
|||
}
|
||||
}
|
||||
|
||||
void LLAvatarList::onItemDoucleClicked(LLUICtrl* ctrl, S32 x, S32 y, MASK mask)
|
||||
{
|
||||
mItemDoubleClickSignal(ctrl, x, y, mask);
|
||||
}
|
||||
|
||||
bool LLAvatarItemComparator::compare(const LLPanel* item1, const LLPanel* item2) const
|
||||
{
|
||||
const LLAvatarListItem* avatar_item1 = dynamic_cast<const LLAvatarListItem*>(item1);
|
||||
|
|
|
|||
|
|
@ -92,6 +92,8 @@ public:
|
|||
|
||||
boost::signals2::connection setRefreshCompleteCallback(const commit_signal_t::slot_type& cb);
|
||||
|
||||
boost::signals2::connection setItemDoubleClickCallback(const mouse_signal_t::slot_type& cb);
|
||||
|
||||
protected:
|
||||
void refresh();
|
||||
|
||||
|
|
@ -101,6 +103,7 @@ protected:
|
|||
std::vector<LLUUID>& vadded,
|
||||
std::vector<LLUUID>& vremoved);
|
||||
void updateLastInteractionTimes();
|
||||
void onItemDoucleClicked(LLUICtrl* ctrl, S32 x, S32 y, MASK mask);
|
||||
|
||||
private:
|
||||
|
||||
|
|
@ -120,6 +123,7 @@ private:
|
|||
LLAvatarListItem::ContextMenu* mContextMenu;
|
||||
|
||||
commit_signal_t mRefreshCompleteSignal;
|
||||
mouse_signal_t mItemDoubleClickSignal;
|
||||
};
|
||||
|
||||
/** Abstract comparator for avatar items */
|
||||
|
|
|
|||
|
|
@ -258,6 +258,21 @@ void LLAvatarListItem::onProfileBtnClick()
|
|||
LLAvatarActions::showProfile(mAvatarId);
|
||||
}
|
||||
|
||||
BOOL LLAvatarListItem::handleDoubleClick(S32 x, S32 y, MASK mask)
|
||||
{
|
||||
if(mInfoBtn->getRect().pointInRect(x, y))
|
||||
{
|
||||
onInfoBtnClick();
|
||||
return TRUE;
|
||||
}
|
||||
if(mProfileBtn->getRect().pointInRect(x, y))
|
||||
{
|
||||
onProfileBtnClick();
|
||||
return TRUE;
|
||||
}
|
||||
return LLPanel::handleDoubleClick(x, y, mask);
|
||||
}
|
||||
|
||||
void LLAvatarListItem::setValue( const LLSD& value )
|
||||
{
|
||||
if (!value.isMap()) return;;
|
||||
|
|
|
|||
|
|
@ -103,6 +103,8 @@ public:
|
|||
void onInfoBtnClick();
|
||||
void onProfileBtnClick();
|
||||
|
||||
/*virtual*/ BOOL handleDoubleClick(S32 x, S32 y, MASK mask);
|
||||
|
||||
protected:
|
||||
/**
|
||||
* Contains indicator to show voice activity.
|
||||
|
|
|
|||
|
|
@ -724,13 +724,28 @@ void LLCallFloater::removeVoiceRemoveTimer(const LLUUID& voice_speaker_id)
|
|||
|
||||
bool LLCallFloater::validateSpeaker(const LLUUID& speaker_id)
|
||||
{
|
||||
if (mVoiceType != VC_LOCAL_CHAT)
|
||||
return true;
|
||||
bool is_valid = true;
|
||||
switch (mVoiceType)
|
||||
{
|
||||
case VC_LOCAL_CHAT:
|
||||
{
|
||||
// A nearby chat speaker is considered valid it it's known to LLVoiceClient (i.e. has enabled voice).
|
||||
std::vector<LLUUID> speakers;
|
||||
get_voice_participants_uuids(speakers);
|
||||
is_valid = std::find(speakers.begin(), speakers.end(), speaker_id) != speakers.end();
|
||||
}
|
||||
break;
|
||||
case VC_GROUP_CHAT:
|
||||
// if participant had left this call before do not allow add her again. See EXT-4216.
|
||||
// but if she Join she will be added into the list from the LLCallFloater::onChange()
|
||||
is_valid = STATE_LEFT != getState(speaker_id);
|
||||
break;
|
||||
default:
|
||||
// do nothing. required for Linux build
|
||||
break;
|
||||
}
|
||||
|
||||
// A nearby chat speaker is considered valid it it's known to LLVoiceClient (i.e. has enabled voice).
|
||||
std::vector<LLUUID> speakers;
|
||||
get_voice_participants_uuids(speakers);
|
||||
return std::find(speakers.begin(), speakers.end(), speaker_id) != speakers.end();
|
||||
return is_valid;
|
||||
}
|
||||
|
||||
void LLCallFloater::connectToChannel(LLVoiceChannel* channel)
|
||||
|
|
|
|||
|
|
@ -540,6 +540,11 @@ void LLIMChiclet::toggleSpeakerControl()
|
|||
|
||||
void LLIMChiclet::setCounter(S32 counter)
|
||||
{
|
||||
if (mCounterCtrl->getCounter() == counter)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
mCounterCtrl->setCounter(counter);
|
||||
setShowCounter(counter);
|
||||
setShowNewMessagesIcon(counter);
|
||||
|
|
|
|||
|
|
@ -508,14 +508,14 @@ void LLFavoritesBarCtrl::handleExistingFavoriteDragAndDrop(S32 x, S32 y)
|
|||
|
||||
if (dest)
|
||||
{
|
||||
updateItemsOrder(mItems, mDragItemId, dest->getLandmarkId());
|
||||
LLInventoryModel::updateItemsOrder(mItems, mDragItemId, dest->getLandmarkId());
|
||||
}
|
||||
else
|
||||
{
|
||||
mItems.push_back(gInventory.getItem(mDragItemId));
|
||||
}
|
||||
|
||||
saveItemsOrder(mItems);
|
||||
gInventory.saveItemsOrder(mItems);
|
||||
|
||||
LLToggleableMenu* menu = (LLToggleableMenu*) mPopupMenuHandle.get();
|
||||
|
||||
|
|
@ -1193,25 +1193,6 @@ BOOL LLFavoritesBarCtrl::needToSaveItemsOrder(const LLInventoryModel::item_array
|
|||
return result;
|
||||
}
|
||||
|
||||
void LLFavoritesBarCtrl::saveItemsOrder(LLInventoryModel::item_array_t& items)
|
||||
{
|
||||
int sortField = 0;
|
||||
|
||||
// current order is saved by setting incremental values (1, 2, 3, ...) for the sort field
|
||||
for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i)
|
||||
{
|
||||
LLViewerInventoryItem* item = *i;
|
||||
|
||||
item->setSortField(++sortField);
|
||||
item->setComplete(TRUE);
|
||||
item->updateServer(FALSE);
|
||||
|
||||
gInventory.updateItem(item);
|
||||
}
|
||||
|
||||
gInventory.notifyObservers();
|
||||
}
|
||||
|
||||
LLInventoryModel::item_array_t::iterator LLFavoritesBarCtrl::findItemByUUID(LLInventoryModel::item_array_t& items, const LLUUID& id)
|
||||
{
|
||||
LLInventoryModel::item_array_t::iterator result = items.end();
|
||||
|
|
@ -1228,15 +1209,6 @@ LLInventoryModel::item_array_t::iterator LLFavoritesBarCtrl::findItemByUUID(LLIn
|
|||
return result;
|
||||
}
|
||||
|
||||
void LLFavoritesBarCtrl::updateItemsOrder(LLInventoryModel::item_array_t& items, const LLUUID& srcItemId, const LLUUID& destItemId)
|
||||
{
|
||||
LLViewerInventoryItem* srcItem = gInventory.getItem(srcItemId);
|
||||
LLViewerInventoryItem* destItem = gInventory.getItem(destItemId);
|
||||
|
||||
items.erase(findItemByUUID(items, srcItem->getUUID()));
|
||||
items.insert(findItemByUUID(items, destItem->getUUID()), srcItem);
|
||||
}
|
||||
|
||||
void LLFavoritesBarCtrl::insertBeforeItem(LLInventoryModel::item_array_t& items, const LLUUID& beforeItemId, LLViewerInventoryItem* insertedItem)
|
||||
{
|
||||
LLViewerInventoryItem* beforeItem = gInventory.getItem(beforeItemId);
|
||||
|
|
|
|||
|
|
@ -126,16 +126,7 @@ private:
|
|||
// checks if the current order of the favorites items must be saved
|
||||
BOOL needToSaveItemsOrder(const LLInventoryModel::item_array_t& items);
|
||||
|
||||
// saves current order of the favorites items
|
||||
void saveItemsOrder(LLInventoryModel::item_array_t& items);
|
||||
|
||||
/*
|
||||
* changes favorites items order by insertion of the item identified by srcItemId
|
||||
* BEFORE the item identified by destItemId. both items must exist in items array.
|
||||
*/
|
||||
void updateItemsOrder(LLInventoryModel::item_array_t& items, const LLUUID& srcItemId, const LLUUID& destItemId);
|
||||
|
||||
/*
|
||||
/**
|
||||
* inserts an item identified by insertedItemId BEFORE an item identified by beforeItemId.
|
||||
* this function assumes that an item identified by insertedItemId doesn't exist in items array.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@
|
|||
#include "llappviewer.h"
|
||||
#include "lltracker.h"
|
||||
|
||||
/*
|
||||
// static
|
||||
std::set<std::string> LLFirstUse::sConfigVariables;
|
||||
|
||||
|
|
@ -75,7 +76,8 @@ void LLFirstUse::resetFirstUse()
|
|||
gWarningSettings.setBOOL(*iter, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
/*
|
||||
|
||||
// Called whenever the viewer detects that your balance went up
|
||||
void LLFirstUse::useBalanceIncrease(S32 delta)
|
||||
|
|
@ -145,6 +147,8 @@ void LLFirstUse::useBuild()
|
|||
LLNotificationsUtil::add("FirstBuild");
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
/*
|
||||
// static
|
||||
void LLFirstUse::useLeftClickNoHit()
|
||||
|
|
@ -157,6 +161,7 @@ void LLFirstUse::useLeftClickNoHit()
|
|||
}
|
||||
}
|
||||
*/
|
||||
/*
|
||||
// static
|
||||
void LLFirstUse::useTeleport()
|
||||
{
|
||||
|
|
@ -171,7 +176,7 @@ void LLFirstUse::useTeleport()
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
// static
|
||||
void LLFirstUse::useOverrideKeys()
|
||||
{
|
||||
|
|
@ -187,7 +192,7 @@ void LLFirstUse::useOverrideKeys()
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
// static
|
||||
void LLFirstUse::useAttach()
|
||||
{
|
||||
|
|
@ -216,6 +221,7 @@ void LLFirstUse::useInventory()
|
|||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
// static
|
||||
void LLFirstUse::useSandbox()
|
||||
|
|
@ -230,7 +236,7 @@ void LLFirstUse::useSandbox()
|
|||
LLNotificationsUtil::add("FirstSandbox", args);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
// static
|
||||
void LLFirstUse::useFlexible()
|
||||
{
|
||||
|
|
@ -277,3 +283,4 @@ void LLFirstUse::useMedia()
|
|||
//LLNotificationsUtil::add("FirstMedia");
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -79,6 +79,7 @@ object or from inventory.
|
|||
class LLFirstUse
|
||||
{
|
||||
public:
|
||||
/*
|
||||
// Add a config variable to be reset on resetFirstUse()
|
||||
static void addConfigVariable(const std::string& var);
|
||||
|
||||
|
|
@ -97,11 +98,16 @@ public:
|
|||
static void useBuild();
|
||||
// static void useLeftClickNoHit();
|
||||
static void useTeleport();
|
||||
*/
|
||||
static void useOverrideKeys();
|
||||
/*
|
||||
static void useAttach();
|
||||
static void useAppearance();
|
||||
static void useInventory();
|
||||
*/
|
||||
static void useSandbox();
|
||||
|
||||
/*
|
||||
static void useFlexible();
|
||||
static void useDebugMenus();
|
||||
static void useSculptedPrim();
|
||||
|
|
@ -109,6 +115,7 @@ public:
|
|||
|
||||
protected:
|
||||
static std::set<std::string> sConfigVariables;
|
||||
*/
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@ LLFloaterGesture::LLFloaterGesture(const LLSD& key)
|
|||
|
||||
mCommitCallbackRegistrar.add("Gesture.Action.ToogleActiveState", boost::bind(&LLFloaterGesture::onActivateBtnClick, this));
|
||||
mCommitCallbackRegistrar.add("Gesture.Action.ShowPreview", boost::bind(&LLFloaterGesture::onClickEdit, this));
|
||||
mCommitCallbackRegistrar.add("Gesture.Action.CopyPast", boost::bind(&LLFloaterGesture::onCopyPastAction, this, _2));
|
||||
mCommitCallbackRegistrar.add("Gesture.Action.CopyPaste", boost::bind(&LLFloaterGesture::onCopyPasteAction, this, _2));
|
||||
mCommitCallbackRegistrar.add("Gesture.Action.SaveToCOF", boost::bind(&LLFloaterGesture::addToCurrentOutFit, this));
|
||||
|
||||
mEnableCallbackRegistrar.add("Gesture.EnableAction", boost::bind(&LLFloaterGesture::isActionEnabled, this, _2));
|
||||
|
|
@ -245,6 +245,7 @@ void LLFloaterGesture::refreshAll()
|
|||
|
||||
void LLFloaterGesture::buildGestureList()
|
||||
{
|
||||
S32 scroll_pos = mGestureList->getScrollPos();
|
||||
std::vector<LLUUID> selected_items;
|
||||
getSelectedIds(selected_items);
|
||||
LL_DEBUGS("Gesture")<< "Rebuilding gesture list "<< LL_ENDL;
|
||||
|
|
@ -274,13 +275,14 @@ void LLFloaterGesture::buildGestureList()
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// attempt to preserve scroll position through re-builds
|
||||
// since we do re-build any time anything dirties
|
||||
// since we do re-build whenever something gets dirty
|
||||
for(std::vector<LLUUID>::iterator it = selected_items.begin(); it != selected_items.end(); it++)
|
||||
{
|
||||
mGestureList->selectByID(*it);
|
||||
}
|
||||
mGestureList->scrollToShowSelected();
|
||||
mGestureList->setScrollPos(scroll_pos);
|
||||
}
|
||||
|
||||
void LLFloaterGesture::addGesture(const LLUUID& item_id , LLMultiGesture* gesture,LLCtrlListInterface * list )
|
||||
|
|
@ -475,7 +477,7 @@ void LLFloaterGesture::onActivateBtnClick()
|
|||
}
|
||||
}
|
||||
|
||||
void LLFloaterGesture::onCopyPastAction(const LLSD& command)
|
||||
void LLFloaterGesture::onCopyPasteAction(const LLSD& command)
|
||||
{
|
||||
std::string command_name = command.asString();
|
||||
// since we select this comman inventory item had already arrived .
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ private:
|
|||
void onClickPlay();
|
||||
void onClickNew();
|
||||
void onCommitList();
|
||||
void onCopyPastAction(const LLSD& command);
|
||||
void onCopyPasteAction(const LLSD& command);
|
||||
void onDeleteSelected();
|
||||
|
||||
LLUUID mSelectedID;
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
#include "llfloaterinventory.h"
|
||||
|
||||
#include "llagent.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterreg.h"
|
||||
#include "llinventorymodel.h"
|
||||
#include "llpanelmaininventory.h"
|
||||
|
|
@ -135,5 +135,5 @@ void LLFloaterInventory::cleanup()
|
|||
|
||||
void LLFloaterInventory::onOpen(const LLSD& key)
|
||||
{
|
||||
LLFirstUse::useInventory();
|
||||
//LLFirstUse::useInventory();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@
|
|||
#include "lldirpicker.h"
|
||||
#include "llfeaturemanager.h"
|
||||
#include "llfocusmgr.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterreg.h"
|
||||
#include "llfloaterabout.h"
|
||||
#include "llfloaterhardwaresettings.h"
|
||||
|
|
@ -185,8 +185,8 @@ void handleNameTagOptionChanged(const LLSD& newvalue);
|
|||
viewer_media_t get_web_media();
|
||||
bool callback_clear_browser_cache(const LLSD& notification, const LLSD& response);
|
||||
|
||||
bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
|
||||
bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
|
||||
//bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
|
||||
//bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
|
||||
|
||||
void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator);
|
||||
|
||||
|
|
@ -236,7 +236,7 @@ void handleNameTagOptionChanged(const LLSD& newvalue)
|
|||
}
|
||||
}
|
||||
|
||||
bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater)
|
||||
/*bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater)
|
||||
{
|
||||
S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
|
||||
if (0 == option && floater )
|
||||
|
|
@ -244,7 +244,7 @@ bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFlo
|
|||
if ( floater )
|
||||
{
|
||||
floater->setAllIgnored();
|
||||
LLFirstUse::disableFirstUse();
|
||||
// LLFirstUse::disableFirstUse();
|
||||
floater->buildPopupLists();
|
||||
}
|
||||
}
|
||||
|
|
@ -259,13 +259,13 @@ bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFl
|
|||
if ( floater )
|
||||
{
|
||||
floater->resetAllIgnored();
|
||||
LLFirstUse::resetFirstUse();
|
||||
//LLFirstUse::resetFirstUse();
|
||||
floater->buildPopupLists();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator)
|
||||
{
|
||||
|
|
@ -313,8 +313,8 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
|
|||
mCommitCallbackRegistrar.add("Pref.SelectSkin", boost::bind(&LLFloaterPreference::onSelectSkin, this));
|
||||
mCommitCallbackRegistrar.add("Pref.VoiceSetKey", boost::bind(&LLFloaterPreference::onClickSetKey, this));
|
||||
mCommitCallbackRegistrar.add("Pref.VoiceSetMiddleMouse", boost::bind(&LLFloaterPreference::onClickSetMiddleMouse, this));
|
||||
mCommitCallbackRegistrar.add("Pref.ClickSkipDialogs", boost::bind(&LLFloaterPreference::onClickSkipDialogs, this));
|
||||
mCommitCallbackRegistrar.add("Pref.ClickResetDialogs", boost::bind(&LLFloaterPreference::onClickResetDialogs, this));
|
||||
// mCommitCallbackRegistrar.add("Pref.ClickSkipDialogs", boost::bind(&LLFloaterPreference::onClickSkipDialogs, this));
|
||||
// mCommitCallbackRegistrar.add("Pref.ClickResetDialogs", boost::bind(&LLFloaterPreference::onClickResetDialogs, this));
|
||||
mCommitCallbackRegistrar.add("Pref.ClickEnablePopup", boost::bind(&LLFloaterPreference::onClickEnablePopup, this));
|
||||
mCommitCallbackRegistrar.add("Pref.ClickDisablePopup", boost::bind(&LLFloaterPreference::onClickDisablePopup, this));
|
||||
mCommitCallbackRegistrar.add("Pref.LogPath", boost::bind(&LLFloaterPreference::onClickLogPath, this));
|
||||
|
|
@ -1070,7 +1070,7 @@ void LLFloaterPreference::onClickSetMiddleMouse()
|
|||
// update the control right away since we no longer wait for apply
|
||||
getChild<LLUICtrl>("modifier_combo")->onCommit();
|
||||
}
|
||||
|
||||
/*
|
||||
void LLFloaterPreference::onClickSkipDialogs()
|
||||
{
|
||||
LLNotificationsUtil::add("SkipShowNextTimeDialogs", LLSD(), LLSD(), boost::bind(&callback_skip_dialogs, _1, _2, this));
|
||||
|
|
@ -1080,6 +1080,7 @@ void LLFloaterPreference::onClickResetDialogs()
|
|||
{
|
||||
LLNotificationsUtil::add("ResetShowNextTimeDialogs", LLSD(), LLSD(), boost::bind(&callback_reset_dialogs, _1, _2, this));
|
||||
}
|
||||
*/
|
||||
|
||||
void LLFloaterPreference::onClickEnablePopup()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -110,8 +110,8 @@ public:
|
|||
void onClickSetKey();
|
||||
void setKey(KEY key);
|
||||
void onClickSetMiddleMouse();
|
||||
void onClickSkipDialogs();
|
||||
void onClickResetDialogs();
|
||||
// void onClickSkipDialogs();
|
||||
// void onClickResetDialogs();
|
||||
void onClickEnablePopup();
|
||||
void onClickDisablePopup();
|
||||
void resetAllIgnored();
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
#include "llfloatersettingsdebug.h"
|
||||
#include "llfloater.h"
|
||||
#include "lluictrlfactory.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llcombobox.h"
|
||||
#include "llspinctrl.h"
|
||||
#include "llcolorswatch.h"
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@
|
|||
#include "llviewercontrol.h"
|
||||
#include "llcommandhandler.h"
|
||||
#include "lldraghandle.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterreg.h" // getTypedInstance()
|
||||
#include "llfocusmgr.h"
|
||||
#include "llinventorymodel.h"
|
||||
|
|
@ -314,7 +314,7 @@ void LLFloaterWorldMap::onOpen(const LLSD& key)
|
|||
adjustZoomSliderBounds();
|
||||
|
||||
// Could be first show
|
||||
LLFirstUse::useMap();
|
||||
//LLFirstUse::useMap();
|
||||
|
||||
// Start speculative download of landmarks
|
||||
const LLUUID landmark_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_LANDMARK);
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@
|
|||
#include "llrecentpeople.h"
|
||||
#include "llsyswellwindow.h"
|
||||
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llagentui.h"
|
||||
#include "lltextutil.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -2931,50 +2931,6 @@ bool move_task_inventory_callback(const LLSD& notification, const LLSD& response
|
|||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
Next functions intended to reorder items in the inventory folder and save order on server
|
||||
Is now used for Favorites folder.
|
||||
|
||||
*TODO: refactoring is needed with Favorites Bar functionality. Probably should be moved in LLInventoryModel
|
||||
*/
|
||||
void saveItemsOrder(LLInventoryModel::item_array_t& items)
|
||||
{
|
||||
int sortField = 0;
|
||||
|
||||
// current order is saved by setting incremental values (1, 2, 3, ...) for the sort field
|
||||
for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i)
|
||||
{
|
||||
LLViewerInventoryItem* item = *i;
|
||||
|
||||
item->setSortField(++sortField);
|
||||
item->setComplete(TRUE);
|
||||
item->updateServer(FALSE);
|
||||
|
||||
gInventory.updateItem(item);
|
||||
|
||||
// Tell the parent folder to refresh its sort order.
|
||||
gInventory.addChangedMask(LLInventoryObserver::SORT, item->getParentUUID());
|
||||
}
|
||||
|
||||
gInventory.notifyObservers();
|
||||
}
|
||||
|
||||
LLInventoryModel::item_array_t::iterator findItemByUUID(LLInventoryModel::item_array_t& items, const LLUUID& id)
|
||||
{
|
||||
LLInventoryModel::item_array_t::iterator result = items.end();
|
||||
|
||||
for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i)
|
||||
{
|
||||
if ((*i)->getUUID() == id)
|
||||
{
|
||||
result = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// See also LLInventorySort where landmarks in the Favorites folder are sorted.
|
||||
class LLViewerInventoryItemSort
|
||||
{
|
||||
|
|
@ -2996,15 +2952,6 @@ void rearrange_item_order_by_sort_field(LLInventoryModel::item_array_t& items)
|
|||
std::sort(items.begin(), items.end(), sort_functor);
|
||||
}
|
||||
|
||||
void updateItemsOrder(LLInventoryModel::item_array_t& items, const LLUUID& srcItemId, const LLUUID& destItemId)
|
||||
{
|
||||
LLViewerInventoryItem* srcItem = gInventory.getItem(srcItemId);
|
||||
LLViewerInventoryItem* destItem = gInventory.getItem(destItemId);
|
||||
|
||||
items.erase(findItemByUUID(items, srcItem->getUUID()));
|
||||
items.insert(findItemByUUID(items, destItem->getUUID()), srcItem);
|
||||
}
|
||||
|
||||
BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item,
|
||||
BOOL drop)
|
||||
{
|
||||
|
|
@ -3103,9 +3050,9 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item,
|
|||
rearrange_item_order_by_sort_field(items);
|
||||
|
||||
// update order
|
||||
updateItemsOrder(items, srcItemId, destItemId);
|
||||
LLInventoryModel::updateItemsOrder(items, srcItemId, destItemId);
|
||||
|
||||
saveItemsOrder(items);
|
||||
gInventory.saveItemsOrder(items);
|
||||
}
|
||||
}
|
||||
else if (favorites_id == mUUID) // if target is the favorites folder we use copy
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@
|
|||
// newview includes
|
||||
#include "llappearancemgr.h"
|
||||
#include "llappviewer.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterchat.h"
|
||||
#include "llfloatercustomize.h"
|
||||
#include "llfocusmgr.h"
|
||||
|
|
|
|||
|
|
@ -3622,6 +3622,57 @@ BOOL LLInventoryModel::getIsFirstTimeInViewer2()
|
|||
return sFirstTimeInViewer2;
|
||||
}
|
||||
|
||||
static LLInventoryModel::item_array_t::iterator find_item_iter_by_uuid(LLInventoryModel::item_array_t& items, const LLUUID& id)
|
||||
{
|
||||
LLInventoryModel::item_array_t::iterator result = items.end();
|
||||
|
||||
for (LLInventoryModel::item_array_t::iterator i = items.begin(); i != items.end(); ++i)
|
||||
{
|
||||
if ((*i)->getUUID() == id)
|
||||
{
|
||||
result = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// static
|
||||
void LLInventoryModel::updateItemsOrder(LLInventoryModel::item_array_t& items, const LLUUID& src_item_id, const LLUUID& dest_item_id)
|
||||
{
|
||||
LLInventoryModel::item_array_t::iterator it_src = find_item_iter_by_uuid(items, src_item_id);
|
||||
LLInventoryModel::item_array_t::iterator it_dest = find_item_iter_by_uuid(items, dest_item_id);
|
||||
|
||||
if (it_src == items.end() || it_dest == items.end()) return;
|
||||
|
||||
LLViewerInventoryItem* src_item = *it_src;
|
||||
items.erase(it_src);
|
||||
items.insert(it_dest, src_item);
|
||||
}
|
||||
|
||||
void LLInventoryModel::saveItemsOrder(const LLInventoryModel::item_array_t& items)
|
||||
{
|
||||
int sortField = 0;
|
||||
|
||||
// current order is saved by setting incremental values (1, 2, 3, ...) for the sort field
|
||||
for (item_array_t::const_iterator i = items.begin(); i != items.end(); ++i)
|
||||
{
|
||||
LLViewerInventoryItem* item = *i;
|
||||
|
||||
item->setSortField(++sortField);
|
||||
item->setComplete(TRUE);
|
||||
item->updateServer(FALSE);
|
||||
|
||||
updateItem(item);
|
||||
|
||||
// Tell the parent folder to refresh its sort order.
|
||||
addChangedMask(LLInventoryObserver::SORT, item->getParentUUID());
|
||||
}
|
||||
|
||||
notifyObservers();
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
// *NOTE: DEBUG functionality
|
||||
|
|
|
|||
|
|
@ -384,6 +384,30 @@ public:
|
|||
void setLibraryOwnerID(const LLUUID& id);
|
||||
void setLibraryRootFolderID(const LLUUID& id);
|
||||
|
||||
|
||||
/**
|
||||
* Changes items order by insertion of the item identified by src_item_id
|
||||
* BEFORE the item identified by dest_item_id. Both items must exist in items array.
|
||||
*
|
||||
* Sorting is stored after method is finished. Only src_item_id is moved before dest_item_id.
|
||||
*
|
||||
* @param[in, out] items - vector with items to be updated. It should be sorted in a right way
|
||||
* before calling this method.
|
||||
* @param src_item_id - LLUUID of inventory item to be moved in new position
|
||||
* @param dest_item_id - LLUUID of inventory item before which source item should be placed.
|
||||
*/
|
||||
static void updateItemsOrder(LLInventoryModel::item_array_t& items, const LLUUID& src_item_id, const LLUUID& dest_item_id);
|
||||
|
||||
/**
|
||||
* Saves current order of the passed items using inventory item sort field.
|
||||
*
|
||||
* It reset items' sort fields and saves them on server.
|
||||
* Is used to save order for Favorites folder.
|
||||
*
|
||||
* @param[in] items vector of items in order to be saved.
|
||||
*/
|
||||
void saveItemsOrder(const LLInventoryModel::item_array_t& items);
|
||||
|
||||
protected:
|
||||
|
||||
// Internal methods which add inventory and make sure that all of
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
#include "llagent.h"
|
||||
#include "llcallingcard.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterchat.h"
|
||||
#include "llfloaterworldmap.h"
|
||||
#include "lllineeditor.h"
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#include "lldrawable.h"
|
||||
#include "lldrawpoolavatar.h"
|
||||
#include "llface.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloatercustomize.h"
|
||||
#include "llfloatertools.h"
|
||||
#include "llresmgr.h"
|
||||
|
|
@ -143,7 +143,7 @@ void LLMorphView::setVisible(BOOL visible)
|
|||
initialize();
|
||||
|
||||
// First run dialog
|
||||
LLFirstUse::useAppearance();
|
||||
//LLFirstUse::useAppearance();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@
|
|||
#include "pipeline.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "lluictrlfactory.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
|
||||
#include "lldrawpool.h"
|
||||
|
||||
|
|
@ -682,7 +682,7 @@ void LLPanelObject::getState( )
|
|||
if (objectp->getParameterEntryInUse(LLNetworkData::PARAMS_SCULPT))
|
||||
{
|
||||
selected_item = MI_SCULPT;
|
||||
LLFirstUse::useSculptedPrim();
|
||||
//LLFirstUse::useSculptedPrim();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@
|
|||
|
||||
#include "llagent.h"
|
||||
#include "llagentwearables.h"
|
||||
#include "llappearancemgr.h"
|
||||
|
||||
#include "llbutton.h"
|
||||
#include "llfloaterreg.h"
|
||||
|
|
@ -44,6 +45,8 @@
|
|||
#include "llinventoryfunctions.h"
|
||||
#include "llinventorypanel.h"
|
||||
#include "lllandmark.h"
|
||||
#include "lllineeditor.h"
|
||||
#include "llmodaldialog.h"
|
||||
#include "llsidepanelappearance.h"
|
||||
#include "llsidetray.h"
|
||||
#include "lltabcontainer.h"
|
||||
|
|
@ -61,12 +64,75 @@
|
|||
static LLRegisterPanelClassWrapper<LLPanelOutfitsInventory> t_inventory("panel_outfits_inventory");
|
||||
bool LLPanelOutfitsInventory::sShowDebugEditor = false;
|
||||
|
||||
class LLOutfitSaveAsDialog : public LLModalDialog
|
||||
{
|
||||
private:
|
||||
std::string mItemName;
|
||||
std::string mTempItemName;
|
||||
|
||||
boost::signals2::signal<void (const std::string&)> mSaveAsSignal;
|
||||
|
||||
public:
|
||||
LLOutfitSaveAsDialog( const LLSD& key )
|
||||
: LLModalDialog( key ),
|
||||
mTempItemName(key.asString())
|
||||
{
|
||||
}
|
||||
|
||||
BOOL postBuild()
|
||||
{
|
||||
getChild<LLUICtrl>("Save")->setCommitCallback(boost::bind(&LLOutfitSaveAsDialog::onSave, this ));
|
||||
getChild<LLUICtrl>("Cancel")->setCommitCallback(boost::bind(&LLOutfitSaveAsDialog::onCancel, this ));
|
||||
|
||||
childSetTextArg("name ed", "[DESC]", mTempItemName);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void setSaveAsCommit( const boost::signals2::signal<void (const std::string&)>::slot_type& cb )
|
||||
{
|
||||
mSaveAsSignal.connect(cb);
|
||||
}
|
||||
|
||||
virtual void onOpen(const LLSD& key)
|
||||
{
|
||||
LLLineEditor* edit = getChild<LLLineEditor>("name ed");
|
||||
if (edit)
|
||||
{
|
||||
edit->setFocus(TRUE);
|
||||
edit->selectAll();
|
||||
}
|
||||
}
|
||||
|
||||
void onSave()
|
||||
{
|
||||
mItemName = childGetValue("name ed").asString();
|
||||
LLStringUtil::trim(mItemName);
|
||||
if( !mItemName.empty() )
|
||||
{
|
||||
mSaveAsSignal(mItemName);
|
||||
closeFloater(); // destroys this object
|
||||
}
|
||||
}
|
||||
|
||||
void onCancel()
|
||||
{
|
||||
closeFloater(); // destroys this object
|
||||
}
|
||||
};
|
||||
|
||||
LLPanelOutfitsInventory::LLPanelOutfitsInventory() :
|
||||
mActivePanel(NULL),
|
||||
mParent(NULL)
|
||||
{
|
||||
mSavedFolderState = new LLSaveFolderState();
|
||||
mSavedFolderState->setApply(FALSE);
|
||||
|
||||
static bool registered_dialog = false;
|
||||
if (!registered_dialog)
|
||||
{
|
||||
LLFloaterReg::add("outfit_save_as", "floater_outfit_save_as.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLOutfitSaveAsDialog>);
|
||||
registered_dialog = true;
|
||||
}
|
||||
}
|
||||
|
||||
LLPanelOutfitsInventory::~LLPanelOutfitsInventory()
|
||||
|
|
@ -177,10 +243,28 @@ void LLPanelOutfitsInventory::onEdit()
|
|||
{
|
||||
}
|
||||
|
||||
void LLPanelOutfitsInventory::onNew()
|
||||
void LLPanelOutfitsInventory::onSave()
|
||||
{
|
||||
std::string outfit_name;
|
||||
|
||||
if (!LLAppearanceManager::getInstance()->getBaseOutfitName(outfit_name))
|
||||
{
|
||||
outfit_name = LLViewerFolderType::lookupNewCategoryName(LLFolderType::FT_OUTFIT);
|
||||
}
|
||||
|
||||
LLOutfitSaveAsDialog* save_as_dialog = LLFloaterReg::showTypedInstance<LLOutfitSaveAsDialog>("outfit_save_as", LLSD(outfit_name), TRUE);
|
||||
if (save_as_dialog)
|
||||
{
|
||||
save_as_dialog->setSaveAsCommit(boost::bind(&LLPanelOutfitsInventory::onSaveCommit, this, _1 ));
|
||||
}
|
||||
}
|
||||
|
||||
void LLPanelOutfitsInventory::onSaveCommit(const std::string& outfit_name)
|
||||
{
|
||||
const std::string& outfit_name = LLViewerFolderType::lookupNewCategoryName(LLFolderType::FT_OUTFIT);
|
||||
LLUUID outfit_folder = gAgentWearables.makeNewOutfitLinks(outfit_name);
|
||||
LLSD key;
|
||||
LLSideTray::getInstance()->showPanel("panel_outfits_inventory", key);
|
||||
|
||||
if (mAppearanceTabs)
|
||||
{
|
||||
mAppearanceTabs->selectTabByName("outfitslist_tab");
|
||||
|
|
@ -291,7 +375,7 @@ void LLPanelOutfitsInventory::onGearButtonClick()
|
|||
|
||||
void LLPanelOutfitsInventory::onAddButtonClick()
|
||||
{
|
||||
onNew();
|
||||
onSave();
|
||||
}
|
||||
|
||||
void LLPanelOutfitsInventory::showActionMenu(LLMenuGL* menu, std::string spawning_view_name)
|
||||
|
|
@ -330,7 +414,7 @@ void LLPanelOutfitsInventory::onCustomAction(const LLSD& userdata)
|
|||
const std::string command_name = userdata.asString();
|
||||
if (command_name == "new")
|
||||
{
|
||||
onNew();
|
||||
onSave();
|
||||
}
|
||||
if (command_name == "edit")
|
||||
{
|
||||
|
|
|
|||
|
|
@ -59,7 +59,9 @@ public:
|
|||
void onAdd();
|
||||
void onRemove();
|
||||
void onEdit();
|
||||
void onNew();
|
||||
void onSave();
|
||||
|
||||
void onSaveCommit(const std::string& item_name);
|
||||
|
||||
void onSelectionChange(const std::deque<LLFolderViewItem*> &items, BOOL user_action);
|
||||
void onSelectorButtonClicked();
|
||||
|
|
|
|||
|
|
@ -532,10 +532,10 @@ BOOL LLPanelPeople::postBuild()
|
|||
friends_panel->childSetAction("add_btn", boost::bind(&LLPanelPeople::onAddFriendWizButtonClicked, this));
|
||||
friends_panel->childSetAction("del_btn", boost::bind(&LLPanelPeople::onDeleteFriendButtonClicked, this));
|
||||
|
||||
mOnlineFriendList->setDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, mOnlineFriendList));
|
||||
mAllFriendList->setDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, mAllFriendList));
|
||||
mNearbyList->setDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, mNearbyList));
|
||||
mRecentList->setDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, mRecentList));
|
||||
mOnlineFriendList->setItemDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, _1));
|
||||
mAllFriendList->setItemDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, _1));
|
||||
mNearbyList->setItemDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, _1));
|
||||
mRecentList->setItemDoubleClickCallback(boost::bind(&LLPanelPeople::onAvatarListDoubleClicked, this, _1));
|
||||
|
||||
mOnlineFriendList->setCommitCallback(boost::bind(&LLPanelPeople::onAvatarListCommitted, this, mOnlineFriendList));
|
||||
mAllFriendList->setCommitCallback(boost::bind(&LLPanelPeople::onAvatarListCommitted, this, mAllFriendList));
|
||||
|
|
@ -1005,12 +1005,15 @@ void LLPanelPeople::onTabSelected(const LLSD& param)
|
|||
mFilterEditor->setLabel(getString("people_filter_label"));
|
||||
}
|
||||
|
||||
void LLPanelPeople::onAvatarListDoubleClicked(LLAvatarList* list)
|
||||
void LLPanelPeople::onAvatarListDoubleClicked(LLUICtrl* ctrl)
|
||||
{
|
||||
LLUUID clicked_id = list->getSelectedUUID();
|
||||
|
||||
if (clicked_id.isNull())
|
||||
LLAvatarListItem* item = dynamic_cast<LLAvatarListItem*>(ctrl);
|
||||
if(!item)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
LLUUID clicked_id = item->getAvatarId();
|
||||
|
||||
#if 0 // SJB: Useful for testing, but not currently functional or to spec
|
||||
LLAvatarActions::showProfile(clicked_id);
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ private:
|
|||
void onNearbyViewSortButtonClicked();
|
||||
void onFriendsViewSortButtonClicked();
|
||||
void onGroupsViewSortButtonClicked();
|
||||
void onAvatarListDoubleClicked(LLAvatarList* list);
|
||||
void onAvatarListDoubleClicked(LLUICtrl* ctrl);
|
||||
void onAvatarListCommitted(LLAvatarList* list);
|
||||
void onGroupPlusButtonClicked();
|
||||
void onGroupMinusButtonClicked();
|
||||
|
|
|
|||
|
|
@ -723,7 +723,10 @@ void LLTeleportHistoryPanel::onTeleportHistoryChange(S32 removed_index)
|
|||
if (-1 == removed_index)
|
||||
showTeleportHistory(); // recreate all items
|
||||
else
|
||||
{
|
||||
replaceItem(removed_index); // replace removed item by most recent
|
||||
updateVerbs();
|
||||
}
|
||||
}
|
||||
|
||||
void LLTeleportHistoryPanel::replaceItem(S32 removed_index)
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@
|
|||
#include "llcolorswatch.h"
|
||||
#include "lltexturectrl.h"
|
||||
#include "llcombobox.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfocusmgr.h"
|
||||
#include "llmanipscale.h"
|
||||
#include "llpreviewscript.h"
|
||||
|
|
@ -470,7 +470,7 @@ void LLPanelVolume::sendIsFlexible()
|
|||
|
||||
if (is_flexible)
|
||||
{
|
||||
LLFirstUse::useFlexible();
|
||||
//LLFirstUse::useFlexible();
|
||||
|
||||
if (objectp->getClickAction() == CLICK_ACTION_SIT)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ LLParticipantList::LLParticipantList(LLSpeakerMgr* data_source, LLAvatarList* av
|
|||
mSpeakerMgr->addListener(mSpeakerModeratorListener, "update_moderator");
|
||||
|
||||
mAvatarList->setNoItemsCommentText(LLTrans::getString("LoadingData"));
|
||||
mAvatarListDoubleClickConnection = mAvatarList->setDoubleClickCallback(boost::bind(&LLParticipantList::onAvatarListDoubleClicked, this, mAvatarList));
|
||||
mAvatarListDoubleClickConnection = mAvatarList->setItemDoubleClickCallback(boost::bind(&LLParticipantList::onAvatarListDoubleClicked, this, _1));
|
||||
mAvatarListRefreshConnection = mAvatarList->setRefreshCompleteCallback(boost::bind(&LLParticipantList::onAvatarListRefreshed, this, _1, _2));
|
||||
// Set onAvatarListDoubleClicked as default on_return action.
|
||||
mAvatarListReturnConnection = mAvatarList->setReturnCallback(boost::bind(&LLParticipantList::onAvatarListDoubleClicked, this, mAvatarList));
|
||||
|
|
@ -132,10 +132,15 @@ void LLParticipantList::setSpeakingIndicatorsVisible(BOOL visible)
|
|||
mAvatarList->setSpeakingIndicatorsVisible(visible);
|
||||
};
|
||||
|
||||
void LLParticipantList::onAvatarListDoubleClicked(LLAvatarList* list)
|
||||
void LLParticipantList::onAvatarListDoubleClicked(LLUICtrl* ctrl)
|
||||
{
|
||||
// NOTE(EM): Should we check if there is multiple selection and start conference if it is so?
|
||||
LLUUID clicked_id = list->getSelectedUUID();
|
||||
LLAvatarListItem* item = dynamic_cast<LLAvatarListItem*>(ctrl);
|
||||
if(!item)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
LLUUID clicked_id = item->getAvatarId();
|
||||
|
||||
if (clicked_id.isNull() || clicked_id == gAgent.getID())
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -232,7 +232,7 @@ class LLParticipantList
|
|||
};
|
||||
|
||||
private:
|
||||
void onAvatarListDoubleClicked(LLAvatarList* list);
|
||||
void onAvatarListDoubleClicked(LLUICtrl* ctrl);
|
||||
void onAvatarListRefreshed(LLUICtrl* ctrl, const LLSD& param);
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ void LLWatchForOutfitRenameObserver::changed(U32 mask)
|
|||
mPanel->refreshCurrentOutfitName();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
LLSidepanelAppearance::LLSidepanelAppearance() :
|
||||
LLPanel(),
|
||||
mFilterSubString(LLStringUtil::null),
|
||||
|
|
@ -255,7 +255,7 @@ void LLSidepanelAppearance::onNewOutfitButtonClicked()
|
|||
{
|
||||
if (!mLookInfo->getVisible())
|
||||
{
|
||||
mPanelOutfitsInventory->onNew();
|
||||
mPanelOutfitsInventory->onSave();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -321,15 +321,11 @@ void LLSidepanelAppearance::refreshCurrentOutfitName(const std::string& name)
|
|||
mOutfitDirtyTag->setVisible(LLAppearanceManager::getInstance()->isOutfitDirty());
|
||||
if (name == "")
|
||||
{
|
||||
const LLViewerInventoryItem *outfit_link = LLAppearanceManager::getInstance()->getBaseOutfitLink();
|
||||
if (outfit_link)
|
||||
std::string outfit_name;
|
||||
if (LLAppearanceManager::getInstance()->getBaseOutfitName(outfit_name))
|
||||
{
|
||||
const LLViewerInventoryCategory *cat = outfit_link->getLinkedCategory();
|
||||
if (cat && cat->getPreferredType() == LLFolderType::FT_OUTFIT)
|
||||
{
|
||||
mCurrentLookName->setText(cat->getName());
|
||||
mCurrentLookName->setText(outfit_name);
|
||||
return;
|
||||
}
|
||||
}
|
||||
mCurrentLookName->setText(getString("No Outfit"));
|
||||
mOpenOutfitBtn->setEnabled(FALSE);
|
||||
|
|
|
|||
|
|
@ -61,6 +61,7 @@ public:
|
|||
void fetchInventory();
|
||||
void inventoryFetched();
|
||||
void updateVerbs();
|
||||
void onNewOutfitButtonClicked();
|
||||
|
||||
private:
|
||||
void onFilterEdit(const std::string& search_string);
|
||||
|
|
@ -68,7 +69,6 @@ private:
|
|||
void onOpenOutfitButtonClicked();
|
||||
void onEditAppearanceButtonClicked();
|
||||
void onEditButtonClicked();
|
||||
void onNewOutfitButtonClicked();
|
||||
void onBackButtonClicked();
|
||||
void onEditWearBackClicked();
|
||||
void toggleLookInfoPanel(BOOL visible);
|
||||
|
|
|
|||
|
|
@ -229,10 +229,6 @@ void SpeakingIndicatorManager::switchSpeakerIndicators(const speaker_ids_t& spea
|
|||
mSwitchedIndicatorsOn.insert(*it_uuid);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_WARNS("SpeakingIndicator") << "indicator was not found among registered: " << *it_uuid << LL_ENDL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@
|
|||
#include "lleventnotifier.h"
|
||||
#include "llface.h"
|
||||
#include "llfeaturemanager.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterchat.h"
|
||||
#include "llfloaterhud.h"
|
||||
#include "llfloaterland.h"
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
#include "lltoolmgr.h"
|
||||
#include "llui.h"
|
||||
#include "llviewermenu.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llpanelblockedlist.h"
|
||||
#include "llscrolllistctrl.h"
|
||||
#include "llscrolllistitem.h"
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
#include "llagentwearables.h"
|
||||
#include "llappearancemgr.h"
|
||||
#include "lldictionary.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterreg.h"
|
||||
#include "llfloatertools.h"
|
||||
#include "llgesturemgr.h"
|
||||
|
|
@ -1199,11 +1199,11 @@ void LLToolDragAndDrop::dropObject(LLViewerObject* raycast_target,
|
|||
locateInventory(item, cat);
|
||||
if(!item || !item->isComplete()) return;
|
||||
|
||||
if (regionp
|
||||
&& (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
|
||||
{
|
||||
LLFirstUse::useSandbox();
|
||||
}
|
||||
//if (regionp
|
||||
// && (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
|
||||
//{
|
||||
// LLFirstUse::useSandbox();
|
||||
//}
|
||||
// check if it cannot be copied, and mark as remove if it is -
|
||||
// this will remove the object from inventory after rez. Only
|
||||
// bother with this check if we would not normally remove from
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@
|
|||
#include "llmenugl.h"
|
||||
#include "llfloaterreg.h"
|
||||
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
// tools and manipulators
|
||||
#include "lltool.h"
|
||||
#include "llmanipscale.h"
|
||||
|
|
@ -301,7 +301,7 @@ void LLToolMgr::toggleBuildMode()
|
|||
getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
|
||||
|
||||
// Could be first use
|
||||
LLFirstUse::useBuild();
|
||||
//LLFirstUse::useBuild();
|
||||
|
||||
gAgent.resetView(false);
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
#include "llagent.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llfocusmgr.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterland.h"
|
||||
#include "llfloaterreg.h"
|
||||
#include "llfloaterscriptdebug.h"
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@
|
|||
// viewer headers
|
||||
#include "llbutton.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloatertools.h"
|
||||
#include "llselectmgr.h"
|
||||
#include "llstatusbar.h"
|
||||
|
|
@ -188,7 +188,7 @@ BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics )
|
|||
|
||||
if (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX)
|
||||
{
|
||||
LLFirstUse::useSandbox();
|
||||
//LLFirstUse::useSandbox();
|
||||
}
|
||||
|
||||
// Set params for new object based on its PCode.
|
||||
|
|
@ -491,7 +491,7 @@ BOOL LLToolPlacer::addDuplicate(S32 x, S32 y)
|
|||
if (regionp
|
||||
&& (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
|
||||
{
|
||||
LLFirstUse::useSandbox();
|
||||
//LLFirstUse::useSandbox();
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
#include "lldynamictexture.h"
|
||||
#include "lldrawpoolalpha.h"
|
||||
#include "llfeaturemanager.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llhudmanager.h"
|
||||
#include "llimagebmp.h"
|
||||
#include "llmemory.h"
|
||||
|
|
@ -404,7 +404,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)
|
|||
if( arrival_fraction > 1.f )
|
||||
{
|
||||
arrival_fraction = 1.f;
|
||||
LLFirstUse::useTeleport();
|
||||
//LLFirstUse::useTeleport();
|
||||
gAgent.setTeleportState( LLAgent::TELEPORT_NONE );
|
||||
}
|
||||
gViewerWindow->setProgressCancelButtonVisible(FALSE, LLTrans::getString("Cancel"));
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@
|
|||
#include "lluuid.h"
|
||||
#include "llkeyboard.h"
|
||||
#include "llmutelist.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
|
||||
#include <boost/bind.hpp> // for SkinFolder listener
|
||||
#include <boost/signals2.hpp>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
#include "llconsole.h"
|
||||
#include "lldebugview.h"
|
||||
#include "llfilepicker.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterbuy.h"
|
||||
#include "llfloaterbuycontents.h"
|
||||
#include "llfloaterbuycurrency.h"
|
||||
|
|
@ -2491,7 +2491,7 @@ class LLObjectBuild : public view_listener_t
|
|||
LLToolMgr::getInstance()->getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
|
||||
|
||||
// Could be first use
|
||||
LLFirstUse::useBuild();
|
||||
//LLFirstUse::useBuild();
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
|
@ -2536,7 +2536,7 @@ void handle_object_edit()
|
|||
LLViewerJoystick::getInstance()->setNeedsReset(true);
|
||||
|
||||
// Could be first use
|
||||
LLFirstUse::useBuild();
|
||||
//LLFirstUse::useBuild();
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -2587,7 +2587,7 @@ class LLLandBuild : public view_listener_t
|
|||
LLToolMgr::getInstance()->getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
|
||||
|
||||
// Could be first use
|
||||
LLFirstUse::useBuild();
|
||||
//LLFirstUse::useBuild();
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
|
@ -2824,7 +2824,7 @@ bool handle_go_to()
|
|||
}
|
||||
|
||||
// Could be first use
|
||||
LLFirstUse::useGoTo();
|
||||
//LLFirstUse::useGoTo();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -3626,7 +3626,7 @@ void near_sit_down_point(BOOL success, void *)
|
|||
gAgent.setControlFlags(AGENT_CONTROL_SIT_ON_GROUND);
|
||||
|
||||
// Might be first sit
|
||||
LLFirstUse::useSit();
|
||||
//LLFirstUse::useSit();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -5144,7 +5144,7 @@ void toggle_debug_menus(void*)
|
|||
gSavedSettings.setBOOL("UseDebugMenus", visible);
|
||||
if(visible)
|
||||
{
|
||||
LLFirstUse::useDebugMenus();
|
||||
//LLFirstUse::useDebugMenus();
|
||||
}
|
||||
show_debug_menus();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
#include "llagent.h"
|
||||
#include "llcallingcard.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterbuycurrency.h"
|
||||
#include "llfloaterbuyland.h"
|
||||
#include "llfloaterchat.h"
|
||||
|
|
@ -711,6 +711,18 @@ protected:
|
|||
}
|
||||
};
|
||||
|
||||
class LLOpenTaskGroupOffer : public LLInventoryAddedObserver
|
||||
{
|
||||
protected:
|
||||
/*virtual*/ void done()
|
||||
{
|
||||
open_inventory_offer(mAdded, "group_offer");
|
||||
mAdded.clear();
|
||||
gInventory.removeObserver(this);
|
||||
delete this;
|
||||
}
|
||||
};
|
||||
|
||||
//one global instance to bind them
|
||||
LLOpenTaskOffer* gNewInventoryObserver=NULL;
|
||||
|
||||
|
|
@ -929,9 +941,6 @@ void open_inventory_offer(const std::vector<LLUUID>& items, const std::string& f
|
|||
case LLAssetType::AT_ANIMATION:
|
||||
LLFloaterReg::showInstance("preview_anim", LLSD(item_id), take_focus);
|
||||
break;
|
||||
case LLAssetType::AT_GESTURE:
|
||||
LLFloaterReg::showInstance("preview_gesture", LLSD(item_id), take_focus);
|
||||
break;
|
||||
case LLAssetType::AT_SCRIPT:
|
||||
LLFloaterReg::showInstance("preview_script", LLSD(item_id), take_focus);
|
||||
break;
|
||||
|
|
@ -1146,6 +1155,7 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD&
|
|||
}
|
||||
break;
|
||||
case IM_GROUP_NOTICE:
|
||||
opener = new LLOpenTaskGroupOffer;
|
||||
send_auto_receive_response();
|
||||
break;
|
||||
case IM_TASK_INVENTORY_OFFERED:
|
||||
|
|
@ -4335,10 +4345,10 @@ void process_money_balance_reply( LLMessageSystem* msg, void** )
|
|||
|
||||
if (gStatusBar)
|
||||
{
|
||||
S32 old_balance = gStatusBar->getBalance();
|
||||
// S32 old_balance = gStatusBar->getBalance();
|
||||
|
||||
// This is an update, not the first transmission of balance
|
||||
if (old_balance != 0)
|
||||
/* if (old_balance != 0)
|
||||
{
|
||||
// this is actually an update
|
||||
if (balance > old_balance)
|
||||
|
|
@ -4350,7 +4360,7 @@ void process_money_balance_reply( LLMessageSystem* msg, void** )
|
|||
LLFirstUse::useBalanceDecrease(balance - old_balance);
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
gStatusBar->setBalance(balance);
|
||||
gStatusBar->setLandCredit(credit);
|
||||
gStatusBar->setLandCommitted(committed);
|
||||
|
|
@ -5360,8 +5370,24 @@ bool handle_lure_callback(const LLSD& notification, const LLSD& response)
|
|||
it != notification["payload"]["ids"].endArray();
|
||||
++it)
|
||||
{
|
||||
LLUUID target_id = it->asUUID();
|
||||
|
||||
msg->nextBlockFast(_PREHASH_TargetData);
|
||||
msg->addUUIDFast(_PREHASH_TargetID, it->asUUID());
|
||||
msg->addUUIDFast(_PREHASH_TargetID, target_id);
|
||||
|
||||
// Record the offer.
|
||||
{
|
||||
std::string target_name;
|
||||
gCacheName->getFullName(target_id, target_name);
|
||||
LLSD args;
|
||||
args["TO_NAME"] = target_name;
|
||||
|
||||
LLSD payload;
|
||||
payload["from_id"] = target_id;
|
||||
payload["SESSION_NAME"] = target_name;
|
||||
payload["SUPPRESS_TOAST"] = true;
|
||||
LLNotificationsUtil::add("TeleportOfferSent", args, payload);
|
||||
}
|
||||
}
|
||||
gAgent.sendReliableMessage();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
#include "llviewermediafocus.h"
|
||||
#include "llviewerparcelmediaautoplay.h"
|
||||
#include "llnotificationsutil.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llpluginclassmedia.h"
|
||||
#include "llviewertexture.h"
|
||||
|
||||
|
|
@ -242,7 +242,7 @@ void LLViewerParcelMedia::play(LLParcel* parcel)
|
|||
sMediaImpl->navigateTo(media_url, mime_type, true);
|
||||
}
|
||||
|
||||
LLFirstUse::useMedia();
|
||||
//LLFirstUse::useMedia();
|
||||
|
||||
LLViewerParcelMediaAutoPlay::playStarted();
|
||||
}
|
||||
|
|
@ -281,7 +281,7 @@ void LLViewerParcelMedia::start()
|
|||
}
|
||||
sMediaImpl->start();
|
||||
|
||||
LLFirstUse::useMedia();
|
||||
//LLFirstUse::useMedia();
|
||||
|
||||
LLViewerParcelMediaAutoPlay::playStarted();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@
|
|||
#include "llagent.h"
|
||||
#include "llviewerwindow.h"
|
||||
#include "llviewercontrol.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llfloaterbuyland.h"
|
||||
#include "llfloatergroups.h"
|
||||
#include "llfloaternearbymedia.h"
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@
|
|||
#include "lldriverparam.h"
|
||||
#include "lleditingmotion.h"
|
||||
#include "llemote.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "llheadrotmotion.h"
|
||||
#include "llhudeffecttrail.h"
|
||||
#include "llhudmanager.h"
|
||||
|
|
@ -5604,7 +5604,7 @@ void LLVOAvatar::sitOnObject(LLViewerObject *sit_object)
|
|||
if (isSelf())
|
||||
{
|
||||
// Might be first sit
|
||||
LLFirstUse::useSit();
|
||||
//LLFirstUse::useSit();
|
||||
|
||||
gAgent.setFlying(FALSE);
|
||||
gAgent.setThirdPersonHeadOffset(LLVector3::zero);
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@
|
|||
#include "llimview.h" // for LLIMMgr
|
||||
#include "llparcel.h"
|
||||
#include "llviewerparcelmgr.h"
|
||||
#include "llfirstuse.h"
|
||||
//#include "llfirstuse.h"
|
||||
#include "lltrans.h"
|
||||
#include "llviewerwindow.h"
|
||||
#include "llviewercamera.h"
|
||||
|
|
|
|||
|
|
@ -56,9 +56,12 @@
|
|||
<color
|
||||
name="Black_50"
|
||||
value="0 0 0 0.5" />
|
||||
<color
|
||||
name="FrogGreen"
|
||||
value="0.26 0.345 0.263 1" />
|
||||
<color
|
||||
name="Red"
|
||||
value="1 0 0 1" />
|
||||
value="0.729 0 0.121 1" />
|
||||
<color
|
||||
name="Blue"
|
||||
value="0 0 1 1" />
|
||||
|
|
@ -71,16 +74,19 @@
|
|||
<color
|
||||
name="Transparent"
|
||||
value="0 0 0 0" />
|
||||
<color
|
||||
name="Purple"
|
||||
value="1 0 1 1" />
|
||||
<!-- This color name makes potentially unused colors show up bright purple.
|
||||
Leave this here until all Unused? are removed below, otherwise
|
||||
the viewer generates many warnings on startup. -->
|
||||
<color
|
||||
name="Unused?"
|
||||
value="1 0 1 1" />
|
||||
value=".831 1 0 1" />
|
||||
|
||||
<!-- UI Definitions -->
|
||||
|
||||
<color
|
||||
<color
|
||||
name="AgentChatColor"
|
||||
reference="White" />
|
||||
<color
|
||||
|
|
@ -169,13 +175,13 @@
|
|||
reference="LtGray" />
|
||||
<color
|
||||
name="ChicletFlashColor"
|
||||
reference="0.114 0.65 0.1" />
|
||||
value="0.114 0.65 0.1" />
|
||||
<color
|
||||
name="ColorDropShadow"
|
||||
reference="Black_50" />
|
||||
<color
|
||||
name="ColorPaletteEntry01"
|
||||
value="0 0 0 1" />
|
||||
reference="Black" />
|
||||
<color
|
||||
name="ColorPaletteEntry02"
|
||||
value="0.5 0.5 0.5 1" />
|
||||
|
|
@ -217,34 +223,34 @@
|
|||
value="0.5 0.25 0 1" />
|
||||
<color
|
||||
name="ColorPaletteEntry15"
|
||||
value="1 1 1 1" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="ColorPaletteEntry16"
|
||||
value="1 1 1 1" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="ColorPaletteEntry17"
|
||||
value="1 1 1 1" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="ColorPaletteEntry18"
|
||||
value="0.75 0.75 0.75 1" />
|
||||
reference="LtGray" />
|
||||
<color
|
||||
name="ColorPaletteEntry19"
|
||||
value="1 0 0 1" />
|
||||
reference="Red" />
|
||||
<color
|
||||
name="ColorPaletteEntry20"
|
||||
reference=".5 .5 1 0" />
|
||||
<color
|
||||
name="ColorPaletteEntry21"
|
||||
value="0 1 0 1" />
|
||||
reference="Green" />
|
||||
<color
|
||||
name="ColorPaletteEntry22"
|
||||
value="0 1 1 1" />
|
||||
<color
|
||||
name="ColorPaletteEntry23"
|
||||
value="0 0 1 1" />
|
||||
reference="Blue" />
|
||||
<color
|
||||
name="ColorPaletteEntry24"
|
||||
value="1 0 1 1" />
|
||||
reference="Purple" />
|
||||
<color
|
||||
name="ColorPaletteEntry25"
|
||||
value="1 1 0.5 1" />
|
||||
|
|
@ -265,10 +271,10 @@
|
|||
value="1 0.5 0 1" />
|
||||
<color
|
||||
name="ColorPaletteEntry31"
|
||||
value="1 1 1 1" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="ColorPaletteEntry32"
|
||||
value="1 1 1 1" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="ConsoleBackground"
|
||||
reference="Black" />
|
||||
|
|
@ -325,7 +331,7 @@
|
|||
value="0.92 0.92 1 0.78" />
|
||||
<color
|
||||
name="GridlineColor"
|
||||
value="1 0 0 1" />
|
||||
reference="Red" />
|
||||
<color
|
||||
name="GridlineShadowColor"
|
||||
value="0 0 0 0.31" />
|
||||
|
|
@ -337,10 +343,10 @@
|
|||
value="0.3344 0.5456 0.5159 1" />
|
||||
<color
|
||||
name="GroupNotifyTextColor"
|
||||
reference="White"/>
|
||||
reference="White"/>
|
||||
<color
|
||||
name="GroupNotifyDimmedTextColor"
|
||||
reference="DkGray"/>
|
||||
reference="DkGray" />
|
||||
<color
|
||||
name="GroupOverTierColor"
|
||||
value="0.43 0.06 0.06 1" />
|
||||
|
|
@ -397,7 +403,7 @@
|
|||
reference="DkGray2" />
|
||||
<color
|
||||
name="InventoryFocusOutlineColor"
|
||||
reference="EmphasisColor" />
|
||||
reference="White_25" />
|
||||
<color
|
||||
name="InventoryItemSuffixColor"
|
||||
reference="White_25" />
|
||||
|
|
@ -460,7 +466,7 @@
|
|||
reference="DkGray" />
|
||||
<color
|
||||
name="MenuBarGodBgColor"
|
||||
reference="Green" />
|
||||
reference="FrogGreen" />
|
||||
<color
|
||||
name="MenuDefaultBgColor"
|
||||
reference="DkGray2" />
|
||||
|
|
@ -481,7 +487,7 @@
|
|||
reference="Black" />
|
||||
<color
|
||||
name="MenuNonProductionGodBgColor"
|
||||
value="0 0.5 0 1" />
|
||||
value="0.263 0.325 0.345 1" />
|
||||
<color
|
||||
name="MenuPopupBgColor"
|
||||
reference="DkGray2" />
|
||||
|
|
@ -508,7 +514,7 @@
|
|||
value="0 0 0 0.3" />
|
||||
<color
|
||||
name="NetMapGroupOwnAboveWater"
|
||||
value="1 0 1 1" />
|
||||
reference="Purple" />
|
||||
<color
|
||||
name="NetMapGroupOwnBelowWater"
|
||||
value="0.78 0 0.78 1" />
|
||||
|
|
@ -541,7 +547,7 @@
|
|||
reference="EmphasisColor" />
|
||||
<color
|
||||
name="OverdrivenColor"
|
||||
value="1 0 0 1" />
|
||||
reference="Red" />
|
||||
<color
|
||||
name="PanelDefaultBackgroundColor"
|
||||
reference="DkGray" />
|
||||
|
|
@ -640,10 +646,10 @@
|
|||
reference="Unused?" />
|
||||
<color
|
||||
name="SpeakingColor"
|
||||
value="0 1 0 1" />
|
||||
reference="FrogGreen" />
|
||||
<color
|
||||
name="SystemChatColor"
|
||||
reference="White" />
|
||||
reference="White" />
|
||||
<color
|
||||
name="TextBgFocusColor"
|
||||
reference="White" />
|
||||
|
|
@ -658,7 +664,7 @@
|
|||
reference="Black" />
|
||||
<color
|
||||
name="TextDefaultColor"
|
||||
value="Black" />
|
||||
reference="Black" />
|
||||
<color
|
||||
name="TextEmbeddedItemColor"
|
||||
value="0 0 0.5 1" />
|
||||
|
|
@ -709,7 +715,7 @@
|
|||
<color
|
||||
name="SysWellItemSelected"
|
||||
value="0.3 0.3 0.3 1.0" />
|
||||
<color
|
||||
<color
|
||||
name="ChatToastAgentNameColor"
|
||||
reference="EmphasisColor" />
|
||||
<color
|
||||
|
|
|
|||
|
|
@ -591,15 +591,15 @@ with the same filename but different name
|
|||
<texture name="Tool_Zoom" file_name="build/Tool_Zoom.png" preload="false" />
|
||||
|
||||
<texture name="Toolbar_Divider" file_name="containers/Toolbar_Divider.png" preload="false" />
|
||||
<texture name="Toolbar_Left_Off" file_name="containers/Toolbar_Left_Off.png" preload="false" />
|
||||
<texture name="Toolbar_Left_Press" file_name="containers/Toolbar_Left_Press.png" preload="false" />
|
||||
<texture name="Toolbar_Left_Selected" file_name="containers/Toolbar_Left_Selected.png" preload="false" />
|
||||
<texture name="Toolbar_Middle_Off" file_name="containers/Toolbar_Middle_Off.png" preload="false" />
|
||||
<texture name="Toolbar_Middle_Press" file_name="containers/Toolbar_Middle_Press.png" preload="false" />
|
||||
<texture name="Toolbar_Middle_Selected" file_name="containers/Toolbar_Middle_Selected.png" preload="false" />
|
||||
<texture name="Toolbar_Right_Off" file_name="containers/Toolbar_Right_Off.png" preload="false" />
|
||||
<texture name="Toolbar_Right_Press" file_name="containers/Toolbar_Right_Press.png" preload="false" />
|
||||
<texture name="Toolbar_Right_Selected" file_name="containers/Toolbar_Right_Selected.png" preload="false" />
|
||||
<texture name="Toolbar_Left_Off" file_name="containers/Toolbar_Left_Off.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Left_Press" file_name="containers/Toolbar_Left_Press.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Left_Selected" file_name="containers/Toolbar_Left_Selected.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Middle_Off" file_name="containers/Toolbar_Middle_Off.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Middle_Press" file_name="containers/Toolbar_Middle_Press.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Middle_Selected" file_name="containers/Toolbar_Middle_Selected.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
|
||||
<texture name="Toolbar_Right_Off" file_name="containers/Toolbar_Right_Off.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
|
||||
<texture name="Toolbar_Right_Press" file_name="containers/Toolbar_Right_Press.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
|
||||
<texture name="Toolbar_Right_Selected" file_name="containers/Toolbar_Right_Selected.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
|
||||
|
||||
<texture name="Tooltip" file_name="widgets/Tooltip.png" preload="true" scale.left="2" scale.top="16" scale.right="100" scale.bottom="3" />
|
||||
|
||||
|
|
@ -665,10 +665,15 @@ with the same filename but different name
|
|||
<texture name="icn_voice-groupfocus.tga" />
|
||||
<texture name="icn_voice-pvtfocus.tga" />
|
||||
|
||||
<texture name="jump_left_out.tga" />
|
||||
<texture name="jump_left_in.tga" />
|
||||
<texture name="jump_right_out.tga" />
|
||||
<texture name="jump_right_in.tga" />
|
||||
<texture name="jump_left_out.tga" file_name="widgets/jump_left_out.png" />
|
||||
<texture name="jump_left_in.tga" file_name="widgets/jump_left_in.png" />
|
||||
<texture name="jump_right_out.tga" file_name="widgets/jump_right_out.png" />
|
||||
<texture name="jump_right_in.tga" file_name="widgets/jump_right_in.png" />
|
||||
|
||||
<texture name="scrollbutton_left_out_blue.tga" file_name="widgets/ScrollArrow_Left_Opaque.png" />
|
||||
<texture name="scrollbutton_left_in_blue.tga" file_name="widgets/ScrollArrow_Left_Over_Opaque.png" />
|
||||
<texture name="scrollbutton_right_out_blue.tga" file_name="widgets/ScrollArrow_Right_Opaque.png" />
|
||||
<texture name="scrollbutton_right_in_blue.tga" file_name="widgets/ScrollArrow_Right_Over_Opaque.png" />
|
||||
|
||||
<texture name="up_arrow.tga" file_name="up_arrow.png" />
|
||||
<texture name="down_arrow.tga" file_name="down_arrow.png" />
|
||||
|
|
@ -690,7 +695,7 @@ with the same filename but different name
|
|||
<texture name="button_anim_play.tga" />
|
||||
<texture name="button_anim_play_selected.tga" />
|
||||
<texture name="crosshairs.tga" />
|
||||
<texture name="direction_arrow.tga" />
|
||||
<texture name="direction_arrow.tga" file_name="world/BeaconArrow.png" />
|
||||
|
||||
<texture name="icon_auction.tga" />
|
||||
<texture name="icon_avatar_offline.tga" />
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 311 B |
|
After Width: | Height: | Size: 330 B |
|
After Width: | Height: | Size: 311 B |
|
After Width: | Height: | Size: 324 B |
|
After Width: | Height: | Size: 342 B |
|
After Width: | Height: | Size: 321 B |
|
After Width: | Height: | Size: 320 B |
|
After Width: | Height: | Size: 315 B |
|
After Width: | Height: | Size: 1.9 KiB |
|
|
@ -209,7 +209,7 @@
|
|||
</text>
|
||||
<button
|
||||
follows="right"
|
||||
height="16"
|
||||
height="23"
|
||||
image_pressed="Info_Press"
|
||||
image_unselected="Info_Over"
|
||||
left_pad="3"
|
||||
|
|
@ -218,7 +218,7 @@
|
|||
width="16" />
|
||||
<!-- <button
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
label="Profile"
|
||||
layout="topleft"
|
||||
left_pad="4"
|
||||
|
|
@ -248,7 +248,7 @@
|
|||
Leyla Linden </text>
|
||||
<button
|
||||
follows="right"
|
||||
height="16"
|
||||
height="23"
|
||||
image_pressed="Info_Press"
|
||||
image_unselected="Info_Over"
|
||||
left_pad="3"
|
||||
|
|
@ -263,10 +263,11 @@ Leyla Linden </text>
|
|||
left_pad="4"
|
||||
right="-10"
|
||||
name="Set..."
|
||||
width="50" />
|
||||
width="50"
|
||||
top_delta="-2"/>
|
||||
<check_box
|
||||
enabled="false"
|
||||
height="23"
|
||||
height="16"
|
||||
label="Allow Deed to Group"
|
||||
layout="topleft"
|
||||
left="108"
|
||||
|
|
@ -284,7 +285,7 @@ Leyla Linden </text>
|
|||
right="-10"
|
||||
name="Deed..."
|
||||
tool_tip="You may only deed land if you are an officer in the selected group."
|
||||
top_delta="0"
|
||||
top_delta="-2"
|
||||
width="90" />
|
||||
<check_box
|
||||
enabled="false"
|
||||
|
|
@ -294,7 +295,8 @@ Leyla Linden </text>
|
|||
left="108"
|
||||
name="check contrib"
|
||||
tool_tip="When the land is deeded to the group, the former owner contributes enough land allocation to support it."
|
||||
width="199" />
|
||||
width="199"
|
||||
top_pad="0"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
@ -335,7 +337,7 @@ Leyla Linden </text>
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="SalePending"
|
||||
top_pad="6"
|
||||
top_pad="5"
|
||||
width="324" />
|
||||
<button
|
||||
follows="left|top"
|
||||
|
|
@ -345,7 +347,8 @@ Leyla Linden </text>
|
|||
left_pad="5"
|
||||
right="-10"
|
||||
name="Sell Land..."
|
||||
width="145" />
|
||||
width="145"
|
||||
top_delta="-25"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
@ -354,7 +357,7 @@ Leyla Linden </text>
|
|||
layout="topleft"
|
||||
left_delta="-199"
|
||||
name="For sale to"
|
||||
top_delta="2"
|
||||
top_delta="20"
|
||||
width="186">
|
||||
For sale to: [BUYER]
|
||||
</text>
|
||||
|
|
@ -366,7 +369,7 @@ Leyla Linden </text>
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="Sell with landowners objects in parcel."
|
||||
top_pad="0"
|
||||
top_pad="-3"
|
||||
width="186">
|
||||
Objects included in sale
|
||||
</text>
|
||||
|
|
@ -391,7 +394,7 @@ Leyla Linden </text>
|
|||
right="-10"
|
||||
name="Cancel Land Sale"
|
||||
left_pad="5"
|
||||
top_pad="-10"
|
||||
top_pad="-25"
|
||||
width="145" />
|
||||
<text
|
||||
type="string"
|
||||
|
|
@ -522,7 +525,7 @@ Leyla Linden </text>
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="Reclaim Land..."
|
||||
top_delta="-48"
|
||||
top_delta="-61"
|
||||
width="180" />
|
||||
<button
|
||||
enabled="false"
|
||||
|
|
@ -810,7 +813,7 @@ Leyla Linden </text>
|
|||
follows="left|top"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left_delta="152"
|
||||
left_delta="190"
|
||||
name="objects_available"
|
||||
top_delta="0"
|
||||
width="260">
|
||||
|
|
@ -834,7 +837,7 @@ Leyla Linden </text>
|
|||
follows="left|top"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left_delta="200"
|
||||
left_delta="190"
|
||||
name="object_contrib_text"
|
||||
top_delta="0"
|
||||
width="212">
|
||||
|
|
@ -858,7 +861,7 @@ Leyla Linden </text>
|
|||
follows="left|top"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left_delta="200"
|
||||
left_delta="190"
|
||||
name="total_objects_text"
|
||||
top_delta="0"
|
||||
width="48">
|
||||
|
|
@ -868,7 +871,7 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="28"
|
||||
name="Owned by parcel owner:"
|
||||
|
|
@ -880,9 +883,9 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_delta="176"
|
||||
left_delta="172"
|
||||
name="owner_objects_text"
|
||||
top_delta="0"
|
||||
width="48">
|
||||
|
|
@ -892,33 +895,35 @@ Leyla Linden </text>
|
|||
bottom="100"
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Show"
|
||||
label_selected="Show"
|
||||
layout="topleft"
|
||||
name="ShowOwner"
|
||||
right="-140"
|
||||
width="60" />
|
||||
width="60"
|
||||
top_delta="-6"/>
|
||||
<button
|
||||
bottom="100"
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Return"
|
||||
layout="topleft"
|
||||
name="ReturnOwner..."
|
||||
right="-10"
|
||||
tool_tip="Return objects to their owners."
|
||||
width="119" />
|
||||
width="119"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="28"
|
||||
name="Set to group:"
|
||||
top="104"
|
||||
top_pad="5"
|
||||
width="176">
|
||||
Set to group:
|
||||
</text>
|
||||
|
|
@ -926,9 +931,9 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_delta="176"
|
||||
left_delta="172"
|
||||
name="group_objects_text"
|
||||
top_delta="0"
|
||||
width="48">
|
||||
|
|
@ -939,32 +944,34 @@ Leyla Linden </text>
|
|||
enabled="false"
|
||||
follows="left|top"
|
||||
label="Show"
|
||||
height="20"
|
||||
height="23"
|
||||
label_selected="Show"
|
||||
layout="topleft"
|
||||
name="ShowGroup"
|
||||
right="-140"
|
||||
width="60" />
|
||||
width="60"
|
||||
top_delta="-6"/>
|
||||
<button
|
||||
bottom="120"
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Return"
|
||||
layout="topleft"
|
||||
name="ReturnGroup..."
|
||||
right="-10"
|
||||
tool_tip="Return objects to their owners."
|
||||
width="119" />
|
||||
width="119"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="28"
|
||||
name="Owned by others:"
|
||||
top="124"
|
||||
top_pad="5"
|
||||
width="176">
|
||||
Owned by others:
|
||||
</text>
|
||||
|
|
@ -972,9 +979,9 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_delta="176"
|
||||
left_delta="172"
|
||||
name="other_objects_text"
|
||||
top_delta="0"
|
||||
width="48">
|
||||
|
|
@ -984,33 +991,35 @@ Leyla Linden </text>
|
|||
bottom="140"
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Show"
|
||||
label_selected="Show"
|
||||
layout="topleft"
|
||||
name="ShowOther"
|
||||
right="-140"
|
||||
width="60" />
|
||||
width="60"
|
||||
top_delta="-6"/>
|
||||
<button
|
||||
bottom="140"
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Return"
|
||||
layout="topleft"
|
||||
name="ReturnOther..."
|
||||
right="-10"
|
||||
tool_tip="Return objects to their owners."
|
||||
width="119" />
|
||||
width="119"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="28"
|
||||
name="Selected / sat upon:"
|
||||
top="144"
|
||||
top_pad="5"
|
||||
width="176">
|
||||
Selected / sat upon:
|
||||
</text>
|
||||
|
|
@ -1018,9 +1027,9 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_delta="176"
|
||||
left_delta="172"
|
||||
name="selected_objects_text"
|
||||
top_delta="0"
|
||||
width="48">
|
||||
|
|
@ -1030,51 +1039,53 @@ Leyla Linden </text>
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="Autoreturn"
|
||||
top="164"
|
||||
top_pad="0"
|
||||
width="294">
|
||||
Autoreturn other Residents' objects (minutes, 0 for off):
|
||||
Auto return other Residents' objects (minutes, 0 for off):
|
||||
</text>
|
||||
<line_editor
|
||||
border_style="line"
|
||||
border_thickness="1"
|
||||
bottom="180"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
max_length="6"
|
||||
name="clean other time"
|
||||
right="-50"
|
||||
width="56" />
|
||||
right="-72"
|
||||
width="56"
|
||||
top_delta="-6"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="Object Owners:"
|
||||
top="184"
|
||||
top_pad="10"
|
||||
width="104">
|
||||
Object Owners:
|
||||
</text>
|
||||
<button
|
||||
follows="top|right"
|
||||
height="20"
|
||||
height="23"
|
||||
image_overlay="Refresh_Off"
|
||||
layout="topleft"
|
||||
name="Refresh List"
|
||||
left_pad="5"
|
||||
right="-183"
|
||||
tool_tip="Refresh Object List"
|
||||
width="20" />
|
||||
width="20"
|
||||
top_delta="-6"/>
|
||||
<button
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
label="Return Objects"
|
||||
layout="topleft"
|
||||
left_pad="6"
|
||||
|
|
@ -1086,7 +1097,7 @@ Leyla Linden </text>
|
|||
column_padding="0"
|
||||
draw_heading="true"
|
||||
follows="all"
|
||||
height="190"
|
||||
height="180"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="owner list"
|
||||
|
|
@ -1313,7 +1324,7 @@ Only large parcels can be listed in search.
|
|||
width="430" />
|
||||
<combo_box
|
||||
enabled="false"
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="30"
|
||||
name="land category with adult"
|
||||
|
|
@ -1374,7 +1385,7 @@ Only large parcels can be listed in search.
|
|||
</combo_box>
|
||||
<combo_box
|
||||
enabled="false"
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="30"
|
||||
name="land category"
|
||||
|
|
@ -1463,7 +1474,7 @@ Only large parcels can be listed in search.
|
|||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="30"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left="220"
|
||||
top="180"
|
||||
|
|
@ -1553,12 +1564,13 @@ Only large parcels can be listed in search.
|
|||
Type:
|
||||
</text>
|
||||
<combo_box
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_pad="0"
|
||||
name="media type"
|
||||
tool_tip="Specify if the URL is a movie, web page, or other media"
|
||||
width="120" />
|
||||
width="120"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
follows="left|top"
|
||||
height="16"
|
||||
|
|
@ -1574,27 +1586,29 @@ Only large parcels can be listed in search.
|
|||
layout="topleft"
|
||||
left="10"
|
||||
name="at URL:"
|
||||
width="100">
|
||||
width="100"
|
||||
top_pad="10">
|
||||
Home Page:
|
||||
</text>
|
||||
<line_editor
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_pad="0"
|
||||
max_length="255"
|
||||
name="media_url"
|
||||
select_on_focus="true"
|
||||
width="300" />
|
||||
width="300"
|
||||
top_delta="0"/>
|
||||
<button
|
||||
follows="right|top"
|
||||
height="22"
|
||||
height="23"
|
||||
label="Set"
|
||||
layout="topleft"
|
||||
left_pad="5"
|
||||
right="-10"
|
||||
name="set_media_url"
|
||||
width="50" />
|
||||
width="50"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
|
|
@ -1603,18 +1617,20 @@ Only large parcels can be listed in search.
|
|||
layout="topleft"
|
||||
left="10"
|
||||
name="CurrentURL:"
|
||||
width="100">
|
||||
width="100"
|
||||
top_pad="10">
|
||||
Current Page:
|
||||
</text>
|
||||
<button
|
||||
follows="top|right"
|
||||
height="20"
|
||||
image_overlay="Refresh_Off"
|
||||
layout="topleft"
|
||||
<button
|
||||
follows="top|right"
|
||||
height="23"
|
||||
image_overlay="Refresh_Off"
|
||||
layout="topleft"
|
||||
name="reset_media_url"
|
||||
left_pad="0"
|
||||
tool_tip="Refresh URL"
|
||||
width="20" />
|
||||
left_pad="0"
|
||||
tool_tip="Refresh URL"
|
||||
width="23"
|
||||
top_delta="0"/>
|
||||
<text
|
||||
follows="left|top"
|
||||
height="16"
|
||||
|
|
@ -1623,22 +1639,25 @@ Only large parcels can be listed in search.
|
|||
name="current_url"
|
||||
width="300" />
|
||||
<check_box
|
||||
follows="top|left"
|
||||
height="16"
|
||||
label="Hide URL"
|
||||
layout="topleft"
|
||||
left="110"
|
||||
left_delta="-36"
|
||||
name="hide_media_url"
|
||||
tool_tip="Checking this option will hide the media url to any non-authorized viewers of this parcel information. Note this is not available for HTML types."
|
||||
width="200" />
|
||||
width="50"
|
||||
top_pad="5"/>
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
height="16"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="10"
|
||||
name="Description:"
|
||||
width="364">
|
||||
width="364"
|
||||
top_pad="10">
|
||||
Description:
|
||||
</text>
|
||||
<line_editor
|
||||
|
|
@ -1650,7 +1669,7 @@ Only large parcels can be listed in search.
|
|||
name="url_description"
|
||||
select_on_focus="true"
|
||||
tool_tip="Text displayed next to play/load button"
|
||||
top_delta="10"
|
||||
top_delta="0"
|
||||
width="300" />
|
||||
<text
|
||||
type="string"
|
||||
|
|
@ -1674,7 +1693,7 @@ Only large parcels can be listed in search.
|
|||
left="110"
|
||||
name="media texture"
|
||||
tool_tip="Click to choose a picture"
|
||||
top_delta="10"
|
||||
top_delta="0"
|
||||
width="64" />
|
||||
<text
|
||||
type="string"
|
||||
|
|
@ -1685,16 +1704,17 @@ Only large parcels can be listed in search.
|
|||
left_pad="8"
|
||||
name="replace_texture_help"
|
||||
width="300"
|
||||
word_wrap="true">
|
||||
word_wrap="true"
|
||||
top_delta="0">
|
||||
Objects using this texture will show the movie or web page after you click the play arrow. Select the thumbnail to choose a different texture.
|
||||
</text>
|
||||
<check_box
|
||||
height="16"
|
||||
label="Auto scale"
|
||||
layout="topleft"
|
||||
left="110"
|
||||
left="107"
|
||||
name="media_auto_scale"
|
||||
top_pad="0"
|
||||
top_pad="-10"
|
||||
tool_tip="Checking this option will scale the content for this parcel automatically. It may be slightly slower and lower quality visually but no other texture scaling or alignment will be required."
|
||||
width="200" />
|
||||
<text
|
||||
|
|
@ -1706,7 +1726,8 @@ Only large parcels can be listed in search.
|
|||
left="10"
|
||||
name="media_size"
|
||||
tool_tip="Size to render Web media, leave 0 for default."
|
||||
width="100">
|
||||
width="100"
|
||||
top_pad="10">
|
||||
Size:
|
||||
</text>
|
||||
<spinner
|
||||
|
|
@ -1714,7 +1735,7 @@ Only large parcels can be listed in search.
|
|||
enabled="false"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
height="20"
|
||||
height="23"
|
||||
increment="1"
|
||||
initial_value="0"
|
||||
layout="topleft"
|
||||
|
|
@ -1729,7 +1750,7 @@ Only large parcels can be listed in search.
|
|||
enabled="false"
|
||||
follows="left|top"
|
||||
halign="right"
|
||||
height="20"
|
||||
height="23"
|
||||
increment="1"
|
||||
initial_value="0"
|
||||
layout="topleft"
|
||||
|
|
@ -1759,7 +1780,7 @@ Only large parcels can be listed in search.
|
|||
layout="topleft"
|
||||
left="10"
|
||||
name="Options:"
|
||||
top_pad="8"
|
||||
top_pad="10"
|
||||
width="100">
|
||||
Options:
|
||||
</text>
|
||||
|
|
@ -1767,10 +1788,10 @@ Only large parcels can be listed in search.
|
|||
height="16"
|
||||
label="Loop"
|
||||
layout="topleft"
|
||||
left_pad="0"
|
||||
left_pad="-3"
|
||||
name="media_loop"
|
||||
tool_tip="Play media in a loop. When the media has finished playing, it will restart from the beginning."
|
||||
top_delta="0"
|
||||
top_delta="-1"
|
||||
width="200" />
|
||||
</panel>
|
||||
<panel
|
||||
|
|
@ -1796,12 +1817,12 @@ Only large parcels can be listed in search.
|
|||
</text>
|
||||
<line_editor
|
||||
follows="left|top"
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left="100"
|
||||
max_length="255"
|
||||
name="music_url"
|
||||
top_pad="0"
|
||||
top_delta="0"
|
||||
right="-15"
|
||||
select_on_focus="true" />
|
||||
<text
|
||||
|
|
@ -1941,7 +1962,7 @@ Only large parcels can be listed in search.
|
|||
width="278" />
|
||||
<check_box
|
||||
enabled="false"
|
||||
height="22"
|
||||
height="16"
|
||||
label="Sell passes to:"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
|
|
@ -1950,7 +1971,7 @@ Only large parcels can be listed in search.
|
|||
top_pad="4"
|
||||
width="120" />
|
||||
<combo_box
|
||||
height="20"
|
||||
height="23"
|
||||
layout="topleft"
|
||||
left_pad="22"
|
||||
name="pass_combo"
|
||||
|
|
@ -1968,7 +1989,7 @@ Only large parcels can be listed in search.
|
|||
<spinner
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="22"
|
||||
height="23"
|
||||
increment="1"
|
||||
initial_value="10"
|
||||
label="Price in L$:"
|
||||
|
|
@ -1983,7 +2004,7 @@ Only large parcels can be listed in search.
|
|||
<spinner
|
||||
enabled="false"
|
||||
follows="left|top"
|
||||
height="22"
|
||||
height="23"
|
||||
increment="0.25"
|
||||
initial_value="1"
|
||||
label="Hours of access:"
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
name="im_box_tab_container"
|
||||
tab_position="bottom"
|
||||
tab_width="80"
|
||||
tab_height="16"
|
||||
top="0"
|
||||
width="390" />
|
||||
<icon
|
||||
|
|
|
|||
|
|
@ -0,0 +1,59 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<floater
|
||||
legacy_header_height="18"
|
||||
border="true"
|
||||
can_close="false"
|
||||
can_minimize="false"
|
||||
height="100"
|
||||
layout="topleft"
|
||||
name="modal container"
|
||||
width="240">
|
||||
<button
|
||||
height="20"
|
||||
label="Save"
|
||||
label_selected="Save"
|
||||
layout="topleft"
|
||||
left="20"
|
||||
name="Save"
|
||||
top="70"
|
||||
width="82" />
|
||||
<button
|
||||
height="20"
|
||||
label="Cancel"
|
||||
label_selected="Cancel"
|
||||
layout="topleft"
|
||||
left_pad="36"
|
||||
name="Cancel"
|
||||
top_delta="0"
|
||||
width="82" />
|
||||
<text
|
||||
type="string"
|
||||
length="1"
|
||||
follows="left|top"
|
||||
font="SansSerif"
|
||||
height="16"
|
||||
layout="topleft"
|
||||
left="20"
|
||||
name="Save item as:"
|
||||
top="10"
|
||||
width="200">
|
||||
Save outfit as:
|
||||
</text>
|
||||
<line_editor
|
||||
type="string"
|
||||
length="1"
|
||||
border_style="line"
|
||||
border_thickness="1"
|
||||
follows="left|top"
|
||||
font="SansSerif"
|
||||
handle_edit_keys_directly="true"
|
||||
height="20"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
max_length="63"
|
||||
name="name ed"
|
||||
top_pad="4"
|
||||
width="200">
|
||||
[DESC]
|
||||
</line_editor>
|
||||
</floater>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
layout="topleft"
|
||||
name="copy_gesture">
|
||||
<on_click
|
||||
function="Gesture.Action.CopyPast"
|
||||
function="Gesture.Action.CopyPaste"
|
||||
parameter="copy_gesture" />
|
||||
<on_enable
|
||||
function="Gesture.EnableAction"
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
layout="topleft"
|
||||
name="paste">
|
||||
<on_click
|
||||
function="Gesture.Action.CopyPast"
|
||||
function="Gesture.Action.CopyPaste"
|
||||
parameter="paste" />
|
||||
<on_enable
|
||||
function="Gesture.EnableAction"
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
layout="topleft"
|
||||
name="copy_uuid">
|
||||
<on_click
|
||||
function="Gesture.Action.CopyPast"
|
||||
function="Gesture.Action.CopyPaste"
|
||||
parameter="copy_uuid" />
|
||||
<on_enable
|
||||
function="Gesture.EnableAction"
|
||||
|
|
|
|||
|
|
@ -811,6 +811,7 @@ Please select a proposal to view.
|
|||
Please select a history item to view.
|
||||
</notification>
|
||||
|
||||
<!--
|
||||
<notification
|
||||
icon="alertmodal.tga"
|
||||
name="ResetShowNextTimeDialogs"
|
||||
|
|
@ -832,6 +833,7 @@ Would you like to disable all popups which can be skipped?
|
|||
notext="Cancel"
|
||||
yestext="OK"/>
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="alertmodal.tga"
|
||||
|
|
@ -5368,6 +5370,7 @@ Grant this request?
|
|||
</form>
|
||||
</notification>
|
||||
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstBalanceIncrease"
|
||||
|
|
@ -5383,6 +5386,7 @@ Your L$ balance is shown in the upper-right.
|
|||
You just paid L$[AMOUNT].
|
||||
Your L$ balance is shown in the upper-right.
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
|
|
@ -5394,6 +5398,8 @@ Your L$ balance will be updated when processing completes. If processing takes m
|
|||
|
||||
The status of your payment can be checked on your Transaction History page on your [http://secondlife.com/account/ Dashboard]
|
||||
</notification>
|
||||
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstSit"
|
||||
|
|
@ -5418,8 +5424,9 @@ Use the controls on the right to find things and display different backgrounds.
|
|||
type="notify">
|
||||
You have opened the Build Tools. Every object you see around you was created using these tools.
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstLeftClickNoHit"
|
||||
|
|
@ -5428,7 +5435,7 @@ You have opened the Build Tools. Every object you see around you was created usi
|
|||
If the mouse pointer changes to a hand, you can interact with the object.
|
||||
Right-click always shows a menu of things you can do.
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstTeleport"
|
||||
|
|
@ -5436,6 +5443,8 @@ You have opened the Build Tools. Every object you see around you was created usi
|
|||
You can only teleport to certain areas in this region. The arrow points to your specific destination. Click the arrow to dismiss it.
|
||||
</notification>
|
||||
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstOverrideKeys"
|
||||
|
|
@ -5446,6 +5455,7 @@ Some objects (like guns) require you to go into mouselook to use them.
|
|||
Press 'M' to do this.
|
||||
</notification>
|
||||
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstAppearance"
|
||||
|
|
@ -5465,6 +5475,7 @@ This is your Inventory, which contains items you own.
|
|||
* To rez something inworld, drag it onto the ground.
|
||||
* To read a notecard, double-click it.
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
|
|
@ -5475,6 +5486,7 @@ This is a sandbox area, and is meant to help Residents learn how to build.
|
|||
Things you build here will be deleted after you leave, so don't forget to right-click and choose 'Take' to move your creation to your Inventory.
|
||||
</notification>
|
||||
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstFlexible"
|
||||
|
|
@ -5500,13 +5512,16 @@ To toggle this menu,
|
|||
type="notify">
|
||||
You are editing a Sculpted prim. Sculpties require a special texture to define their shape.
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<!--notification
|
||||
<!--
|
||||
<notification
|
||||
icon="notify.tga"
|
||||
name="FirstMedia"
|
||||
type="notify">
|
||||
You have begun playing media. Media can set to play automatically in the preferences window under Audio / Video. Note that this can be a security risk for media sites you do not trust.
|
||||
</notification-->
|
||||
</notification>
|
||||
-->
|
||||
|
||||
<notification
|
||||
icon="notifytip.tga"
|
||||
|
|
|
|||
|
|
@ -382,6 +382,17 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well
|
|||
width="40"
|
||||
min_width="40"
|
||||
user_resize="false">
|
||||
<icon
|
||||
auto_resize="false"
|
||||
color="0 0 0 0"
|
||||
follows="left|right"
|
||||
height="10"
|
||||
image_name="spacer24.tga"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
min_width="4"
|
||||
top="0"
|
||||
width="5" />
|
||||
<chiclet_notification
|
||||
flash_period="0.25"
|
||||
follows="right"
|
||||
|
|
@ -414,6 +425,17 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well
|
|||
function="Button.SetDockableFloaterToggle"
|
||||
parameter="notification_well_window" />
|
||||
</button>
|
||||
<icon
|
||||
auto_resize="false"
|
||||
color="0 0 0 0"
|
||||
follows="left|right"
|
||||
height="10"
|
||||
image_name="spacer24.tga"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
min_width="4"
|
||||
top="0"
|
||||
width="5" />
|
||||
</chiclet_notification>
|
||||
</layout_panel>
|
||||
</layout_stack>
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
left="0"
|
||||
min_height="350"
|
||||
name="panel_classified_info"
|
||||
help_topic="profile_classified_info"
|
||||
top="0"
|
||||
width="333">
|
||||
<panel.string
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
left="0"
|
||||
min_height="350"
|
||||
name="panel_edit_classified"
|
||||
help_topic="profile_edit_classified"
|
||||
top="0"
|
||||
width="333">
|
||||
<panel.string
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
left="0"
|
||||
min_height="350"
|
||||
name="panel_edit_pick"
|
||||
help_topic="profile_edit_pick"
|
||||
top="0"
|
||||
width="333">
|
||||
<button
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ halign="center"
|
|||
follows="all"
|
||||
height="295"
|
||||
label="MY INVENTORY"
|
||||
help_topic="my_inventory_tab"
|
||||
layout="topleft"
|
||||
left="0"
|
||||
name="All Items"
|
||||
|
|
@ -51,6 +52,7 @@ halign="center"
|
|||
follows="all"
|
||||
height="295"
|
||||
label="RECENT"
|
||||
help_topic="recent_inventory_tab"
|
||||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="Recent Items"
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
left="0"
|
||||
min_height="350"
|
||||
name="panel_pick_info"
|
||||
help_topic="profile_pick_info"
|
||||
top="0"
|
||||
width="333">
|
||||
<button
|
||||
|
|
|
|||
|
|
@ -124,7 +124,6 @@
|
|||
height="25"
|
||||
top_pad="10"
|
||||
name="buttons_cucks"
|
||||
help_topic="picks_button_tab"
|
||||
width="313">
|
||||
<button
|
||||
enabled="false"
|
||||
|
|
|
|||
|
|
@ -31,7 +31,6 @@
|
|||
width="300" />
|
||||
<check_box
|
||||
control_name="ChatOnlineNotification"
|
||||
enabled="false"
|
||||
height="16"
|
||||
label="When my friends log out or in"
|
||||
layout="topleft"
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
follows="all"
|
||||
height="570"
|
||||
min_height="350"
|
||||
label="home_tab"
|
||||
help_topic="sidetray_home"
|
||||
layout="topleft"
|
||||
top="0"
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@
|
|||
<panel
|
||||
height="25"
|
||||
layout="bottomright"
|
||||
help_topic="item_button_tab"
|
||||
name="button_panel"
|
||||
left="5"
|
||||
bottom="5"
|
||||
|
|
|
|||
|
|
@ -401,7 +401,6 @@ top_pad="10"
|
|||
<panel
|
||||
height="30"
|
||||
layout="bottomright"
|
||||
help_topic="button_tab"
|
||||
name="button_panel"
|
||||
left="5"
|
||||
bottom="2"
|
||||
|
|
@ -414,4 +413,4 @@ top_pad="10"
|
|||
right="-1"
|
||||
width="100" />
|
||||
</panel>
|
||||
</panel>
|
||||
</panel>
|
||||
|
|
|
|||
|
|
@ -518,7 +518,6 @@
|
|||
<panel
|
||||
height="25"
|
||||
layout="bottomright"
|
||||
help_topic="button_tab"
|
||||
name="button_panel"
|
||||
left="5"
|
||||
bottom="5"
|
||||
|
|
@ -551,4 +550,4 @@
|
|||
top="0"
|
||||
width="100" />
|
||||
</panel>
|
||||
</panel>
|
||||
</panel>
|
||||
|
|
|
|||
|
|
@ -83,6 +83,9 @@ class LLAgent
|
|||
public:
|
||||
LLAgent() {}
|
||||
~LLAgent() {}
|
||||
#ifdef __GNUC__
|
||||
__attribute__ ((noinline))
|
||||
#endif
|
||||
BOOL isGodlike() const { return FALSE; }
|
||||
private:
|
||||
int dummy;
|
||||
|
|
|
|||