summaryrefslogtreecommitdiff
path: root/LayerManagerCommands
diff options
context:
space:
mode:
authorTimo Lotterbach <timo.lotterbach@bmw-carit.de>2012-09-10 06:09:47 -0700
committerTimo Lotterbach <timo.lotterbach@bmw-carit.de>2012-10-02 01:19:01 -0700
commitf78fa2463b0148da4b3be6e8042ea2c52f5a00b6 (patch)
tree637878f62356431d811eb6377965b52e0b5fc11f /LayerManagerCommands
parent553aaf34ffb9d95761ea3cb874eea8201da12d40 (diff)
downloadlayer_management-f78fa2463b0148da4b3be6e8042ea2c52f5a00b6.tar.gz
LayerManagerCommands: enabled notifications for surface and layer property changes
Commands that change properties of layers or surfaces now add notifications to the list of notifications.
Diffstat (limited to 'LayerManagerCommands')
-rw-r--r--LayerManagerCommands/src/LayerSetDestinationRectangleCommand.cpp13
-rw-r--r--LayerManagerCommands/src/LayerSetDimensionCommand.cpp10
-rw-r--r--LayerManagerCommands/src/LayerSetOpacityCommand.cpp10
-rw-r--r--LayerManagerCommands/src/LayerSetOrientationCommand.cpp10
-rw-r--r--LayerManagerCommands/src/LayerSetPositionCommand.cpp12
-rw-r--r--LayerManagerCommands/src/LayerSetSourceRectangleCommand.cpp10
-rw-r--r--LayerManagerCommands/src/LayerSetTypeCommand.cpp9
-rw-r--r--LayerManagerCommands/src/LayerSetVisibilityCommand.cpp10
-rw-r--r--LayerManagerCommands/src/SurfaceSetDestinationRectangleCommand.cpp20
-rw-r--r--LayerManagerCommands/src/SurfaceSetDimensionCommand.cpp11
-rw-r--r--LayerManagerCommands/src/SurfaceSetOpacityCommand.cpp10
-rw-r--r--LayerManagerCommands/src/SurfaceSetOrientationCommand.cpp10
-rw-r--r--LayerManagerCommands/src/SurfaceSetPositionCommand.cpp22
-rw-r--r--LayerManagerCommands/src/SurfaceSetSourceRectangleCommand.cpp18
-rw-r--r--LayerManagerCommands/src/SurfaceSetVisibilityCommand.cpp10
15 files changed, 153 insertions, 32 deletions
diff --git a/LayerManagerCommands/src/LayerSetDestinationRectangleCommand.cpp b/LayerManagerCommands/src/LayerSetDestinationRectangleCommand.cpp
index d051278..2af7285 100644
--- a/LayerManagerCommands/src/LayerSetDestinationRectangleCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetDestinationRectangleCommand.cpp
@@ -42,8 +42,17 @@ ExecutionResult LayerSetDestinationRectangleCommand::execute(ICommandExecutor* e
if (layer)
{
const Rectangle rectangle(m_x, m_y, m_width, m_height);
- result = layer->setDestinationRegion(rectangle) ? ExecutionSuccessRedraw : ExecutionSuccess;
- layer->applySurfaceTransform();
+ if (layer->setDestinationRegion(rectangle))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_DEST_RECT);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
+
+ layer->applySurfaceTransform();
}
return result;
diff --git a/LayerManagerCommands/src/LayerSetDimensionCommand.cpp b/LayerManagerCommands/src/LayerSetDimensionCommand.cpp
index 1ef8d49..e7389b7 100644
--- a/LayerManagerCommands/src/LayerSetDimensionCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetDimensionCommand.cpp
@@ -38,7 +38,15 @@ ExecutionResult LayerSetDimensionCommand::execute(ICommandExecutor* executor)
if (layer)
{
- result = layer->setDimension(m_width, m_height) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setDimension(m_width, m_height))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_DEST_RECT);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
layer->applySurfaceTransform();
}
diff --git a/LayerManagerCommands/src/LayerSetOpacityCommand.cpp b/LayerManagerCommands/src/LayerSetOpacityCommand.cpp
index ca017f2..71bb1bc 100644
--- a/LayerManagerCommands/src/LayerSetOpacityCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetOpacityCommand.cpp
@@ -38,7 +38,15 @@ ExecutionResult LayerSetOpacityCommand::execute(ICommandExecutor* executor)
if (layer)
{
LOG_DEBUG("LayerSetOpacityCommand","new opacity " << m_opacity << " for id: " << m_id);
- result = layer->setOpacity(m_opacity) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setOpacity(m_opacity))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_OPACITY);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/LayerSetOrientationCommand.cpp b/LayerManagerCommands/src/LayerSetOrientationCommand.cpp
index 8ad8d66..533e309 100644
--- a/LayerManagerCommands/src/LayerSetOrientationCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetOrientationCommand.cpp
@@ -37,7 +37,15 @@ ExecutionResult LayerSetOrientationCommand::execute(ICommandExecutor* executor)
if (layer)
{
- result = layer->setOrientation(m_orientation) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setOrientation(m_orientation))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_ORIENTATION);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/LayerSetPositionCommand.cpp b/LayerManagerCommands/src/LayerSetPositionCommand.cpp
index cece2f3..a4b2957 100644
--- a/LayerManagerCommands/src/LayerSetPositionCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetPositionCommand.cpp
@@ -38,8 +38,16 @@ ExecutionResult LayerSetPositionCommand::execute(ICommandExecutor* executor)
if (layer)
{
- result = layer->setPosition(m_x, m_y) ? ExecutionSuccessRedraw : ExecutionSuccess;
- layer->applySurfaceTransform();
+ if (layer->setPosition(m_x, m_y))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_DEST_RECT);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
+ layer->applySurfaceTransform();
}
return result;
}
diff --git a/LayerManagerCommands/src/LayerSetSourceRectangleCommand.cpp b/LayerManagerCommands/src/LayerSetSourceRectangleCommand.cpp
index a81dfe2..7ea3e81 100644
--- a/LayerManagerCommands/src/LayerSetSourceRectangleCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetSourceRectangleCommand.cpp
@@ -41,7 +41,15 @@ ExecutionResult LayerSetSourceRectangleCommand::execute(ICommandExecutor* execut
if (layer)
{
const Rectangle rectangle(m_x, m_y, m_width, m_height);
- result = layer->setSourceRegion(rectangle) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setSourceRegion(rectangle))
+ {
+ result = ExecutionSuccessRedraw;
+ executor->addClientNotification(layer, ILM_NOTIFICATION_SOURCE_RECT);
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
layer->applySurfaceTransform();
}
diff --git a/LayerManagerCommands/src/LayerSetTypeCommand.cpp b/LayerManagerCommands/src/LayerSetTypeCommand.cpp
index 403dd5d..aa6f26c 100644
--- a/LayerManagerCommands/src/LayerSetTypeCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetTypeCommand.cpp
@@ -40,7 +40,14 @@ ExecutionResult LayerSetTypeCommand::execute(ICommandExecutor* executor)
if (layer)
{
LOG_DEBUG("LayerSetTypeCommand", "setting type: " << m_layerType << " of layer id " << m_idtoSet);
- result = layer->setLayerType(m_layerType) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setLayerType(m_layerType))
+ {
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/LayerSetVisibilityCommand.cpp b/LayerManagerCommands/src/LayerSetVisibilityCommand.cpp
index 00cf53a..76d164d 100644
--- a/LayerManagerCommands/src/LayerSetVisibilityCommand.cpp
+++ b/LayerManagerCommands/src/LayerSetVisibilityCommand.cpp
@@ -38,7 +38,15 @@ ExecutionResult LayerSetVisibilityCommand::execute(ICommandExecutor* executor)
if (layer)
{
LOG_DEBUG("LayerSetVisibilityCommand", "setting visibility: " << m_visibility << " of id " << m_idtoSet);
- result = layer->setVisibility(m_visibility) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (layer->setVisibility(m_visibility))
+ {
+ executor->addClientNotification(layer, ILM_NOTIFICATION_VISIBILITY);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/SurfaceSetDestinationRectangleCommand.cpp b/LayerManagerCommands/src/SurfaceSetDestinationRectangleCommand.cpp
index bf9c1e9..472ac25 100644
--- a/LayerManagerCommands/src/SurfaceSetDestinationRectangleCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetDestinationRectangleCommand.cpp
@@ -38,15 +38,23 @@ ExecutionResult SurfaceSetDestinationRectangleCommand::execute(ICommandExecutor*
ExecutionResult result = ExecutionFailed;
Surface* surface = scene.getSurface(m_id);
- if (surface)
+ if (surface)
{
- unsigned int layerid = surface->getContainingLayerId();
+ unsigned int layerid = surface->getContainingLayerId();
const Rectangle rectangle(m_x, m_y, m_width, m_height);
- result = surface->setDestinationRegion(rectangle) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (surface->setDestinationRegion(rectangle))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_DEST_RECT);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
if ( layerid != Surface::INVALID_ID )
- {
- surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
- }
+ {
+ surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
+ }
}
return result;
diff --git a/LayerManagerCommands/src/SurfaceSetDimensionCommand.cpp b/LayerManagerCommands/src/SurfaceSetDimensionCommand.cpp
index 024bf8b..c636c81 100644
--- a/LayerManagerCommands/src/SurfaceSetDimensionCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetDimensionCommand.cpp
@@ -38,7 +38,16 @@ ExecutionResult SurfaceSetDimensionCommand::execute(ICommandExecutor* executor)
if (surface)
{
unsigned int layerid = surface->getContainingLayerId();
- result = surface->setDimension(m_width, m_height) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if(surface->setDimension(m_width, m_height))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_DEST_RECT);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
+
if ( layerid != Surface::INVALID_ID )
{
surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
diff --git a/LayerManagerCommands/src/SurfaceSetOpacityCommand.cpp b/LayerManagerCommands/src/SurfaceSetOpacityCommand.cpp
index 76bcb3d..d3ccdae 100644
--- a/LayerManagerCommands/src/SurfaceSetOpacityCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetOpacityCommand.cpp
@@ -38,7 +38,15 @@ ExecutionResult SurfaceSetOpacityCommand::execute(ICommandExecutor* executor)
if (surface)
{
LOG_DEBUG("SurfaceSetOpacityCommand","new opacity " << m_opacity << " for id: " << m_id);
- result = surface->setOpacity(m_opacity) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (surface->setOpacity(m_opacity))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_OPACITY);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/SurfaceSetOrientationCommand.cpp b/LayerManagerCommands/src/SurfaceSetOrientationCommand.cpp
index 4f67f10..091dfa4 100644
--- a/LayerManagerCommands/src/SurfaceSetOrientationCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetOrientationCommand.cpp
@@ -37,7 +37,15 @@ ExecutionResult SurfaceSetOrientationCommand::execute(ICommandExecutor* executor
if (surface)
{
- result = surface->setOrientation(m_orientation) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (surface->setOrientation(m_orientation))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_ORIENTATION);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;
diff --git a/LayerManagerCommands/src/SurfaceSetPositionCommand.cpp b/LayerManagerCommands/src/SurfaceSetPositionCommand.cpp
index 86b8cee..eb52893 100644
--- a/LayerManagerCommands/src/SurfaceSetPositionCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetPositionCommand.cpp
@@ -35,15 +35,23 @@ ExecutionResult SurfaceSetPositionCommand::execute(ICommandExecutor* executor)
ExecutionResult result = ExecutionFailed;
Surface* surface = scene.getSurface(m_id);
-
+
if (surface)
{
- unsigned int layerid = surface->getContainingLayerId();
- result = surface->setPosition(m_x, m_y) ? ExecutionSuccessRedraw : ExecutionSuccess;
- if ( layerid != Surface::INVALID_ID )
- {
- surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
- }
+ unsigned int layerid = surface->getContainingLayerId();
+ if (surface->setPosition(m_x, m_y))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_DEST_RECT);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
+ if (layerid != Surface::INVALID_ID)
+ {
+ surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
+ }
}
return result;
}
diff --git a/LayerManagerCommands/src/SurfaceSetSourceRectangleCommand.cpp b/LayerManagerCommands/src/SurfaceSetSourceRectangleCommand.cpp
index 11533ee..5bce5a6 100644
--- a/LayerManagerCommands/src/SurfaceSetSourceRectangleCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetSourceRectangleCommand.cpp
@@ -39,13 +39,21 @@ ExecutionResult SurfaceSetSourceRectangleCommand::execute(ICommandExecutor* exec
Surface* surface = scene.getSurface(m_id);
if (surface)
{
- unsigned int layerid = surface->getContainingLayerId();
+ unsigned int layerid = surface->getContainingLayerId();
const Rectangle rectangle(m_x, m_y, m_width, m_height);
- result = surface->setSourceRegion(rectangle) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (surface->setSourceRegion(rectangle))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_SOURCE_RECT);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
if ( layerid != Surface::INVALID_ID )
- {
- surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
- }
+ {
+ surface->calculateTargetDestination(scene.getLayer(layerid)->getSourceRegion(),scene.getLayer(layerid)->getDestinationRegion());
+ }
}
return result;
diff --git a/LayerManagerCommands/src/SurfaceSetVisibilityCommand.cpp b/LayerManagerCommands/src/SurfaceSetVisibilityCommand.cpp
index 784d95f..be63343 100644
--- a/LayerManagerCommands/src/SurfaceSetVisibilityCommand.cpp
+++ b/LayerManagerCommands/src/SurfaceSetVisibilityCommand.cpp
@@ -38,7 +38,15 @@ ExecutionResult SurfaceSetVisibilityCommand::execute(ICommandExecutor* executor)
if (surface)
{
LOG_DEBUG("SurfaceSetVisibilityCommand", "setting visibility: " << m_visibility << " of id " << m_idtoSet);
- result = surface->setVisibility(m_visibility) ? ExecutionSuccessRedraw : ExecutionSuccess;
+ if (surface->setVisibility(m_visibility))
+ {
+ executor->addClientNotification(surface, ILM_NOTIFICATION_VISIBILITY);
+ result = ExecutionSuccessRedraw;
+ }
+ else
+ {
+ result = ExecutionSuccess;
+ }
}
return result;