Ansariel 2022-11-02 12:30:02 +01:00
commit 8214809ae4
10 changed files with 69 additions and 60 deletions

View File

@ -1064,7 +1064,7 @@ void LLPanelProfileSecondLife::onOpen(const LLSD& key)
#else
if (own_profile)
#endif
// </FS:Beq>
// </FS:Beq>
{
mImageActionMenuButton->setVisible(TRUE);
mImageActionMenuButton->setMenu("menu_fs_profile_image_actions.xml", LLMenuButton::MP_BOTTOM_RIGHT);
@ -1113,11 +1113,11 @@ void LLPanelProfileSecondLife::updateData()
else
{
// <FS:Beq> restore UDP profiles for opensim that does not support the cap
#ifdef OPENSIM
#ifdef OPENSIM
if (LLGridManager::instance().isInOpenSim() && !(getSelfProfile() /* TODO(Beq):No longer neeed? && !getEmbedded()*/))
{
LLAvatarPropertiesProcessor::getInstance()->sendAvatarGroupsRequest(avatar_id);
}
}
else
#endif
// </FS:Beq>
@ -1138,7 +1138,7 @@ void LLPanelProfileSecondLife::refreshName()
void LLPanelProfileSecondLife::apply(LLAvatarData* data)
{
#ifdef OPENSIM
if (LLGridManager::instance().isInOpenSim() && getIsLoaded() && getSelfProfile())
if (LLGridManager::instance().isInOpenSim() && getIsLoaded() && getSelfProfile())
{
data->image_id = mImageId;
data->about_text = mDescriptionEdit->getValue().asString();
@ -1262,9 +1262,10 @@ void LLPanelProfileSecondLife::processProfileProperties(const LLAvatarData* avat
fillPartnerData(avatar_data);
fillAccountStatus(avatar_data);
// <FS:Beq> Restore UDP profiles
#ifdef OPENSIM
if (LLGridManager::instance().isInOpenSim())
if (LLGridManager::instance().isInOpenSim())
{
LLFloater* floater_profile = LLFloaterReg::findInstance("profile", LLSD().with("id", avatar_id));
if (!floater_profile)
@ -1272,13 +1273,15 @@ void LLPanelProfileSecondLife::processProfileProperties(const LLAvatarData* avat
// floater is dead, so panels are dead as well
return;
}
LLPanel *panel = floater_profile->findChild<LLPanel>(PANEL_PROFILE_VIEW, TRUE);
auto *panel_profile = dynamic_cast<LLPanelProfile*>(panel);
if (!panel_profile)
LLPanelProfile* panel_profile = floater_profile->findChild<LLPanelProfile>(PANEL_PROFILE_VIEW, TRUE);
if (panel_profile)
{
panel_profile->setAvatarData(avatar_data);
}
else
{
LL_WARNS() << PANEL_PROFILE_VIEW << " not found" << LL_ENDL;
}
panel_profile->setAvatarData(avatar_data);
}
}
#endif
// </FS:Beq>
@ -2242,8 +2245,7 @@ void LLPanelProfileSecondLife::onSaveDescriptionChanges()
// floater is dead, so panels are dead as well
return;
}
LLPanel *panel = floater_profile->findChild<LLPanel>(PANEL_PROFILE_VIEW, TRUE);
auto *panel_profile = dynamic_cast<LLPanelProfile*>(panel);
LLPanelProfile* panel_profile = floater_profile->findChild<LLPanelProfile>(PANEL_PROFILE_VIEW, TRUE);
if (!panel_profile)
{
LL_WARNS() << PANEL_PROFILE_VIEW << " not found" << LL_ENDL;
@ -2259,7 +2261,7 @@ void LLPanelProfileSecondLife::onSaveDescriptionChanges()
LLAvatarPropertiesProcessor::getInstance()->sendAvatarPropertiesUpdate(&avatar_data);
}
}
}
}
#endif
// </FS:Beq>
@ -2479,7 +2481,7 @@ void LLPanelProfileSecondLife::onCommitProfileImage(const LLUUID& id)
else
{
// <FS:Beq> Make OpenSim profiles work again
#ifdef OPENSIM
#ifdef OPENSIM
if(LLGridManager::getInstance()->isInOpenSim())
{
mImageId = id;
@ -2569,6 +2571,7 @@ void LLPanelProfileWeb::apply(LLAvatarData* data)
}
#endif
// </FS:Beq>
void LLPanelProfileWeb::onAvatarNameCache(const LLUUID& agent_id, const LLAvatarName& av_name)
{
mAvatarNameCacheConnection.disconnect();
@ -2866,7 +2869,7 @@ void LLPanelProfileFirstLife::onCommitPhoto(const LLUUID& id)
else
{
// <FS:Beq> Make OpenSim profiles work again
#ifdef OPENSIM
#ifdef OPENSIM
if(LLGridManager::getInstance()->isInOpenSim())
{
mImageId = id;
@ -2922,8 +2925,7 @@ void LLPanelProfileFirstLife::onSaveDescriptionChanges()
// floater is dead, so panels are dead as well
return;
}
LLPanel *panel = floater_profile->findChild<LLPanel>(PANEL_PROFILE_VIEW, TRUE);
auto *panel_profile = dynamic_cast<LLPanelProfile*>(panel);
LLPanelProfile* panel_profile = floater_profile->findChild<LLPanelProfile>(PANEL_PROFILE_VIEW, TRUE);
if (!panel_profile)
{
LL_WARNS() << PANEL_PROFILE_VIEW << " not found" << LL_ENDL;
@ -2938,7 +2940,7 @@ void LLPanelProfileFirstLife::onSaveDescriptionChanges()
LLAvatarPropertiesProcessor::getInstance()->sendAvatarPropertiesUpdate(&avatar_data);
}
}
}
}
#endif
// </FS:Beq>
@ -3012,7 +3014,7 @@ void LLPanelProfileFirstLife::resetData()
auto show_image_buttons = getSelfProfile();
#ifdef OPENSIM
std::string cap_url = gAgent.getRegionCapability(PROFILE_IMAGE_UPLOAD_CAP);
if( cap_url.empty() && LLGridManager::instance().isInOpenSim() )
if (cap_url.empty() && LLGridManager::instance().isInOpenSim())
{
show_image_buttons = false;
}
@ -3066,10 +3068,10 @@ void LLPanelProfileNotes::updateData()
boost::bind(request_avatar_properties_coro, cap_url, avatar_id));
}
// <FS:Beq> Restore UDO profiles
#ifdef OPENSIM
#ifdef OPENSIM
else
{
LLAvatarPropertiesProcessor::getInstance()->sendAvatarNotesRequest(avatar_id);
LLAvatarPropertiesProcessor::getInstance()->sendAvatarNotesRequest(avatar_id);
}
#endif
// </FS:Beq>
@ -3270,7 +3272,7 @@ void LLPanelProfile::updateData()
// <FS:Beq> Restore UDP profiles
else
{
LLAvatarPropertiesProcessor::getInstance()->sendAvatarPropertiesRequest(avatar_id);
LLAvatarPropertiesProcessor::getInstance()->sendAvatarPropertiesRequest(avatar_id);
}
// </FS:Beq>
}

