mirror of
https://github.com/overte-org/overte.git
synced 2025-04-10 17:22:25 +02:00
cleanup and bugfixing
This commit is contained in:
parent
74bfea59cc
commit
1cc086f9c6
4 changed files with 39 additions and 53 deletions
|
@ -32,23 +32,13 @@ Rectangle {
|
|||
property var jointNames;
|
||||
|
||||
property string avatarName: currentAvatar ? currentAvatar.name : ''
|
||||
property string avatarUrl: currentAvatar ? currentAvatar.url : null
|
||||
property string avatarUrl: currentAvatar ? currentAvatar.thumbnailUrl : null
|
||||
property bool isAvatarInFavorites: currentAvatar ? allAvatars.findAvatar(currentAvatar.name) !== undefined : false
|
||||
property int avatarWearablesCount: currentAvatar ? currentAvatar.wearables.count : 0
|
||||
property var currentAvatar: null;
|
||||
function setCurrentAvatar(avatar, bookmarkName) {
|
||||
|
||||
var avatarThumbnailUrl = allAvatars.makeThumbnailUrl(avatar.avatarUrl);
|
||||
var currentAvatarObject = {
|
||||
'name' : bookmarkName,
|
||||
'scale' : avatar.avatarScale,
|
||||
'url' : avatarThumbnailUrl,
|
||||
'wearables' : avatar.avatarEntites ? avatar.avatarEntites : [],
|
||||
'attachments' : avatar.attachments ? avatar.attachments : [],
|
||||
'entry' : avatar,
|
||||
'getMoreAvatars' : false
|
||||
};
|
||||
|
||||
var currentAvatarObject = allAvatars.makeAvatarObject(avatar, bookmarkName);
|
||||
currentAvatar = currentAvatarModel.makeAvatarEntry(currentAvatarObject);
|
||||
console.debug('AvatarApp.qml: currentAvatarObject: ', currentAvatarObject, 'currentAvatar: ', currentAvatar, JSON.stringify(currentAvatar.wearables, 0, 4));
|
||||
console.debug('currentAvatar.wearables: ', currentAvatar.wearables);
|
||||
|
@ -555,7 +545,7 @@ Rectangle {
|
|||
id: pageOfAvatars
|
||||
|
||||
property bool isUpdating: false;
|
||||
property var getMoreAvatarsEntry: {'url' : '', 'name' : '', 'getMoreAvatars' : true}
|
||||
property var getMoreAvatarsEntry: {'thumbnailUrl' : '', 'name' : '', 'getMoreAvatars' : true}
|
||||
|
||||
function appendGetAvatars() {
|
||||
append(getMoreAvatarsEntry);
|
||||
|
@ -602,7 +592,7 @@ Rectangle {
|
|||
|
||||
AvatarThumbnail {
|
||||
id: favoriteAvatarImage
|
||||
imageUrl: url
|
||||
imageUrl: thumbnailUrl
|
||||
border.color: container.highlighted ? style.colors.blueHighlight : 'transparent'
|
||||
border.width: container.highlighted ? 2 : 0
|
||||
wearablesCount: {
|
||||
|
@ -646,13 +636,13 @@ Rectangle {
|
|||
color: '#AFAFAF'
|
||||
opacity: 0.4
|
||||
radius: 5
|
||||
visible: isInManageState && !container.highlighted && url !== ''
|
||||
visible: isInManageState && !container.highlighted && thumbnailUrl !== ''
|
||||
}
|
||||
|
||||
HiFiGlyphs {
|
||||
anchors.fill: parent
|
||||
text: "{"
|
||||
visible: isInManageState && !container.highlighted && url !== ''
|
||||
visible: isInManageState && !container.highlighted && thumbnailUrl !== ''
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
size: 56
|
||||
}
|
||||
|
|
|
@ -16,14 +16,14 @@ ListModel {
|
|||
return avatarThumbnailUrl;
|
||||
}
|
||||
|
||||
function makeAvatarEntry(avatar, avatarName) {
|
||||
function makeAvatarObject(avatar, avatarName) {
|
||||
console.debug('makeAvatarEntry: ', avatarName, JSON.stringify(avatar));
|
||||
var avatarThumbnailUrl = makeThumbnailUrl(avatar.avatarUrl);
|
||||
|
||||
return {
|
||||
'name' : avatarName,
|
||||
'scale' : avatar.avatarScale,
|
||||
'url' : avatarThumbnailUrl,
|
||||
'avatarScale' : avatar.avatarScale,
|
||||
'thumbnailUrl' : avatarThumbnailUrl,
|
||||
'wearables' : avatar.avatarEntites ? avatar.avatarEntites : [],
|
||||
'attachments' : avatar.attachments ? avatar.attachments : [],
|
||||
'entry' : avatar,
|
||||
|
@ -35,7 +35,7 @@ ListModel {
|
|||
function addAvatarEntry(avatar, avatarName) {
|
||||
console.debug('addAvatarEntry: ', avatarName);
|
||||
|
||||
var avatarEntry = makeAvatarEntry(avatar, avatarName);
|
||||
var avatarEntry = makeAvatarObject(avatar, avatarName);
|
||||
append(avatarEntry);
|
||||
|
||||
return allAvatars.count - 1;
|
||||
|
@ -44,7 +44,7 @@ ListModel {
|
|||
function populate(bookmarks) {
|
||||
for(var avatarName in bookmarks) {
|
||||
var avatar = bookmarks[avatarName];
|
||||
var avatarEntry = makeAvatarEntry(avatar, avatarName);
|
||||
var avatarEntry = makeAvatarObject(avatar, avatarName);
|
||||
|
||||
append(avatarEntry);
|
||||
}
|
||||
|
@ -175,7 +175,7 @@ ListModel {
|
|||
var thesame = true;
|
||||
var bookmarkedAvatar = allAvatars.get(i);
|
||||
|
||||
if(bookmarkedAvatar.avatarUrl !== avatar.avatarUrl)
|
||||
if(bookmarkedAvatar.thumbnailUrl !== avatar.thumbnailUrl)
|
||||
continue;
|
||||
|
||||
if(bookmarkedAvatar.avatarScale !== avatar.avatarScale)
|
||||
|
|
|
@ -26,7 +26,7 @@ Rectangle {
|
|||
|
||||
function open(avatar) {
|
||||
favoriteName.text = '';
|
||||
avatarImageUrl = avatar.url;
|
||||
avatarImageUrl = avatar.thumbnailUrl;
|
||||
wearablesCount = avatar.wearables.count;
|
||||
|
||||
visible = true;
|
||||
|
|
|
@ -316,16 +316,6 @@ function startup() {
|
|||
});
|
||||
button.clicked.connect(onTabletButtonClicked);
|
||||
tablet.screenChanged.connect(onTabletScreenChanged);
|
||||
AvatarBookmarks.bookmarkLoaded.connect(onBookmarkLoaded);
|
||||
AvatarBookmarks.bookmarkDeleted.connect(onBookmarkDeleted);
|
||||
AvatarBookmarks.bookmarkAdded.connect(onBookmarkAdded);
|
||||
|
||||
// Window.domainChanged.connect(clearLocalQMLDataAndClosePAL);
|
||||
// Window.domainConnectionRefused.connect(clearLocalQMLDataAndClosePAL);
|
||||
// Users.avatarDisconnected.connect(avatarDisconnected);
|
||||
// AvatarList.avatarAddedEvent.connect(avatarAdded);
|
||||
// AvatarList.avatarRemovedEvent.connect(avatarRemoved);
|
||||
// AvatarList.avatarSessionChangedEvent.connect(avatarSessionChanged);
|
||||
}
|
||||
|
||||
startup();
|
||||
|
@ -344,6 +334,17 @@ function off() {
|
|||
ensureWearableSelected(null);
|
||||
Entities.mousePressOnEntity.disconnect(onSelectedEntity);
|
||||
}
|
||||
|
||||
AvatarBookmarks.bookmarkLoaded.disconnect(onBookmarkLoaded);
|
||||
AvatarBookmarks.bookmarkDeleted.disconnect(onBookmarkDeleted);
|
||||
AvatarBookmarks.bookmarkAdded.disconnect(onBookmarkAdded);
|
||||
|
||||
}
|
||||
|
||||
function on() {
|
||||
AvatarBookmarks.bookmarkLoaded.connect(onBookmarkLoaded);
|
||||
AvatarBookmarks.bookmarkDeleted.connect(onBookmarkDeleted);
|
||||
AvatarBookmarks.bookmarkAdded.connect(onBookmarkAdded);
|
||||
}
|
||||
|
||||
function tabletVisibilityChanged() {
|
||||
|
@ -352,8 +353,6 @@ function tabletVisibilityChanged() {
|
|||
}
|
||||
}
|
||||
|
||||
var onAvatarAppScreen = false;
|
||||
|
||||
function onTabletButtonClicked() {
|
||||
if (onAvatarAppScreen) {
|
||||
// for toolbar-mode: go back to home screen, this will close the window.
|
||||
|
@ -382,16 +381,26 @@ function wireEventBridge(on) {
|
|||
}
|
||||
}
|
||||
|
||||
var onAvatarAppScreen = false;
|
||||
function onTabletScreenChanged(type, url) {
|
||||
console.debug('avatarapp.js: onTabletScreenChanged: ', type, url);
|
||||
|
||||
onAvatarAppScreen = (type === "QML" && url === AVATARAPP_QML_SOURCE);
|
||||
wireEventBridge(onAvatarAppScreen);
|
||||
var onAvatarAppScreenNow = (type === "QML" && url === AVATARAPP_QML_SOURCE);
|
||||
wireEventBridge(onAvatarAppScreenNow);
|
||||
// for toolbar mode: change button to active when window is first openend, false otherwise.
|
||||
button.editProperties({isActive: onAvatarAppScreen});
|
||||
button.editProperties({isActive: onAvatarAppScreenNow});
|
||||
|
||||
if (onAvatarAppScreen) {
|
||||
if (!onAvatarAppScreen && onAvatarAppScreenNow) {
|
||||
console.debug('entering avatarapp');
|
||||
on();
|
||||
} else if(onAvatarAppScreen && !onAvatarAppScreenNow) {
|
||||
console.debug('leaving avatarapp');
|
||||
off();
|
||||
}
|
||||
|
||||
onAvatarAppScreen = onAvatarAppScreenNow;
|
||||
|
||||
if(onAvatarAppScreenNow) {
|
||||
var message = {
|
||||
'method' : 'initialize',
|
||||
'data' : {
|
||||
|
@ -402,12 +411,7 @@ function onTabletScreenChanged(type, url) {
|
|||
sendToQml(message)
|
||||
}
|
||||
|
||||
console.debug('onAvatarAppScreen: ', onAvatarAppScreen);
|
||||
|
||||
// disable sphere overlays when not on avatarapp screen.
|
||||
if (!onAvatarAppScreen) {
|
||||
off();
|
||||
}
|
||||
console.debug('onAvatarAppScreenNow: ', onAvatarAppScreenNow);
|
||||
}
|
||||
|
||||
function shutdown() {
|
||||
|
@ -419,15 +423,7 @@ function shutdown() {
|
|||
button.clicked.disconnect(onTabletButtonClicked);
|
||||
tablet.removeButton(button);
|
||||
tablet.screenChanged.disconnect(onTabletScreenChanged);
|
||||
AvatarBookmarks.bookmarkLoaded.disconnect(onBookmarkLoaded);
|
||||
AvatarBookmarks.bookmarkDeleted.disconnect(onBookmarkDeleted);
|
||||
AvatarBookmarks.bookmarkAdded.disconnect(onBookmarkAdded);
|
||||
|
||||
// Window.domainChanged.disconnect(clearLocalQMLDataAndClosePAL);
|
||||
// Window.domainConnectionRefused.disconnect(clearLocalQMLDataAndClosePAL);
|
||||
// AvatarList.avatarAddedEvent.disconnect(avatarAdded);
|
||||
// AvatarList.avatarRemovedEvent.disconnect(avatarRemoved);
|
||||
// AvatarList.avatarSessionChangedEvent.disconnect(avatarSessionChanged);
|
||||
off();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue