mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-10 00:09:11 +02:00
Merge pull request #4738 from huffman/entity-naming
Add 'name' property to entities
This commit is contained in:
commit
6139fc0d73
12 changed files with 61 additions and 10 deletions
|
@ -1213,6 +1213,9 @@ PropertiesTool = function(opts) {
|
||||||
data.properties.rotation = Quat.fromPitchYawRollDegrees(rotation.x, rotation.y, rotation.z);
|
data.properties.rotation = Quat.fromPitchYawRollDegrees(rotation.x, rotation.y, rotation.z);
|
||||||
}
|
}
|
||||||
Entities.editEntity(selectionManager.selections[0], data.properties);
|
Entities.editEntity(selectionManager.selections[0], data.properties);
|
||||||
|
if (data.properties.name != undefined) {
|
||||||
|
entityListTool.sendUpdate();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
pushCommandForSelections();
|
pushCommandForSelections();
|
||||||
selectionManager._update();
|
selectionManager._update();
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
var DESC_STRING = ' ▴';
|
var DESC_STRING = ' ▴';
|
||||||
|
|
||||||
function loaded() {
|
function loaded() {
|
||||||
entityList = new List('entity-list', { valueNames: ['type', 'url']});
|
entityList = new List('entity-list', { valueNames: ['name', 'type', 'url']});
|
||||||
entityList.clear();
|
entityList.clear();
|
||||||
elEntityTable = document.getElementById("entity-table");
|
elEntityTable = document.getElementById("entity-table");
|
||||||
elEntityTableBody = document.getElementById("entity-table-body");
|
elEntityTableBody = document.getElementById("entity-table-body");
|
||||||
|
@ -22,6 +22,9 @@
|
||||||
elTeleport = document.getElementById("teleport");
|
elTeleport = document.getElementById("teleport");
|
||||||
elNoEntitiesMessage = document.getElementById("no-entities");
|
elNoEntitiesMessage = document.getElementById("no-entities");
|
||||||
|
|
||||||
|
document.getElementById("entity-name").onclick = function() {
|
||||||
|
setSortColumn('name');
|
||||||
|
};
|
||||||
document.getElementById("entity-type").onclick = function() {
|
document.getElementById("entity-type").onclick = function() {
|
||||||
setSortColumn('type');
|
setSortColumn('type');
|
||||||
};
|
};
|
||||||
|
@ -56,31 +59,34 @@
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
function addEntity(id, type, url) {
|
function addEntity(id, name, type, url) {
|
||||||
if (entities[id] === undefined) {
|
if (entities[id] === undefined) {
|
||||||
var urlParts = url.split('/');
|
var urlParts = url.split('/');
|
||||||
var filename = urlParts[urlParts.length - 1];
|
var filename = urlParts[urlParts.length - 1];
|
||||||
|
|
||||||
entityList.add([{ id: id, type: type, url: filename }], function(items) {
|
entityList.add([{ id: id, name: name, type: type, url: filename }], function(items) {
|
||||||
var el = items[0].elm;
|
var el = items[0].elm;
|
||||||
var id = items[0]._values.id;
|
var id = items[0]._values.id;
|
||||||
entities[id] = {
|
entities[id] = {
|
||||||
id: id,
|
id: id,
|
||||||
name: id,
|
name: name,
|
||||||
el: el,
|
el: el,
|
||||||
|
item: items[0],
|
||||||
};
|
};
|
||||||
el.setAttribute('id', 'entity_' + id);
|
el.setAttribute('id', 'entity_' + id);
|
||||||
el.setAttribute('title', url);
|
el.setAttribute('title', url);
|
||||||
el.dataset.entityId = id;
|
el.dataset.entityId = id;
|
||||||
el.onclick = onRowClicked;
|
el.onclick = onRowClicked;
|
||||||
el.ondblclick = onRowDoubleClicked;
|
el.ondblclick = onRowDoubleClicked;
|
||||||
el.innerHTML
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if (refreshEntityListTimer) {
|
if (refreshEntityListTimer) {
|
||||||
clearTimeout(refreshEntityListTimer);
|
clearTimeout(refreshEntityListTimer);
|
||||||
}
|
}
|
||||||
refreshEntityListTimer = setTimeout(refreshEntityListObject, 50);
|
refreshEntityListTimer = setTimeout(refreshEntityListObject, 50);
|
||||||
|
} else {
|
||||||
|
var item = entities[id].item;
|
||||||
|
item.values({ name: name, url: url });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -90,6 +96,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
var elSortOrder = {
|
var elSortOrder = {
|
||||||
|
name: document.querySelector('#entity-name .sort-order'),
|
||||||
type: document.querySelector('#entity-type .sort-order'),
|
type: document.querySelector('#entity-type .sort-order'),
|
||||||
url: document.querySelector('#entity-url .sort-order'),
|
url: document.querySelector('#entity-url .sort-order'),
|
||||||
}
|
}
|
||||||
|
@ -164,7 +171,7 @@
|
||||||
elNoEntitiesMessage.style.display = "none";
|
elNoEntitiesMessage.style.display = "none";
|
||||||
for (var i = 0; i < newEntities.length; i++) {
|
for (var i = 0; i < newEntities.length; i++) {
|
||||||
var id = newEntities[i].id;
|
var id = newEntities[i].id;
|
||||||
addEntity(id, newEntities[i].type, newEntities[i].url);
|
addEntity(id, newEntities[i].name, newEntities[i].type, newEntities[i].url);
|
||||||
}
|
}
|
||||||
updateSelectedEntities(data.selectedIDs);
|
updateSelectedEntities(data.selectedIDs);
|
||||||
}
|
}
|
||||||
|
@ -190,6 +197,7 @@
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th id="entity-type" data-sort="type">Type <span class="sort-order" style="display: inline"> ▾</span></th>
|
<th id="entity-type" data-sort="type">Type <span class="sort-order" style="display: inline"> ▾</span></th>
|
||||||
|
<th id="entity-name" data-sort="type">Name <span class="sort-order" style="display: inline"> ▾</span></th>
|
||||||
<th id="entity-url" data-sort="url">URL <span class="sort-order" style="display: none"> ▾</span></th>
|
<th id="entity-url" data-sort="url">URL <span class="sort-order" style="display: none"> ▾</span></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
@ -197,6 +205,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td class="id" style="display: none">Type</td>
|
<td class="id" style="display: none">Type</td>
|
||||||
<td class="type">Type</td>
|
<td class="type">Type</td>
|
||||||
|
<td class="name">Name</td>
|
||||||
<td class="url"><div class='outer'><div class='inner'>URL</div></div></td>
|
<td class="url"><div class='outer'><div class='inner'>URL</div></div></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
@ -98,6 +98,7 @@
|
||||||
var allSections = [];
|
var allSections = [];
|
||||||
var elID = document.getElementById("property-id");
|
var elID = document.getElementById("property-id");
|
||||||
var elType = document.getElementById("property-type");
|
var elType = document.getElementById("property-type");
|
||||||
|
var elName = document.getElementById("property-name");
|
||||||
var elLocked = document.getElementById("property-locked");
|
var elLocked = document.getElementById("property-locked");
|
||||||
var elVisible = document.getElementById("property-visible");
|
var elVisible = document.getElementById("property-visible");
|
||||||
var elPositionX = document.getElementById("property-pos-x");
|
var elPositionX = document.getElementById("property-pos-x");
|
||||||
|
@ -262,6 +263,8 @@
|
||||||
enableChildren(document.getElementById("properties-list"), 'input');
|
enableChildren(document.getElementById("properties-list"), 'input');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
elName.value = properties.name;
|
||||||
|
|
||||||
elVisible.checked = properties.visible;
|
elVisible.checked = properties.visible;
|
||||||
|
|
||||||
elPositionX.value = properties.position.x.toFixed(2);
|
elPositionX.value = properties.position.x.toFixed(2);
|
||||||
|
@ -395,6 +398,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
elLocked.addEventListener('change', createEmitCheckedPropertyUpdateFunction('locked'));
|
elLocked.addEventListener('change', createEmitCheckedPropertyUpdateFunction('locked'));
|
||||||
|
elName.addEventListener('change', createEmitTextPropertyUpdateFunction('name'));
|
||||||
elVisible.addEventListener('change', createEmitCheckedPropertyUpdateFunction('visible'));
|
elVisible.addEventListener('change', createEmitCheckedPropertyUpdateFunction('visible'));
|
||||||
|
|
||||||
var positionChangeFunction = createEmitVec3PropertyUpdateFunction(
|
var positionChangeFunction = createEmitVec3PropertyUpdateFunction(
|
||||||
|
@ -590,6 +594,12 @@
|
||||||
<label id="property-id" class="selectable"></label>
|
<label id="property-id" class="selectable"></label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="property">
|
||||||
|
<span class="label" style="float: left; margin-right: 6px">Name</span>
|
||||||
|
<div class="value" style="overflow: hidden;">
|
||||||
|
<input type="text" id="property-name"></input>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="property">
|
<div class="property">
|
||||||
<span class="label">Locked</span>
|
<span class="label">Locked</span>
|
||||||
<span class="value">
|
<span class="value">
|
||||||
|
|
|
@ -301,3 +301,7 @@ input[type="number"]::-webkit-inner-spin-button:hover,
|
||||||
input[type="number"]::-webkit-inner-spin-button:active{
|
input[type="number"]::-webkit-inner-spin-button:active{
|
||||||
opacity: .8;
|
opacity: .8;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input#property-name {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ EntityListTool = function(opts) {
|
||||||
webView.eventBridge.emitScriptEvent(JSON.stringify(data));
|
webView.eventBridge.emitScriptEvent(JSON.stringify(data));
|
||||||
});
|
});
|
||||||
|
|
||||||
function sendUpdate() {
|
that.sendUpdate = function() {
|
||||||
var entities = [];
|
var entities = [];
|
||||||
var ids = Entities.findEntities(MyAvatar.position, 100);
|
var ids = Entities.findEntities(MyAvatar.position, 100);
|
||||||
for (var i = 0; i < ids.length; i++) {
|
for (var i = 0; i < ids.length; i++) {
|
||||||
|
@ -39,6 +39,7 @@ EntityListTool = function(opts) {
|
||||||
var properties = Entities.getEntityProperties(id);
|
var properties = Entities.getEntityProperties(id);
|
||||||
entities.push({
|
entities.push({
|
||||||
id: id.id,
|
id: id.id,
|
||||||
|
name: properties.name,
|
||||||
type: properties.type,
|
type: properties.type,
|
||||||
url: properties.type == "Model" ? properties.modelURL : "",
|
url: properties.type == "Model" ? properties.modelURL : "",
|
||||||
});
|
});
|
||||||
|
@ -76,7 +77,7 @@ EntityListTool = function(opts) {
|
||||||
Menu.isOptionChecked(MENU_EASE_ON_FOCUS));
|
Menu.isOptionChecked(MENU_EASE_ON_FOCUS));
|
||||||
}
|
}
|
||||||
} else if (data.type == "refresh") {
|
} else if (data.type == "refresh") {
|
||||||
sendUpdate();
|
that.sendUpdate();
|
||||||
} else if (data.type == "teleport") {
|
} else if (data.type == "teleport") {
|
||||||
if (selectionManager.hasSelection()) {
|
if (selectionManager.hasSelection()) {
|
||||||
MyAvatar.position = selectionManager.worldPosition;
|
MyAvatar.position = selectionManager.worldPosition;
|
||||||
|
|
|
@ -63,6 +63,7 @@ EntityItem::EntityItem(const EntityItemID& entityItemID) :
|
||||||
_simulatorID(ENTITY_ITEM_DEFAULT_SIMULATOR_ID),
|
_simulatorID(ENTITY_ITEM_DEFAULT_SIMULATOR_ID),
|
||||||
_simulatorIDChangedTime(0),
|
_simulatorIDChangedTime(0),
|
||||||
_marketplaceID(ENTITY_ITEM_DEFAULT_MARKETPLACE_ID),
|
_marketplaceID(ENTITY_ITEM_DEFAULT_MARKETPLACE_ID),
|
||||||
|
_name(ENTITY_ITEM_DEFAULT_NAME),
|
||||||
_physicsInfo(NULL),
|
_physicsInfo(NULL),
|
||||||
_dirtyFlags(0),
|
_dirtyFlags(0),
|
||||||
_element(NULL)
|
_element(NULL)
|
||||||
|
@ -105,6 +106,7 @@ EntityPropertyFlags EntityItem::getEntityProperties(EncodeBitstreamParams& param
|
||||||
requestedProperties += PROP_LOCKED;
|
requestedProperties += PROP_LOCKED;
|
||||||
requestedProperties += PROP_USER_DATA;
|
requestedProperties += PROP_USER_DATA;
|
||||||
requestedProperties += PROP_MARKETPLACE_ID;
|
requestedProperties += PROP_MARKETPLACE_ID;
|
||||||
|
requestedProperties += PROP_NAME;
|
||||||
requestedProperties += PROP_SIMULATOR_ID;
|
requestedProperties += PROP_SIMULATOR_ID;
|
||||||
|
|
||||||
return requestedProperties;
|
return requestedProperties;
|
||||||
|
@ -231,6 +233,7 @@ OctreeElement::AppendState EntityItem::appendEntityData(OctreePacketData* packet
|
||||||
APPEND_ENTITY_PROPERTY(PROP_USER_DATA, appendValue, getUserData());
|
APPEND_ENTITY_PROPERTY(PROP_USER_DATA, appendValue, getUserData());
|
||||||
APPEND_ENTITY_PROPERTY(PROP_SIMULATOR_ID, appendValue, getSimulatorID());
|
APPEND_ENTITY_PROPERTY(PROP_SIMULATOR_ID, appendValue, getSimulatorID());
|
||||||
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, appendValue, getMarketplaceID());
|
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, appendValue, getMarketplaceID());
|
||||||
|
APPEND_ENTITY_PROPERTY(PROP_NAME, appendValue, getName());
|
||||||
|
|
||||||
appendSubclassData(packetData, params, entityTreeElementExtraEncodeData,
|
appendSubclassData(packetData, params, entityTreeElementExtraEncodeData,
|
||||||
requestedProperties,
|
requestedProperties,
|
||||||
|
@ -528,7 +531,7 @@ int EntityItem::readEntityDataFromBuffer(const unsigned char* data, int bytesLef
|
||||||
READ_ENTITY_PROPERTY_SETTER(PROP_DIMENSIONS, glm::vec3, updateDimensionsInDomainUnits);
|
READ_ENTITY_PROPERTY_SETTER(PROP_DIMENSIONS, glm::vec3, updateDimensionsInDomainUnits);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_ENTITY_PROPERTY_QUAT_SETTER(PROP_ROTATION, updateRotation);
|
READ_ENTITY_PROPERTY_QUAT_SETTER(PROP_ROTATION, updateRotation);
|
||||||
READ_ENTITY_PROPERTY_SETTER(PROP_DENSITY, float, updateDensity);
|
READ_ENTITY_PROPERTY_SETTER(PROP_DENSITY, float, updateDensity);
|
||||||
if (useMeters) {
|
if (useMeters) {
|
||||||
|
@ -566,6 +569,8 @@ int EntityItem::readEntityDataFromBuffer(const unsigned char* data, int bytesLef
|
||||||
READ_ENTITY_PROPERTY_STRING(PROP_MARKETPLACE_ID, setMarketplaceID);
|
READ_ENTITY_PROPERTY_STRING(PROP_MARKETPLACE_ID, setMarketplaceID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
READ_ENTITY_PROPERTY_STRING(PROP_NAME, setName);
|
||||||
|
|
||||||
bytesRead += readEntitySubclassDataFromBuffer(dataAt, (bytesLeftToRead - bytesRead), args, propertyFlags, overwriteLocalData);
|
bytesRead += readEntitySubclassDataFromBuffer(dataAt, (bytesLeftToRead - bytesRead), args, propertyFlags, overwriteLocalData);
|
||||||
|
|
||||||
////////////////////////////////////
|
////////////////////////////////////
|
||||||
|
@ -897,6 +902,7 @@ EntityItemProperties EntityItem::getProperties() const {
|
||||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(userData, getUserData);
|
COPY_ENTITY_PROPERTY_TO_PROPERTIES(userData, getUserData);
|
||||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(simulatorID, getSimulatorID);
|
COPY_ENTITY_PROPERTY_TO_PROPERTIES(simulatorID, getSimulatorID);
|
||||||
COPY_ENTITY_PROPERTY_TO_PROPERTIES(marketplaceID, getMarketplaceID);
|
COPY_ENTITY_PROPERTY_TO_PROPERTIES(marketplaceID, getMarketplaceID);
|
||||||
|
COPY_ENTITY_PROPERTY_TO_PROPERTIES(name, getName);
|
||||||
|
|
||||||
properties._defaultSettings = false;
|
properties._defaultSettings = false;
|
||||||
|
|
||||||
|
@ -928,6 +934,7 @@ bool EntityItem::setProperties(const EntityItemProperties& properties) {
|
||||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(userData, setUserData);
|
SET_ENTITY_PROPERTY_FROM_PROPERTIES(userData, setUserData);
|
||||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(simulatorID, setSimulatorID);
|
SET_ENTITY_PROPERTY_FROM_PROPERTIES(simulatorID, setSimulatorID);
|
||||||
SET_ENTITY_PROPERTY_FROM_PROPERTIES(marketplaceID, setMarketplaceID);
|
SET_ENTITY_PROPERTY_FROM_PROPERTIES(marketplaceID, setMarketplaceID);
|
||||||
|
SET_ENTITY_PROPERTY_FROM_PROPERTIES(name, setName);
|
||||||
|
|
||||||
if (somethingChanged) {
|
if (somethingChanged) {
|
||||||
somethingChangedNotification(); // notify derived classes that something has changed
|
somethingChangedNotification(); // notify derived classes that something has changed
|
||||||
|
|
|
@ -229,6 +229,9 @@ public:
|
||||||
float getAngularDamping() const { return _angularDamping; }
|
float getAngularDamping() const { return _angularDamping; }
|
||||||
void setAngularDamping(float value) { _angularDamping = value; }
|
void setAngularDamping(float value) { _angularDamping = value; }
|
||||||
|
|
||||||
|
QString getName() const { return _name; }
|
||||||
|
void setName(const QString& value) { _name = value; }
|
||||||
|
|
||||||
bool getVisible() const { return _visible; }
|
bool getVisible() const { return _visible; }
|
||||||
void setVisible(bool value) { _visible = value; }
|
void setVisible(bool value) { _visible = value; }
|
||||||
bool isVisible() const { return _visible; }
|
bool isVisible() const { return _visible; }
|
||||||
|
@ -348,6 +351,7 @@ protected:
|
||||||
QUuid _simulatorID; // id of Node which is currently responsible for simulating this Entity
|
QUuid _simulatorID; // id of Node which is currently responsible for simulating this Entity
|
||||||
quint64 _simulatorIDChangedTime; // when was _simulatorID last updated?
|
quint64 _simulatorIDChangedTime; // when was _simulatorID last updated?
|
||||||
QString _marketplaceID;
|
QString _marketplaceID;
|
||||||
|
QString _name;
|
||||||
|
|
||||||
// NOTE: Damping is applied like this: v *= pow(1 - damping, dt)
|
// NOTE: Damping is applied like this: v *= pow(1 - damping, dt)
|
||||||
//
|
//
|
||||||
|
|
|
@ -86,6 +86,7 @@ EntityItemProperties::EntityItemProperties() :
|
||||||
CONSTRUCT_PROPERTY(stageAltitude, ZoneEntityItem::DEFAULT_STAGE_ALTITUDE),
|
CONSTRUCT_PROPERTY(stageAltitude, ZoneEntityItem::DEFAULT_STAGE_ALTITUDE),
|
||||||
CONSTRUCT_PROPERTY(stageDay, ZoneEntityItem::DEFAULT_STAGE_DAY),
|
CONSTRUCT_PROPERTY(stageDay, ZoneEntityItem::DEFAULT_STAGE_DAY),
|
||||||
CONSTRUCT_PROPERTY(stageHour, ZoneEntityItem::DEFAULT_STAGE_HOUR),
|
CONSTRUCT_PROPERTY(stageHour, ZoneEntityItem::DEFAULT_STAGE_HOUR),
|
||||||
|
CONSTRUCT_PROPERTY(name, ENTITY_ITEM_DEFAULT_NAME),
|
||||||
|
|
||||||
_id(UNKNOWN_ENTITY_ID),
|
_id(UNKNOWN_ENTITY_ID),
|
||||||
_idSet(false),
|
_idSet(false),
|
||||||
|
@ -281,6 +282,7 @@ EntityPropertyFlags EntityItemProperties::getChangedProperties() const {
|
||||||
CHECK_PROPERTY_CHANGE(PROP_LOCAL_GRAVITY, localGravity);
|
CHECK_PROPERTY_CHANGE(PROP_LOCAL_GRAVITY, localGravity);
|
||||||
CHECK_PROPERTY_CHANGE(PROP_PARTICLE_RADIUS, particleRadius);
|
CHECK_PROPERTY_CHANGE(PROP_PARTICLE_RADIUS, particleRadius);
|
||||||
CHECK_PROPERTY_CHANGE(PROP_MARKETPLACE_ID, marketplaceID);
|
CHECK_PROPERTY_CHANGE(PROP_MARKETPLACE_ID, marketplaceID);
|
||||||
|
CHECK_PROPERTY_CHANGE(PROP_NAME, name);
|
||||||
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_COLOR, keyLightColor);
|
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_COLOR, keyLightColor);
|
||||||
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_INTENSITY, keyLightIntensity);
|
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_INTENSITY, keyLightIntensity);
|
||||||
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_AMBIENT_INTENSITY, keyLightAmbientIntensity);
|
CHECK_PROPERTY_CHANGE(PROP_KEYLIGHT_AMBIENT_INTENSITY, keyLightAmbientIntensity);
|
||||||
|
@ -361,6 +363,7 @@ QScriptValue EntityItemProperties::copyToScriptValue(QScriptEngine* engine, bool
|
||||||
COPY_PROPERTY_TO_QSCRIPTVALUE(localGravity);
|
COPY_PROPERTY_TO_QSCRIPTVALUE(localGravity);
|
||||||
COPY_PROPERTY_TO_QSCRIPTVALUE(particleRadius);
|
COPY_PROPERTY_TO_QSCRIPTVALUE(particleRadius);
|
||||||
COPY_PROPERTY_TO_QSCRIPTVALUE(marketplaceID);
|
COPY_PROPERTY_TO_QSCRIPTVALUE(marketplaceID);
|
||||||
|
COPY_PROPERTY_TO_QSCRIPTVALUE(name);
|
||||||
|
|
||||||
COPY_PROPERTY_TO_QSCRIPTVALUE_COLOR(keyLightColor);
|
COPY_PROPERTY_TO_QSCRIPTVALUE_COLOR(keyLightColor);
|
||||||
COPY_PROPERTY_TO_QSCRIPTVALUE(keyLightIntensity);
|
COPY_PROPERTY_TO_QSCRIPTVALUE(keyLightIntensity);
|
||||||
|
@ -462,6 +465,7 @@ void EntityItemProperties::copyFromScriptValue(const QScriptValue& object) {
|
||||||
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(localGravity, setLocalGravity);
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(localGravity, setLocalGravity);
|
||||||
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(particleRadius, setParticleRadius);
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(particleRadius, setParticleRadius);
|
||||||
COPY_PROPERTY_FROM_QSCRIPTVALUE_STRING(marketplaceID, setMarketplaceID);
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_STRING(marketplaceID, setMarketplaceID);
|
||||||
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_STRING(name, setName);
|
||||||
|
|
||||||
COPY_PROPERTY_FROM_QSCRIPTVALUE_COLOR(keyLightColor, setKeyLightColor);
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_COLOR(keyLightColor, setKeyLightColor);
|
||||||
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(keyLightIntensity, setKeyLightIntensity);
|
COPY_PROPERTY_FROM_QSCRIPTVALUE_FLOAT(keyLightIntensity, setKeyLightIntensity);
|
||||||
|
@ -681,6 +685,7 @@ bool EntityItemProperties::encodeEntityEditPacket(PacketType command, EntityItem
|
||||||
}
|
}
|
||||||
|
|
||||||
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, appendValue, properties.getMarketplaceID());
|
APPEND_ENTITY_PROPERTY(PROP_MARKETPLACE_ID, appendValue, properties.getMarketplaceID());
|
||||||
|
APPEND_ENTITY_PROPERTY(PROP_NAME, appendValue, properties.getName());
|
||||||
}
|
}
|
||||||
if (propertyCount > 0) {
|
if (propertyCount > 0) {
|
||||||
int endOfEntityItemData = packetData->getUncompressedByteOffset();
|
int endOfEntityItemData = packetData->getUncompressedByteOffset();
|
||||||
|
@ -929,6 +934,7 @@ bool EntityItemProperties::decodeEntityEditPacket(const unsigned char* data, int
|
||||||
}
|
}
|
||||||
|
|
||||||
READ_ENTITY_PROPERTY_STRING_TO_PROPERTIES(PROP_MARKETPLACE_ID, setMarketplaceID);
|
READ_ENTITY_PROPERTY_STRING_TO_PROPERTIES(PROP_MARKETPLACE_ID, setMarketplaceID);
|
||||||
|
READ_ENTITY_PROPERTY_STRING_TO_PROPERTIES(PROP_NAME, setName);
|
||||||
|
|
||||||
return valid;
|
return valid;
|
||||||
}
|
}
|
||||||
|
@ -978,6 +984,7 @@ void EntityItemProperties::markAllChanged() {
|
||||||
_registrationPointChanged = true;
|
_registrationPointChanged = true;
|
||||||
_angularVelocityChanged = true;
|
_angularVelocityChanged = true;
|
||||||
_angularDampingChanged = true;
|
_angularDampingChanged = true;
|
||||||
|
_nameChanged = true;
|
||||||
_visibleChanged = true;
|
_visibleChanged = true;
|
||||||
_colorChanged = true;
|
_colorChanged = true;
|
||||||
_modelURLChanged = true;
|
_modelURLChanged = true;
|
||||||
|
|
|
@ -97,6 +97,7 @@ enum EntityPropertyList {
|
||||||
PROP_MARKETPLACE_ID,
|
PROP_MARKETPLACE_ID,
|
||||||
PROP_ACCELERATION,
|
PROP_ACCELERATION,
|
||||||
PROP_SIMULATOR_ID,
|
PROP_SIMULATOR_ID,
|
||||||
|
PROP_NAME,
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// ATTENTION: add new properties ABOVE this line
|
// ATTENTION: add new properties ABOVE this line
|
||||||
|
@ -239,6 +240,7 @@ public:
|
||||||
DEFINE_PROPERTY(PROP_STAGE_ALTITUDE, StageAltitude, stageAltitude, float);
|
DEFINE_PROPERTY(PROP_STAGE_ALTITUDE, StageAltitude, stageAltitude, float);
|
||||||
DEFINE_PROPERTY(PROP_STAGE_DAY, StageDay, stageDay, quint16);
|
DEFINE_PROPERTY(PROP_STAGE_DAY, StageDay, stageDay, quint16);
|
||||||
DEFINE_PROPERTY(PROP_STAGE_HOUR, StageHour, stageHour, float);
|
DEFINE_PROPERTY(PROP_STAGE_HOUR, StageHour, stageHour, float);
|
||||||
|
DEFINE_PROPERTY_REF(PROP_NAME, Name, name, QString);
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
@ -331,6 +333,7 @@ inline QDebug operator<<(QDebug debug, const EntityItemProperties& properties) {
|
||||||
|
|
||||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Dimensions, dimensions, "in meters");
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Dimensions, dimensions, "in meters");
|
||||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Velocity, velocity, "in meters");
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Velocity, velocity, "in meters");
|
||||||
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Name, name, "");
|
||||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Visible, visible, "");
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Visible, visible, "");
|
||||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Rotation, rotation, "");
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Rotation, rotation, "");
|
||||||
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Density, density, "");
|
DEBUG_PROPERTY_IF_CHANGED(debug, properties, Density, density, "");
|
||||||
|
|
|
@ -55,4 +55,6 @@ const float ENTITY_ITEM_DEFAULT_ANGULAR_DAMPING = 0.39347f; // approx timescale
|
||||||
const bool ENTITY_ITEM_DEFAULT_IGNORE_FOR_COLLISIONS = false;
|
const bool ENTITY_ITEM_DEFAULT_IGNORE_FOR_COLLISIONS = false;
|
||||||
const bool ENTITY_ITEM_DEFAULT_COLLISIONS_WILL_MOVE = false;
|
const bool ENTITY_ITEM_DEFAULT_COLLISIONS_WILL_MOVE = false;
|
||||||
|
|
||||||
|
const QString ENTITY_ITEM_DEFAULT_NAME = QString("");
|
||||||
|
|
||||||
#endif // hifi_EntityItemPropertiesDefaults_h
|
#endif // hifi_EntityItemPropertiesDefaults_h
|
||||||
|
|
|
@ -74,7 +74,7 @@ PacketVersion versionForPacketType(PacketType type) {
|
||||||
return 1;
|
return 1;
|
||||||
case PacketTypeEntityAddOrEdit:
|
case PacketTypeEntityAddOrEdit:
|
||||||
case PacketTypeEntityData:
|
case PacketTypeEntityData:
|
||||||
return VERSION_ENTITIES_ZONE_ENTITIES_HAVE_DYNAMIC_SHAPE;
|
return VERSION_ENTITIES_HAVE_NAMES;
|
||||||
case PacketTypeEntityErase:
|
case PacketTypeEntityErase:
|
||||||
return 2;
|
return 2;
|
||||||
case PacketTypeAudioStreamStats:
|
case PacketTypeAudioStreamStats:
|
||||||
|
|
|
@ -139,5 +139,6 @@ const PacketVersion VERSION_ENTITIES_HAVE_ACCELERATION = 15;
|
||||||
const PacketVersion VERSION_ENTITIES_HAVE_UUIDS = 16;
|
const PacketVersion VERSION_ENTITIES_HAVE_UUIDS = 16;
|
||||||
const PacketVersion VERSION_ENTITIES_ZONE_ENTITIES_EXIST = 17;
|
const PacketVersion VERSION_ENTITIES_ZONE_ENTITIES_EXIST = 17;
|
||||||
const PacketVersion VERSION_ENTITIES_ZONE_ENTITIES_HAVE_DYNAMIC_SHAPE = 18;
|
const PacketVersion VERSION_ENTITIES_ZONE_ENTITIES_HAVE_DYNAMIC_SHAPE = 18;
|
||||||
|
const PacketVersion VERSION_ENTITIES_HAVE_NAMES = 19;
|
||||||
|
|
||||||
#endif // hifi_PacketHeaders_h
|
#endif // hifi_PacketHeaders_h
|
||||||
|
|
Loading…
Reference in a new issue