View File

@ -100,6 +100,8 @@
<menu_item_call label="In Standardordner verschieben" name="Move to Default Folder"/>
<menu_item_call label="In Fundbüro verschieben" name="Move to Lost And Found"/>
<menu_item_call label="Systemordner löschen" name="Delete System Folder"/>
<menu_item_call label="Neuen Ordner aus Auswahl erstellen" name="New folder from selected"/>
<menu_item_call label="Gruppierung durch den Ordner aufheben" name="Ungroup folder items"/>
<menu_item_call label="Konferenz-Chat starten" name="Conference Chat Folder"/>
<menu_item_call label="Wiedergeben/Abspielen" name="Sound Play"/>
<menu_item_call label="SLurl kopieren" name="url_copy"/>
@ -129,8 +131,6 @@
<menu_item_call label="Ausziehen" name="Take Off"/>
<menu_item_call label="Nur auf mich anwenden" name="Settings Apply Local"/>
<menu_item_call label="Auf Parzelle anwenden" name="Settings Apply Parcel"/>
<menu_item_call label="Neuen Ordner aus Auswahl erstellen" name="New folder from selected"/>
<menu_item_call label="Gruppierung durch den Ordner aufheben" name="Ungroup folder items"/>
<menu_item_call label="In Marktplatz-Auflistungen kopieren" name="Marketplace Copy"/>
<menu_item_call label="In Marktplatz-Auflistungen verschieben" name="Marketplace Move"/>
<menu_item_call label="--keine Optionen--" name="--no options--"/>

