Updated pick panel code, removed dead stuff including xmls.
This commit is contained in:
@@ -1214,7 +1214,7 @@ void LLPanelAvatarPicks::processProperties(void* data, EAvatarProcessorType type
|
||||
for(LLAvatarPicks::picks_list_t::iterator it = picks->picks_list.begin();
|
||||
it != picks->picks_list.end(); ++it)
|
||||
{
|
||||
LLPanelPick* panel_pick = new LLPanelPick(FALSE);
|
||||
LLPanelPick* panel_pick = new LLPanelPick();
|
||||
panel_pick->setPickID(it->first, mAvatarID);
|
||||
|
||||
// This will request data from the server when the pick is first
|
||||
@@ -1259,7 +1259,7 @@ void LLPanelAvatarPicks::onClickNew(void* data)
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
LLPanelAvatarPicks* self = (LLPanelAvatarPicks*)data;
|
||||
LLPanelPick* panel_pick = new LLPanelPick(FALSE);
|
||||
LLPanelPick* panel_pick = new LLPanelPick();
|
||||
LLTabContainer* tabs = self->getChild<LLTabContainer>("picks tab");
|
||||
|
||||
panel_pick->initNewPick();
|
||||
@@ -1275,7 +1275,7 @@ void LLPanelAvatarPicks::onClickNew(void* data)
|
||||
void LLPanelAvatarPicks::onClickImport(void* data)
|
||||
{
|
||||
LLPanelAvatarPicks* self = (LLPanelAvatarPicks*)data;
|
||||
self->mPanelPick = new LLPanelPick(FALSE);
|
||||
self->mPanelPick = new LLPanelPick();
|
||||
self->mPanelPick->importNewPick(&LLPanelAvatarPicks::onClickImport_continued, data);
|
||||
}
|
||||
|
||||
|
||||
@@ -73,9 +73,8 @@
|
||||
//static
|
||||
std::list<LLPanelPick*> LLPanelPick::sAllPanels;
|
||||
|
||||
LLPanelPick::LLPanelPick(BOOL top_pick)
|
||||
LLPanelPick::LLPanelPick()
|
||||
: LLPanel(std::string("Top Picks Panel")),
|
||||
mTopPick(top_pick),
|
||||
mPickID(),
|
||||
mCreatorID(),
|
||||
mParcelID(),
|
||||
@@ -86,26 +85,12 @@ LLPanelPick::LLPanelPick(BOOL top_pick)
|
||||
mNameEditor(NULL),
|
||||
mDescEditor(NULL),
|
||||
mLocationEditor(NULL),
|
||||
mTeleportBtn(NULL),
|
||||
mMapBtn(NULL),
|
||||
//mLandmarkBtn(NULL),
|
||||
mSortOrderText(NULL),
|
||||
mSortOrderEditor(NULL),
|
||||
mEnabledCheck(NULL),
|
||||
mSetBtn(NULL),
|
||||
mImporting(0)
|
||||
{
|
||||
sAllPanels.push_back(this);
|
||||
|
||||
std::string pick_def_file;
|
||||
if (top_pick)
|
||||
{
|
||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_top_pick.xml");
|
||||
}
|
||||
else
|
||||
{
|
||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_avatar_pick.xml");
|
||||
}
|
||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_avatar_pick.xml");
|
||||
}
|
||||
|
||||
|
||||
@@ -142,83 +127,52 @@ void LLPanelPick::reset()
|
||||
BOOL LLPanelPick::postBuild()
|
||||
{
|
||||
mSnapshotCtrl = getChild<LLTextureCtrl>("snapshot_ctrl");
|
||||
mSnapshotCtrl->setCommitCallback(onCommitAny);
|
||||
mSnapshotCtrl->setCallbackUserData(this);
|
||||
mSnapshotCtrl->setCommitCallback(boost::bind(&LLPanelPick::onCommitAny, this));
|
||||
|
||||
mNameEditor = getChild<LLLineEditor>("given_name_editor");
|
||||
mNameEditor->setCommitOnFocusLost(TRUE);
|
||||
mNameEditor->setCommitCallback(onCommitAny);
|
||||
mNameEditor->setCallbackUserData(this);
|
||||
mNameEditor->setCommitCallback(boost::bind(&LLPanelPick::onCommitAny, this));
|
||||
|
||||
mDescEditor = getChild<LLTextEditor>("desc_editor");
|
||||
mDescEditor->setCommitOnFocusLost(TRUE);
|
||||
mDescEditor->setCommitCallback(onCommitAny);
|
||||
mDescEditor->setCallbackUserData(this);
|
||||
mDescEditor->setCommitCallback(boost::bind(&LLPanelPick::onCommitAny, this));
|
||||
mDescEditor->setTabsToNextField(TRUE);
|
||||
|
||||
mLocationEditor = getChild<LLLineEditor>("location_editor");
|
||||
|
||||
mSetBtn = getChild<LLButton>( "set_location_btn");
|
||||
mSetBtn->setClickedCallback(boost::bind(&LLPanelPick::onClickSet,this));
|
||||
mSetBtn->setCommitCallback(boost::bind(&LLPanelPick::onClickSet,this));
|
||||
|
||||
mTeleportBtn = getChild<LLButton>( "pick_teleport_btn");
|
||||
mTeleportBtn->setClickedCallback(boost::bind(&LLPanelPick::onClickTeleport,this));
|
||||
|
||||
mMapBtn = getChild<LLButton>( "pick_map_btn");
|
||||
mMapBtn->setClickedCallback(boost::bind(&LLPanelPick::onClickMap,this));
|
||||
|
||||
mSortOrderText = getChild<LLTextBox>("sort_order_text");
|
||||
|
||||
mSortOrderEditor = getChild<LLLineEditor>("sort_order_editor");
|
||||
mSortOrderEditor->setPrevalidate(LLLineEditor::prevalidateInt);
|
||||
mSortOrderEditor->setCommitOnFocusLost(TRUE);
|
||||
mSortOrderEditor->setCommitCallback(onCommitAny);
|
||||
mSortOrderEditor->setCallbackUserData(this);
|
||||
|
||||
mEnabledCheck = getChild<LLCheckBoxCtrl>( "enabled_check");
|
||||
mEnabledCheck->setCommitCallback(onCommitAny);
|
||||
mEnabledCheck->setCallbackUserData(this);
|
||||
getChild<LLUICtrl>("pick_teleport_btn")->setCommitCallback(boost::bind(&LLPanelPick::onClickTeleport,this));
|
||||
getChild<LLUICtrl>("pick_map_btn")->setCommitCallback(boost::bind(&LLPanelPick::onClickMap,this));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void LLPanelPick::processProperties(void* data, EAvatarProcessorType type)
|
||||
{
|
||||
if(APT_PICK_INFO != type)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (!data || APT_PICK_INFO != type) return;
|
||||
|
||||
LLPickData* pick_info = static_cast<LLPickData*>(data);
|
||||
//llassert_always(pick_info->creator_id != gAgent.getID());
|
||||
//llassert_always(mCreatorID != gAgent.getID());
|
||||
if(!pick_info
|
||||
|| pick_info->creator_id != mCreatorID
|
||||
|| pick_info->pick_id != mPickID)
|
||||
{
|
||||
if (pick_info->creator_id != mCreatorID || pick_info->pick_id != mPickID)
|
||||
return;
|
||||
}
|
||||
|
||||
LLAvatarPropertiesProcessor::getInstance()->removeObserver(mCreatorID, this);
|
||||
|
||||
// "Location text" is actually the owner name, the original
|
||||
// name that owner gave the parcel, and the location.
|
||||
std::string location_text = pick_info->user_name + ", ";
|
||||
|
||||
if (!pick_info->original_name.empty())
|
||||
{
|
||||
location_text.append(pick_info->original_name);
|
||||
location_text.append(", ");
|
||||
location_text += pick_info->original_name + ", ";
|
||||
}
|
||||
|
||||
location_text.append(pick_info->sim_name);
|
||||
location_text.append(" ");
|
||||
location_text += pick_info->sim_name + " ";
|
||||
|
||||
//Fix for location text importing - RK
|
||||
for (panel_list_t::iterator iter = sAllPanels.begin(); iter != sAllPanels.end(); ++iter)
|
||||
{
|
||||
LLPanelPick* self = *iter;
|
||||
if(!self->mImporting) self->mLocationText = location_text;
|
||||
if (!self->mImporting) self->mLocationText = location_text;
|
||||
else location_text = self->mLocationText;
|
||||
self->mImporting = false;
|
||||
}
|
||||
@@ -226,7 +180,6 @@ void LLPanelPick::processProperties(void* data, EAvatarProcessorType type)
|
||||
S32 region_x = llround((F32)pick_info->pos_global.mdV[VX]) % REGION_WIDTH_UNITS;
|
||||
S32 region_y = llround((F32)pick_info->pos_global.mdV[VY]) % REGION_WIDTH_UNITS;
|
||||
S32 region_z = llround((F32)pick_info->pos_global.mdV[VZ]);
|
||||
|
||||
location_text.append(llformat("(%d, %d, %d)", region_x, region_y, region_z));
|
||||
|
||||
mDataReceived = TRUE;
|
||||
@@ -243,24 +196,17 @@ void LLPanelPick::processProperties(void* data, EAvatarProcessorType type)
|
||||
mDescEditor->setText(pick_info->desc);
|
||||
mSnapshotCtrl->setImageAssetID(pick_info->snapshot_id);
|
||||
mLocationEditor->setText(location_text);
|
||||
mEnabledCheck->set(pick_info->enabled);
|
||||
|
||||
mSortOrderEditor->setText(llformat("%d", pick_info->sort_order));
|
||||
|
||||
}
|
||||
|
||||
// Fill in some reasonable defaults for a new pick.
|
||||
void LLPanelPick::initNewPick()
|
||||
{
|
||||
mPickID.generate();
|
||||
|
||||
mCreatorID = gAgent.getID();
|
||||
|
||||
mCreatorID = gAgentID;
|
||||
mPosGlobal = gAgent.getPositionGlobal();
|
||||
|
||||
// Try to fill in the current parcel
|
||||
LLParcel* parcel = LLViewerParcelMgr::getInstance()->getAgentParcel();
|
||||
if (parcel)
|
||||
if (LLParcel* parcel = LLViewerParcelMgr::getInstance()->getAgentParcel())
|
||||
{
|
||||
mNameEditor->setText(parcel->getName());
|
||||
mDescEditor->setText(parcel->getDesc());
|
||||
@@ -284,21 +230,14 @@ void LLPanelPick::importNewPick_continued(void (*callback)(void*, bool), void* d
|
||||
bool result = false;
|
||||
if (filepicker->hasFilename())
|
||||
{
|
||||
std::string file = filepicker->getFilename();
|
||||
|
||||
llifstream importer(file);
|
||||
llifstream importer(filepicker->getFilename());
|
||||
LLSD data;
|
||||
LLSDSerialize::fromXMLDocument(data, importer);
|
||||
|
||||
LLSD file_data = data["Data"];
|
||||
data = LLSD();
|
||||
|
||||
mPickID.generate();
|
||||
|
||||
mCreatorID = gAgent.getID();
|
||||
|
||||
mCreatorID = gAgentID;
|
||||
mPosGlobal = LLVector3d(file_data["globalPos"]);
|
||||
|
||||
mNameEditor->setText(file_data["name"].asString());
|
||||
mDescEditor->setText(file_data["desc"].asString());
|
||||
mSnapshotCtrl->setImageAssetID(file_data["snapshotID"].asUUID());
|
||||
@@ -325,10 +264,10 @@ void LLPanelPick::exportPick_continued(AIFilePicker* filepicker)
|
||||
if (!filepicker->hasFilename())
|
||||
return;
|
||||
|
||||
std::string destination = filepicker->getFilename();
|
||||
LLSD header;
|
||||
header["Version"] = 2;
|
||||
|
||||
LLSD datas;
|
||||
|
||||
datas["name"] = mNameEditor->getText();
|
||||
datas["desc"] = mDescEditor->getText();
|
||||
datas["parcelID"] = mParcelID;
|
||||
@@ -337,16 +276,12 @@ void LLPanelPick::exportPick_continued(AIFilePicker* filepicker)
|
||||
datas["locationText"] = mLocationText;
|
||||
|
||||
LLSD file;
|
||||
LLSD header;
|
||||
header["Version"] = 2;
|
||||
file["Header"] = header;
|
||||
std::string grid_uri = gHippoGridManager->getConnectedGrid()->getLoginUri();
|
||||
//LLStringUtil::toLower(uris[0]);
|
||||
file["Grid"] = grid_uri;
|
||||
file["Grid"] = gHippoGridManager->getConnectedGrid()->getLoginUri();
|
||||
file["Data"] = datas;
|
||||
|
||||
// Create a file stream and write to it
|
||||
llofstream export_file(destination);
|
||||
llofstream export_file(filepicker->getFilename());
|
||||
LLSDSerialize::toPrettyXML(file, export_file);
|
||||
// Open the file save dialog
|
||||
export_file.close();
|
||||
@@ -369,15 +304,8 @@ void LLPanelPick::markForServerRequest()
|
||||
}
|
||||
|
||||
|
||||
std::string LLPanelPick::getPickName()
|
||||
{
|
||||
return mNameEditor->getText();
|
||||
}
|
||||
|
||||
|
||||
void LLPanelPick::sendPickInfoRequest()
|
||||
{
|
||||
//llassert_always(mCreatorID != gAgent.getID());
|
||||
LLAvatarPropertiesProcessor::getInstance()->addObserver(mCreatorID, this);
|
||||
LLAvatarPropertiesProcessor::getInstance()->sendPickInfoRequest(mCreatorID, mPickID);
|
||||
|
||||
@@ -396,24 +324,18 @@ void LLPanelPick::sendPickInfoUpdate()
|
||||
mPickID.generate();
|
||||
}
|
||||
|
||||
pick_data.agent_id = gAgent.getID();
|
||||
pick_data.session_id = gAgent.getSessionID();
|
||||
pick_data.agent_id = gAgentID;
|
||||
pick_data.session_id = gAgentSessionID;
|
||||
pick_data.pick_id = mPickID;
|
||||
pick_data.creator_id = gAgent.getID();
|
||||
|
||||
//legacy var need to be deleted
|
||||
pick_data.top_pick = mTopPick;
|
||||
pick_data.creator_id = gAgentID;
|
||||
pick_data.top_pick = false; //legacy var need to be deleted
|
||||
pick_data.parcel_id = mParcelID;
|
||||
pick_data.name = mNameEditor->getText();
|
||||
pick_data.desc = mDescEditor->getText();
|
||||
pick_data.snapshot_id = mSnapshotCtrl->getImageAssetID();
|
||||
pick_data.pos_global = mPosGlobal;
|
||||
if(mTopPick)
|
||||
pick_data.sort_order = atoi(mSortOrderEditor->getText().c_str());
|
||||
else
|
||||
pick_data.sort_order = 0;
|
||||
|
||||
pick_data.enabled = mEnabledCheck->get();
|
||||
pick_data.sort_order = 0;
|
||||
pick_data.enabled = true;
|
||||
|
||||
LLAvatarPropertiesProcessor::getInstance()->sendPickInfoUpdate(&pick_data);
|
||||
}
|
||||
@@ -421,106 +343,49 @@ void LLPanelPick::sendPickInfoUpdate()
|
||||
|
||||
|
||||
void LLPanelPick::draw()
|
||||
{
|
||||
refresh();
|
||||
|
||||
LLPanel::draw();
|
||||
}
|
||||
|
||||
|
||||
void LLPanelPick::refresh()
|
||||
{
|
||||
if (!mDataRequested)
|
||||
{
|
||||
sendPickInfoRequest();
|
||||
}
|
||||
|
||||
// Check for god mode
|
||||
BOOL godlike = gAgent.isGodlike();
|
||||
BOOL is_self = (gAgent.getID() == mCreatorID);
|
||||
|
||||
// Set button visibility/enablement appropriately
|
||||
if (mTopPick)
|
||||
{
|
||||
mSnapshotCtrl->setEnabled(godlike);
|
||||
mNameEditor->setEnabled(godlike);
|
||||
mDescEditor->setEnabled(godlike);
|
||||
|
||||
mSortOrderText->setVisible(godlike);
|
||||
|
||||
mSortOrderEditor->setVisible(godlike);
|
||||
mSortOrderEditor->setEnabled(godlike);
|
||||
|
||||
mEnabledCheck->setVisible(godlike);
|
||||
mEnabledCheck->setEnabled(godlike);
|
||||
|
||||
mSetBtn->setVisible(godlike);
|
||||
//mSetBtn->setEnabled(godlike);
|
||||
bool is_self = gAgentID == mCreatorID;
|
||||
mSnapshotCtrl->setEnabled(is_self);
|
||||
mNameEditor->setEnabled(is_self);
|
||||
mDescEditor->setEnabled(is_self);
|
||||
mSetBtn->setVisible(is_self);
|
||||
//mSetBtn->setEnabled(is_self);
|
||||
// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a)
|
||||
mSetBtn->setEnabled(godlike && (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) );
|
||||
// [/RLVa:KB]
|
||||
}
|
||||
|
||||
|
||||
|
||||
else
|
||||
{
|
||||
mSnapshotCtrl->setEnabled(is_self);
|
||||
mNameEditor->setEnabled(is_self);
|
||||
mDescEditor->setEnabled(is_self);
|
||||
|
||||
mSortOrderText->setVisible(FALSE);
|
||||
|
||||
mSortOrderEditor->setVisible(FALSE);
|
||||
mSortOrderEditor->setEnabled(FALSE);
|
||||
|
||||
mEnabledCheck->setVisible(FALSE);
|
||||
mEnabledCheck->setEnabled(FALSE);
|
||||
|
||||
mSetBtn->setVisible(is_self);
|
||||
//mSetBtn->setEnabled(is_self);
|
||||
// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a)
|
||||
mSetBtn->setEnabled(is_self && (!gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC)) );
|
||||
mSetBtn->setEnabled(is_self && !gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC));
|
||||
// [/RLVa]
|
||||
}
|
||||
|
||||
LLPanel::draw();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// static
|
||||
void LLPanelPick::onClickTeleport(void* data)
|
||||
void LLPanelPick::onClickTeleport()
|
||||
{
|
||||
LLPanelPick* self = (LLPanelPick*)data;
|
||||
|
||||
if (!self->mPosGlobal.isExactlyZero())
|
||||
if (!mPosGlobal.isExactlyZero())
|
||||
{
|
||||
gAgent.teleportViaLocation(self->mPosGlobal);
|
||||
gFloaterWorldMap->trackLocation(self->mPosGlobal);
|
||||
gAgent.teleportViaLocation(mPosGlobal);
|
||||
gFloaterWorldMap->trackLocation(mPosGlobal);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// static
|
||||
void LLPanelPick::onClickMap(void* data)
|
||||
void LLPanelPick::onClickMap()
|
||||
{
|
||||
LLPanelPick* self = (LLPanelPick*)data;
|
||||
gFloaterWorldMap->trackLocation(self->mPosGlobal);
|
||||
gFloaterWorldMap->trackLocation(mPosGlobal);
|
||||
LLFloaterWorldMap::show(true);
|
||||
}
|
||||
|
||||
// static
|
||||
/*
|
||||
void LLPanelPick::onClickLandmark(void* data)
|
||||
void LLPanelPick::onClickLandmark()
|
||||
{
|
||||
LLPanelPick* self = (LLPanelPick*)data;
|
||||
create_landmark(self->mNameEditor->getText(), "", self->mPosGlobal);
|
||||
create_landmark(mNameEditor->getText(), "", mPosGlobal);
|
||||
}
|
||||
*/
|
||||
|
||||
// static
|
||||
void LLPanelPick::onClickSet(void* data)
|
||||
void LLPanelPick::onClickSet()
|
||||
{
|
||||
// [RLVa:KB] - Checked: 2009-07-04 (RLVa-1.0.0a)
|
||||
if (gRlvHandler.hasBehaviour(RLV_BHVR_SHOWLOC))
|
||||
@@ -528,63 +393,41 @@ void LLPanelPick::onClickSet(void* data)
|
||||
return;
|
||||
}
|
||||
// [/RLVa:KB]
|
||||
LLPanelPick* self = (LLPanelPick*)data;
|
||||
|
||||
// Save location for later.
|
||||
self->mPosGlobal = gAgent.getPositionGlobal();
|
||||
mPosGlobal = gAgent.getPositionGlobal();
|
||||
|
||||
std::string location_text;
|
||||
location_text.assign("(will update after save)");
|
||||
location_text.append(", ");
|
||||
std::string location_text("(will update after save), " + mSimName);
|
||||
|
||||
S32 region_x = llround((F32)self->mPosGlobal.mdV[VX]) % REGION_WIDTH_UNITS;
|
||||
S32 region_y = llround((F32)self->mPosGlobal.mdV[VY]) % REGION_WIDTH_UNITS;
|
||||
S32 region_z = llround((F32)self->mPosGlobal.mdV[VZ]);
|
||||
|
||||
location_text.append(self->mSimName);
|
||||
S32 region_x = llround((F32)mPosGlobal.mdV[VX]) % REGION_WIDTH_UNITS;
|
||||
S32 region_y = llround((F32)mPosGlobal.mdV[VY]) % REGION_WIDTH_UNITS;
|
||||
S32 region_z = llround((F32)mPosGlobal.mdV[VZ]);
|
||||
location_text.append(llformat(" (%d, %d, %d)", region_x, region_y, region_z));
|
||||
|
||||
// if sim name in pick is different from current sim name
|
||||
// make sure it's clear that all that's being changed
|
||||
// is the location and nothing else
|
||||
if ( gAgent.getRegion ()->getName () != self->mSimName )
|
||||
if (gAgent.getRegion()->getName() != mSimName)
|
||||
{
|
||||
LLNotificationsUtil::add("SetPickLocation");
|
||||
};
|
||||
}
|
||||
|
||||
self->mLocationEditor->setText(location_text);
|
||||
mLocationEditor->setText(location_text);
|
||||
|
||||
onCommitAny(NULL, data);
|
||||
onCommitAny();
|
||||
}
|
||||
|
||||
|
||||
// static
|
||||
void LLPanelPick::onCommitAny(LLUICtrl* ctrl, void* data)
|
||||
void LLPanelPick::onCommitAny()
|
||||
{
|
||||
LLPanelPick* self = (LLPanelPick*)data;
|
||||
|
||||
if(self->mCreatorID != gAgent.getID())
|
||||
return;
|
||||
if (mCreatorID != gAgentID) return;
|
||||
|
||||
// have we received up to date data for this pick?
|
||||
if (self->mDataReceived)
|
||||
if (mDataReceived)
|
||||
{
|
||||
self->sendPickInfoUpdate();
|
||||
|
||||
// Big hack - assume that top picks are always in a browser,
|
||||
// and non-top-picks are always in a tab container.
|
||||
/*if (self->mTopPick)
|
||||
sendPickInfoUpdate();
|
||||
if (LLTabContainer* tab = dynamic_cast<LLTabContainer*>(getParent()))
|
||||
{
|
||||
LLPanelDirPicks* panel = (LLPanelDirPicks*)self->getParent();
|
||||
panel->renamePick(self->mPickID, self->mNameEditor->getText());
|
||||
tab->setCurrentTabName(mNameEditor->getText());
|
||||
}
|
||||
else
|
||||
{*/
|
||||
LLTabContainer* tab = (LLTabContainer*)self->getParent();
|
||||
if (tab)
|
||||
{
|
||||
if(tab) tab->setCurrentTabName(self->mNameEditor->getText());
|
||||
}
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,43 +30,32 @@
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
// Display of a "Top Pick" used both for the global top picks in the
|
||||
// Find directory, and also for each individual user's picks in their
|
||||
// profile.
|
||||
// Display of each individual user's picks in their profile.
|
||||
|
||||
#ifndef LL_LLPANELPICK_H
|
||||
#define LL_LLPANELPICK_H
|
||||
|
||||
#include "llpanel.h"
|
||||
#include "v3dmath.h"
|
||||
#include "lluuid.h"
|
||||
#include "llavatarpropertiesprocessor.h"
|
||||
|
||||
class LLButton;
|
||||
class LLCheckBoxCtrl;
|
||||
class LLIconCtrl;
|
||||
class LLLineEditor;
|
||||
class LLTextBox;
|
||||
class LLTextEditor;
|
||||
class LLTextureCtrl;
|
||||
class LLUICtrl;
|
||||
class LLMessageSystem;
|
||||
class AIFilePicker;
|
||||
|
||||
class LLPanelPick : public LLPanel, public LLAvatarPropertiesObserver
|
||||
{
|
||||
public:
|
||||
LLPanelPick(BOOL top_pick);
|
||||
LLPanelPick();
|
||||
/*virtual*/ ~LLPanelPick();
|
||||
|
||||
void reset();
|
||||
|
||||
/*virtual*/ BOOL postBuild();
|
||||
|
||||
/*virtual*/ void draw();
|
||||
|
||||
/*virtual*/ void refresh();
|
||||
|
||||
/*virtual*/ void processProperties(void* data, EAvatarProcessorType type);
|
||||
|
||||
// Setup a new pick, including creating an id, giving a sane
|
||||
@@ -87,7 +76,7 @@ public:
|
||||
// from the server next time it is drawn.
|
||||
void markForServerRequest();
|
||||
|
||||
std::string getPickName();
|
||||
const std::string& getPickName() const { return mNameEditor->getText(); }
|
||||
const LLUUID& getPickID() const { return mPickID; }
|
||||
const LLUUID& getPickCreatorID() const { return mCreatorID; }
|
||||
|
||||
@@ -95,26 +84,24 @@ public:
|
||||
void sendPickInfoUpdate();
|
||||
|
||||
protected:
|
||||
static void onClickTeleport(void* data);
|
||||
static void onClickMap(void* data);
|
||||
//static void onClickLandmark(void* data);
|
||||
static void onClickSet(void* data);
|
||||
void onClickTeleport();
|
||||
void onClickMap();
|
||||
//void onClickLandmark();
|
||||
void onClickSet();
|
||||
|
||||
static void onCommitAny(LLUICtrl* ctrl, void* data);
|
||||
void onCommitAny();
|
||||
|
||||
protected:
|
||||
//Pick import and export - RK
|
||||
BOOL mImporting;
|
||||
bool mImporting;
|
||||
std::string mLocationText;
|
||||
|
||||
BOOL mTopPick;
|
||||
LLUUID mPickID;
|
||||
LLUUID mCreatorID;
|
||||
LLUUID mParcelID;
|
||||
|
||||
// Data will be requested on first draw
|
||||
BOOL mDataRequested;
|
||||
BOOL mDataReceived;
|
||||
bool mDataRequested;
|
||||
bool mDataReceived;
|
||||
|
||||
std::string mSimName;
|
||||
LLVector3d mPosGlobal;
|
||||
@@ -124,13 +111,8 @@ protected:
|
||||
LLTextEditor* mDescEditor;
|
||||
LLLineEditor* mLocationEditor;
|
||||
|
||||
LLButton* mTeleportBtn;
|
||||
LLButton* mMapBtn;
|
||||
|
||||
LLTextBox* mSortOrderText;
|
||||
LLLineEditor* mSortOrderEditor;
|
||||
LLCheckBoxCtrl* mEnabledCheck;
|
||||
LLButton* mSetBtn;
|
||||
LLButton* mTeleportBtn;
|
||||
LLButton* mSetBtn;
|
||||
|
||||
typedef std::list<LLPanelPick*> panel_list_t;
|
||||
static panel_list_t sAllPanels;
|
||||
|
||||
@@ -18,12 +18,4 @@
|
||||
name="pick_teleport_btn" width="70" />
|
||||
<button bottom_delta="0" follows="left|top" height="20" label="Show on Map" left="80"
|
||||
name="pick_map_btn" width="100" />
|
||||
<text bottom_delta="0" follows="left|top" height="20" left="290"
|
||||
name="sort_order_text" width="30">
|
||||
Sort:
|
||||
</text>
|
||||
<line_editor bottom_delta="5" follows="left|top" height="16" left="280"
|
||||
name="sort_order_editor" width="25" />
|
||||
<check_box bottom_delta="0" follows="left|top" height="20" label="Enabled" left="360"
|
||||
name="enabled_check" width="80" />
|
||||
</panel>
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel border="false" bottom="20" follows="bottom|left" height="470" left="330"
|
||||
name="Pick" title="Pick" width="450">
|
||||
<texture_picker bottom="-315" follows="left|top" height="300" left="20" name="snapshot_ctrl"
|
||||
width="400" />
|
||||
<line_editor bottom_delta="-8" enabled="false" follows="left|top"
|
||||
font="SansSerif" height="20" left="20" name="given_name_editor"
|
||||
width="400" />
|
||||
<text_editor enabled="false" follows="left|top" font="SansSerif"
|
||||
height="90" left="20" max_length="1023" name="desc_editor"
|
||||
width="400" word_wrap="true" spell_check="true" />
|
||||
<line_editor enabled="false" follows="left|top" font="SansSerif"
|
||||
height="20" left="20" name="location_editor"
|
||||
width="400" />
|
||||
<button bottom_delta="0" follows="left|top" height="20" label="Set" left="380"
|
||||
name="set_location_btn" width="60" />
|
||||
<button bottom_delta="-30" follows="left|top" height="20" label="Teleport" left="20"
|
||||
name="pick_teleport_btn" width="80" />
|
||||
<button bottom_delta="0" follows="left|top" height="20" label="Show on Map" left="105"
|
||||
name="pick_map_btn" width="100" />
|
||||
<text bottom_delta="0" follows="left|top" height="20" left="290"
|
||||
name="sort_order_text" width="30">
|
||||
Sort:
|
||||
</text>
|
||||
<line_editor bottom_delta="5" follows="left|top" height="16" left="320"
|
||||
name="sort_order_editor" width="25" />
|
||||
<check_box bottom_delta="0" follows="left|top" height="20" label="Enabled" left="360"
|
||||
name="enabled_check" width="80" />
|
||||
</panel>
|
||||
@@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel name="Pick" title="Destacados">
|
||||
<button label="Definir" name="set_location_btn"/>
|
||||
<button label="Teleportar" name="pick_teleport_btn" width="85"/>
|
||||
<button label="Mostrar en el Mapa" name="pick_map_btn" left="115"/>
|
||||
<text name="sort_order_text">
|
||||
Ordenar:
|
||||
</text>
|
||||
<check_box label="Activado" name="enabled_check"/>
|
||||
</panel>
|
||||
@@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel name="Pick" title="Choisir">
|
||||
<button label="Définir" name="set_location_btn" />
|
||||
<button label="Téléporter" name="pick_teleport_btn" />
|
||||
<button label="Voir sur la carte" name="pick_map_btn" />
|
||||
<text name="sort_order_text">
|
||||
Trier:
|
||||
</text>
|
||||
<check_box label="Activé" name="enabled_check" />
|
||||
</panel>
|
||||
@@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<panel name="Pick" title="Pegar">
|
||||
<button label="Ajustar" name="set_location_btn"/>
|
||||
<button label="Teletransporte" name="pick_teleport_btn"/>
|
||||
<button label="Mostrar no Mapa" name="pick_map_btn"/>
|
||||
<text name="sort_order_text">
|
||||
Ordenar:
|
||||
</text>
|
||||
<check_box label="Ativo" name="enabled_check"/>
|
||||
</panel>
|
||||
Reference in New Issue
Block a user