diff options
author | neoraider <devnull@localhost> | 2008-02-18 21:22:05 +0100 |
---|---|---|
committer | neoraider <devnull@localhost> | 2008-02-18 21:22:05 +0100 |
commit | 4c9b0f34f8ebd9cc5a00e49f39e7c9fddda08ec1 (patch) | |
tree | 75a46e2976c2d536957d7b50b5042cfcd6f94112 /Renderer.cpp | |
parent | 77b187b8eba7598fb6154da5d3d62ad0920eac15 (diff) | |
download | zoomedit-4c9b0f34f8ebd9cc5a00e49f39e7c9fddda08ec1.tar zoomedit-4c9b0f34f8ebd9cc5a00e49f39e7c9fddda08ec1.zip |
zoomedit: Added some features like hover filters and connectable vertices.
Diffstat (limited to 'Renderer.cpp')
-rw-r--r-- | Renderer.cpp | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/Renderer.cpp b/Renderer.cpp index c95779a..40150df 100644 --- a/Renderer.cpp +++ b/Renderer.cpp @@ -104,39 +104,39 @@ void Renderer::drawCross(const Vertex &m, float r) { glEnd(); } -void Renderer::renderObject(const LevelObject &object, bool selected, bool highlighted, float scale) { +void Renderer::renderObject(const LevelObject &object, bool selected, bool hovered, float scale) { if(object.isOfType("LevelVertex")) - renderLevelVertex(*(LevelVertex*)&object, selected, highlighted, scale); + renderLevelVertex(*(LevelVertex*)&object, selected, hovered, scale); else if(object.isOfType("LevelEdge")) - renderLevelEdge(*(LevelEdge*)&object, selected, highlighted, scale); + renderLevelEdge(*(LevelEdge*)&object, selected, hovered, scale); else if(object.isOfType("Room")) - renderRoom(*(Room*)&object, selected, highlighted, scale); + renderRoom(*(Room*)&object, selected, hovered, scale); else if(object.isOfType("PlayerStart")) - renderPlayerStart(*(PlayerStart*)&object, selected, highlighted, scale); + renderPlayerStart(*(PlayerStart*)&object, selected, hovered, scale); else if(object.isOfType("Portal")) - renderPortal(*(Portal*)&object, selected, highlighted, scale); + renderPortal(*(Portal*)&object, selected, hovered, scale); } -void Renderer::renderLevelVertex(const LevelVertex &vertex, bool selected, bool highlighted, float scale) { - if(!selected && !highlighted) return; +void Renderer::renderLevelVertex(const LevelVertex &vertex, bool selected, bool hovered, float scale) { + if(!selected && !hovered) return; glColor4f(0.0f, 0.0f, 0.0f, 1.0f); fillCircle(*vertex, 3.5f/scale, 16); glLineWidth(1.0f); - if(highlighted) + if(hovered) glColor4f(1.0f, 0.9f, 0.0f, 0.9f); else glColor4f(1.0f, 0.7f, 0.0f, 0.9f); drawCircle(*vertex, 3.5f/scale, 16); } -void Renderer::renderLevelEdge(const LevelEdge &edge, bool selected, bool highlighted, float scale) { +void Renderer::renderLevelEdge(const LevelEdge &edge, bool selected, bool hovered, float scale) { if(selected) { glColor4f(1.0f, 1.0f, 1.0f, 0.9f); glLineWidth(2.0f); } - else if(highlighted) { + else if(hovered) { glColor4f(0.0f, 0.7f, 1.0f, 0.7f); glLineWidth(2.0f); } @@ -151,7 +151,7 @@ void Renderer::renderLevelEdge(const LevelEdge &edge, bool selected, bool highli glEnd(); } -void Renderer::renderRoom(const Room &room, bool selected, bool highlighted, float scale) { +void Renderer::renderRoom(const Room &room, bool selected, bool hovered, float scale) { if(selected) glColor4f(0.0f, 0.7f, 1.0f, 0.2f); else @@ -163,7 +163,7 @@ void Renderer::renderRoom(const Room &room, bool selected, bool highlighted, flo glColor4f(1.0f, 1.0f, 1.0f, 0.9f); glLineWidth(2.0f); } - else if(highlighted) { + else if(hovered) { glColor4f(0.0f, 0.7f, 1.0f, 0.7f); glLineWidth(2.0f); } @@ -175,12 +175,12 @@ void Renderer::renderRoom(const Room &room, bool selected, bool highlighted, flo drawPolygon(room.getPolygon()); } -void Renderer::renderPlayerStart(const PlayerStart &start, bool selected, bool highlighted, float scale) { +void Renderer::renderPlayerStart(const PlayerStart &start, bool selected, bool hovered, float scale) { if(selected) { glColor4f(1.0f, 1.0f, 1.0f, 0.9f); glLineWidth(2.0f); } - else if(highlighted) { + else if(hovered) { glColor4f(0.0f, 0.7f, 0.7f, 0.7f); glLineWidth(2.0f); } @@ -195,12 +195,12 @@ void Renderer::renderPlayerStart(const PlayerStart &start, bool selected, bool h drawCross(Vertex(start.getX(), start.getZ()), 0.5f/sqrtf(scale)); } -void Renderer::renderPortal(const Portal &portal, bool selected, bool highlighted, float scale) { +void Renderer::renderPortal(const Portal &portal, bool selected, bool hovered, float scale) { if(selected) { glColor4f(1.0f, 1.0f, 1.0f, 0.9f); glLineWidth(2.0f); } - else if(highlighted) { + else if(hovered) { glColor4f(0.0f, 0.7f, 0.7f, 0.7f); glLineWidth(2.0f); } @@ -242,6 +242,6 @@ void Renderer::render(const Level &level, const Rectangle &rect, float scale) { for(Level::const_iterator object = level.begin(); object != level.end(); object++) { renderObject(**object, (&**object == editManager->getSelectedObject()), - (&**object == editManager->getHighlightedObject()), scale); + (&**object == editManager->getHoveredObject()), scale); } } |