View File

@ -14,6 +14,7 @@
save_visibility="true"
single_instance="false"
save_dock_state="false"
help_topic="floater_local_mesh"
title="Local Mesh">
<tab_container name="local_mesh_tabs"
@ -27,7 +28,7 @@
tabs_flashing_color="MenuItemFlashBgColor">
<last_tab tab_top_image_flash="TabTop_Right_Flashing" />
<panel name="local_mesh_assets_panel"
help_topic="add_local_mesh"
help_topic="local_mesh_assets"
label="Local Mesh Assets"
layout="topleft"
title="Local Mesh Assets">
@ -63,7 +64,7 @@
<panel name="logs_panel"
label="Log"
layout="topleft"
help_topic="text_log">
help_topic="local_mesh_log">
<view_border name="local_mesh_log_tab_border"
bevel_style="none"
follows="top|left"
@ -94,7 +95,7 @@
<panel name="local_mesh_settings_panel"
layout="topleft"
label="Settings"
help_topic="local_mesh_settings_prefs">
help_topic="local_mesh_settings">
<view_border name="local_mesh_settings_tab_border"
bevel_style="none"
follows="top|left"

View File

@ -96,6 +96,8 @@
<menu_item_call label="Nettoyer les liens cassés" name="Cleanup broken Links"/>
<menu_item_call label="Déplacer vers le dossier par défaut" name="Move to Default Folder"/>
<menu_item_call label="Supprimer le dossier système" name="Delete System Folder"/>
<menu_item_call label="Créer un dossier à partir de la sélection" name="New folder from selected"/>
<menu_item_call label="Dégrouper les éléments du dossier" name="Ungroup folder items"/>
<menu_item_call label="Démarrer le chat conférence" name="Conference Chat Folder"/>
<menu_item_call label="Jouer" name="Sound Play"/>
<menu_item_call label="Copier la SLurl" name="url_copy"/>
@ -119,8 +121,6 @@
<menu_item_call label="Enlever" name="Take Off"/>
<menu_item_call label="Appliquer uniquement à moi-même" name="Settings Apply Local"/>
<menu_item_call label="Appliquer à la parcelle" name="Settings Apply Parcel"/>
<menu_item_call label="Créer un dossier à partir de la sélection" name="New folder from selected"/>
<menu_item_call label="Dégrouper les éléments du dossier" name="Ungroup folder items"/>
<menu_item_call label="Copier dans les annonces Place du marché" name="Marketplace Copy"/>
<menu_item_call label="Déplacer dans les annonces Place du marché" name="Marketplace Move"/>
<menu_item_call label="--aucune option--" name="--no options--"/>

View File

@ -99,6 +99,8 @@
<menu_item_call label="Przenieś do domyślnego folderu" name="Move to Default Folder"/>
<menu_item_call label="Przenieś do Zagubionych i odnalezionych" name="Move to Lost And Found"/>
<menu_item_call label="Usuń folder systemowy" name="Delete System Folder"/>
<menu_item_call label="Utwórz folder z wybranych" name="New folder from selected" />
<menu_item_call label="Rozgrupuj elementy folderu" name="Ungroup folder items" />
<menu_item_call label="Rozpocznij konferencję czatową" name="Conference Chat Folder"/>
<menu_item_call label="Odtwarzaj" name="Sound Play"/>
<menu_item_call label="Kopiuj SLurl" name="url_copy"/>
@ -125,8 +127,6 @@
<menu_item_call label="Zdejmij" name="Take Off"/>
<menu_item_call name="Settings Apply Local" label="Stosuj tylko dla mnie" />
<menu_item_call name="Settings Apply Parcel" label="Stosuj dla działki" />
<menu_item_call label="Utwórz folder z wybranych" name="New folder from selected" />
<menu_item_call label="Rozgrupuj elementy folderu" name="Ungroup folder items" />
<menu_item_call label="Kopiuj do rzeczy Marketplace" name="Marketplace Copy"/>
<menu_item_call label="Przenieś do rzeczy Marketplace" name="Marketplace Move"/>
<menu_item_call label="--brak opcji--" name="--no options--"/>

View File

@ -131,6 +131,7 @@
<combo_item name="physics_cube">Куб</combo_item>
<combo_item name="physics_hex">Шестиугольник</combo_item>
<combo_item name="physics_ud">Определенные</combo_item>
<combo_item name="physics_bounding_box">Ограничительная рамка</combo_item>
<combo_item name="load_from_file">Из файла</combo_item>
</combo_box>
<button label="Обзор..." name="physics_browse"/>

View File

@ -99,6 +99,8 @@
<menu_item_call label="Переместить в папку по умолчанию" name="Move to Default Folder"/>
<menu_item_call label="Переместить в 'Потерянное и найденное'" name="Move to Lost And Found"/>
<menu_item_call label="Удалить системную папку" name="Delete System Folder"/>
<menu_item_call label="Создать папку из выбранных" name="New folder from selected"/>
<menu_item_call label="Разгруппировать элементы папки" name="Ungroup folder items"/>
<menu_item_call label="Начать конференц чат" name="Conference Chat Folder"/>
<menu_item_call label="Проиграть" name="Sound Play"/>
<menu_item_call label="Копировать SLurl" name="url_copy"/>
@ -125,8 +127,6 @@
<menu_item_call label="Снять" name="Take Off"/>
<menu_item_call name="Settings Apply Local" label="Применить только к себе"/>
<menu_item_call name="Settings Apply Parcel" label="Применить к Участку"/>
<menu_item_call label="Создать папку из выбранных" name="New folder from selected"/>
<menu_item_call label="Разгруппировать элементы папки" name="Ungroup folder items"/>
<menu_item_call label="Копировать в списки товаров торгового центра" name="Marketplace Copy"/>
<menu_item_call label="Переместить в списки товаров торгового центра" name="Marketplace Move"/>
<menu_item_call label="--нет опций--" name="--no options--"/>

View File

@ -377,6 +377,7 @@
<menu_item_check label="Скрыть частицы" name="Hide Particles"/>
<menu_item_check label="Скрыть выбранное" name="Hide Selected"/>
<menu_item_check label="Подсветка прозрачного" name="Highlight Transparent"/>
<menu_item_check label="- включая ригованное прозрачное" name="Include Transparent Rigged"/>
<menu_item_check label="Показывать прицел при виде от первого лица" name="ShowCrosshairs"/>
<menu label="Всплывающие подсказки" name="Hover Tips">
<menu_item_check label="Показывать Подсказки" name="Show Tips"/>

View File

@ -367,12 +367,10 @@ bool LLFloaterLocalMesh::processPrimCreated(LLViewerObject* object)
// Select the new object
LLSelectMgr::getInstance()->selectObjectAndFamily(object, TRUE);
update_selected_target( object->getID() );
// LLUUID local_id{"aee92334-90e9-110b-7c03-0ff3bc19de63"};
LLUUID local_id{};
auto* volp = object->getVolume();
if(!volp)
{
@ -393,37 +391,42 @@ bool LLFloaterLocalMesh::processPrimCreated(LLViewerObject* object)
{
return false;
}
auto scroll_ctrl_selected_item = this->mScrollCtrl->getFirstSelected();
if(!scroll_ctrl_selected_item){return true;}; // at this point we have a valid object even if we can't fill it.
auto scroll_ctrl_selected_column = scroll_ctrl_selected_item->getColumn(LOCAL_TRACKING_ID_COLUMN);
if(!scroll_ctrl_selected_column){return true;}; // at this point we have a valid object even if we can't fill it.
auto objectlist_combo_box = this->getChild<LLComboBox>("object_apply_list");
if(!objectlist_combo_box){return true;}; // at this point we have a valid object even if we can't fill it.
// TODO: replace this with check box. "apply selected"
bool apply_local { scroll_ctrl_selected_item && scroll_ctrl_selected_column && objectlist_combo_box };
if ( apply_local )
if(auto floater_ptr = LLLocalMeshSystem::getInstance()->getFloaterPointer())
{
local_id = scroll_ctrl_selected_column->getValue().asUUID();
// fill it up with local goodness
static const bool use_scale {true};
floater_ptr->update_selected_target( object->getID() );
auto scroll_ctrl_selected_item = floater_ptr->mScrollCtrl->getFirstSelected();
if(!scroll_ctrl_selected_item){return true;}; // at this point we have a valid object even if we can't fill it.
// // make sure the selection is still valid, and if so - get id.
auto scroll_ctrl_selected_column = scroll_ctrl_selected_item->getColumn(LOCAL_TRACKING_ID_COLUMN);
if(!scroll_ctrl_selected_column){return true;}; // at this point we have a valid object even if we can't fill it.
// get selected local file id, object idx and use_scale boolean
int object_idx = objectlist_combo_box->getFirstSelectedIndex();
LLLocalMeshSystem::getInstance()->applyVObject(object->getID(), local_id, object_idx, use_scale);
volp = object->getVolume();
if(!volp)
auto objectlist_combo_box = floater_ptr->getChild<LLComboBox>("object_apply_list");
if(!objectlist_combo_box){return true;}; // at this point we have a valid object even if we can't fill it.
// TODO: replace this with check box. "apply selected"
bool apply_local { scroll_ctrl_selected_item && scroll_ctrl_selected_column && objectlist_combo_box };
if ( apply_local )
{
return true;
local_id = scroll_ctrl_selected_column->getValue().asUUID();
// fill it up with local goodness
static const bool use_scale {true};
// // make sure the selection is still valid, and if so - get id.
// get selected local file id, object idx and use_scale boolean
int object_idx = objectlist_combo_box->getFirstSelectedIndex();
LLLocalMeshSystem::getInstance()->applyVObject(object->getID(), local_id, object_idx, use_scale);
volp = object->getVolume();
if(!volp)
{
return true;
}
volume_params = volp->getParams();
object->updateVolume(volume_params);
object->markForUpdate(true);
}
volume_params = volp->getParams();
object->updateVolume(volume_params);
object->markForUpdate(true);
}
return true;
}

View File

@ -244,6 +244,7 @@ class LLLocalMeshSystem : public LLSingleton<LLLocalMeshSystem>
// floater two-way communication
void registerFloaterPointer(LLFloaterLocalMesh* floater_ptr);
LLFloaterLocalMesh* getFloaterPointer(){return mFloaterPtr;};
void triggerFloaterRefresh( bool keep_selection=true );
std::vector<LLLocalMeshFile::LLLocalMeshFileInfo> getFileInfoVector() const;
std::vector<std::string> getFileLog(LLUUID local_file_id) const;