diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2013-03-22 14:14:17 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2013-03-22 14:14:17 (GMT) |
| commit | 9abe51526cac2634af0541c3de69834dd30e9f78 (patch) | |
| tree | 6ae4deadfe00a83094b9d288d8c11d8ce823577a /src/render | |
| parent | 2c311b9a36a88fadd96f3d39acb1ab2590835d81 (diff) | |
| download | powder-9abe51526cac2634af0541c3de69834dd30e9f78.zip powder-9abe51526cac2634af0541c3de69834dd30e9f78.tar.gz | |
Move all GUI source files into gui/
Diffstat (limited to 'src/render')
| -rw-r--r-- | src/render/RenderController.cpp | 67 | ||||
| -rw-r--r-- | src/render/RenderController.h | 29 | ||||
| -rw-r--r-- | src/render/RenderModel.cpp | 135 | ||||
| -rw-r--r-- | src/render/RenderModel.h | 35 | ||||
| -rw-r--r-- | src/render/RenderView.cpp | 401 | ||||
| -rw-r--r-- | src/render/RenderView.h | 43 |
6 files changed, 0 insertions, 710 deletions
diff --git a/src/render/RenderController.cpp b/src/render/RenderController.cpp deleted file mode 100644 index 7b60e97..0000000 --- a/src/render/RenderController.cpp +++ /dev/null @@ -1,67 +0,0 @@ -#include "RenderController.h" - -RenderController::RenderController(Renderer * ren, ControllerCallback * callback): - HasExited(false) -{ - renderView = new RenderView(); - renderModel = new RenderModel(); - - renderView->AttachController(this); - renderModel->AddObserver(renderView); - - renderModel->SetRenderer(ren); - this->callback = callback; -} - -void RenderController::SetRenderMode(unsigned int renderMode) -{ - renderModel->SetRenderMode(renderMode); -} - -void RenderController::UnsetRenderMode(unsigned int renderMode) -{ - renderModel->UnsetRenderMode(renderMode); -} - -void RenderController::SetDisplayMode(unsigned int renderMode) -{ - renderModel->SetDisplayMode(renderMode); -} - -void RenderController::UnsetDisplayMode(unsigned int renderMode) -{ - renderModel->UnsetDisplayMode(renderMode); -} - -void RenderController::SetColourMode(unsigned int renderMode) -{ - renderModel->SetColourMode(renderMode); -} - -void RenderController::LoadRenderPreset(int presetNum) -{ - renderModel->LoadRenderPreset(presetNum); -} - -void RenderController::Exit() -{ - if(ui::Engine::Ref().GetWindow() == renderView) - { - ui::Engine::Ref().CloseWindow(); - } - if(callback) - callback->ControllerExit(); - HasExited = true; -} - -RenderController::~RenderController() { - if(ui::Engine::Ref().GetWindow() == renderView) - { - ui::Engine::Ref().CloseWindow(); - } - if(callback) - delete callback; - delete renderModel; - delete renderView; -} - diff --git a/src/render/RenderController.h b/src/render/RenderController.h deleted file mode 100644 index 42adb65..0000000 --- a/src/render/RenderController.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef RENDERCONTROLLER_H_ -#define RENDERCONTROLLER_H_ - -#include "RenderView.h" -#include "RenderModel.h" -#include "graphics/Renderer.h" -#include "Controller.h" - -class RenderView; -class RenderModel; -class RenderController { - RenderView * renderView; - RenderModel * renderModel; - ControllerCallback * callback; -public: - bool HasExited; - RenderController(Renderer * ren, ControllerCallback * callback = NULL); - void Exit(); - RenderView * GetView() { return renderView; } - virtual ~RenderController(); - void SetRenderMode(unsigned int renderMode); - void UnsetRenderMode(unsigned int renderMode); - void SetDisplayMode(unsigned int renderMode); - void UnsetDisplayMode(unsigned int renderMode); - void SetColourMode(unsigned int renderMode); - void LoadRenderPreset(int presetNum); -}; - -#endif /* RENDERCONTROLLER_H_ */ diff --git a/src/render/RenderModel.cpp b/src/render/RenderModel.cpp deleted file mode 100644 index b17f6fc..0000000 --- a/src/render/RenderModel.cpp +++ /dev/null @@ -1,135 +0,0 @@ -#include "RenderModel.h" - -RenderModel::RenderModel(): - renderer(NULL) -{ - -} - -void RenderModel::AddObserver(RenderView * observer) -{ - observers.push_back(observer); - observer->NotifyRendererChanged(this); - observer->NotifyRenderChanged(this); - observer->NotifyDisplayChanged(this); - observer->NotifyColourChanged(this); -} - -void RenderModel::SetRenderMode(unsigned int renderMode) -{ - if(renderer) - renderer->AddRenderMode(renderMode); - notifyRenderChanged(); -} - -void RenderModel::UnsetRenderMode(unsigned int renderMode) -{ - if(renderer) - renderer->RemoveRenderMode(renderMode); - notifyRenderChanged(); -} - -unsigned int RenderModel::GetRenderMode() -{ - if(renderer) - return renderer->render_mode; - else - return 0; -} - -void RenderModel::SetDisplayMode(unsigned int displayMode) -{ - if(renderer) - renderer->AddDisplayMode(displayMode); - notifyDisplayChanged(); -} - -void RenderModel::UnsetDisplayMode(unsigned int displayMode) -{ - if(renderer) - renderer->RemoveDisplayMode(displayMode); - notifyDisplayChanged(); -} - -unsigned int RenderModel::GetDisplayMode() -{ - if(renderer) - return renderer->display_mode; - else - return 0; -} - -void RenderModel::SetColourMode(unsigned int colourMode) -{ - if(renderer) - renderer->SetColourMode(colourMode); - notifyColourChanged(); -} - -unsigned int RenderModel::GetColourMode() -{ - if(renderer) - return renderer->colour_mode; - else - return 0; -} - -void RenderModel::LoadRenderPreset(int presetNum) -{ - RenderPreset preset = renderer->renderModePresets[presetNum]; - renderer->SetRenderMode(preset.RenderModes); - renderer->SetDisplayMode(preset.DisplayModes); - renderer->SetColourMode(preset.ColourMode); - notifyRenderChanged(); - notifyDisplayChanged(); - notifyColourChanged(); -} - -void RenderModel::SetRenderer(Renderer * ren) -{ - renderer = ren; - notifyRendererChanged(); - notifyRenderChanged(); - notifyDisplayChanged(); - notifyColourChanged(); -} - -Renderer * RenderModel::GetRenderer() -{ - return renderer; -} - -void RenderModel::notifyRendererChanged() -{ - for(int i = 0; i < observers.size(); i++) - { - observers[i]->NotifyRendererChanged(this); - } -} - -void RenderModel::notifyRenderChanged() -{ - for(int i = 0; i < observers.size(); i++) - { - observers[i]->NotifyRenderChanged(this); - } -} - -void RenderModel::notifyDisplayChanged() -{ - for(int i = 0; i < observers.size(); i++) - { - observers[i]->NotifyDisplayChanged(this); - } -} - -void RenderModel::notifyColourChanged() -{ - for(int i = 0; i < observers.size(); i++) - { - observers[i]->NotifyColourChanged(this); - } -} - -RenderModel::~RenderModel() { -} diff --git a/src/render/RenderModel.h b/src/render/RenderModel.h deleted file mode 100644 index 2cd24a5..0000000 --- a/src/render/RenderModel.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef RENDERMODEL_H_ -#define RENDERMODEL_H_ - -#include <vector> -#include "RenderView.h" -#include "graphics/Renderer.h" - -using namespace std; - -class RenderView; -class RenderModel { - vector<RenderView*> observers; - Renderer * renderer; - void notifyRendererChanged(); - void notifyRenderChanged(); - void notifyDisplayChanged(); - void notifyColourChanged(); -public: - RenderModel(); - Renderer * GetRenderer(); - void AddObserver(RenderView * observer); - void SetRenderer(Renderer * ren); - void SetRenderMode(unsigned int renderMode); - void UnsetRenderMode(unsigned int renderMode); - unsigned int GetRenderMode(); - void SetDisplayMode(unsigned int displayMode); - void UnsetDisplayMode(unsigned int displayMode); - unsigned int GetDisplayMode(); - void SetColourMode(unsigned int colourMode); - unsigned int GetColourMode(); - void LoadRenderPreset(int presetNum); - virtual ~RenderModel(); -}; - -#endif /* RENDERMODEL_H_ */ diff --git a/src/render/RenderView.cpp b/src/render/RenderView.cpp deleted file mode 100644 index 508ff47..0000000 --- a/src/render/RenderView.cpp +++ /dev/null @@ -1,401 +0,0 @@ -#include "simulation/ElementGraphics.h" -#include "graphics/Graphics.h" -#include "graphics/Renderer.h" -#include "RenderView.h" - -class RenderView::RenderModeAction: public ui::CheckboxAction -{ - RenderView * v; -public: - unsigned int renderMode; - RenderModeAction(RenderView * v_, unsigned int renderMode_) - { - v = v_; - renderMode = renderMode_; - } - virtual void ActionCallback(ui::Checkbox * sender) - { - if(sender->GetChecked()) - v->c->SetRenderMode(renderMode); - else - v->c->UnsetRenderMode(renderMode); - } -}; - -class RenderView::DisplayModeAction: public ui::CheckboxAction -{ - RenderView * v; -public: - unsigned int displayMode; - DisplayModeAction(RenderView * v_, unsigned int displayMode_) - { - v = v_; - displayMode = displayMode_; - } - virtual void ActionCallback(ui::Checkbox * sender) - { - if(sender->GetChecked()) - v->c->SetDisplayMode(displayMode); - else - v->c->UnsetDisplayMode(displayMode); - } -}; - -class RenderView::ColourModeAction: public ui::CheckboxAction -{ - RenderView * v; -public: - unsigned int colourMode; - ColourModeAction(RenderView * v_, unsigned int colourMode_) - { - v = v_; - colourMode = colourMode_; - } - virtual void ActionCallback(ui::Checkbox * sender) - { - if(sender->GetChecked()) - v->c->SetColourMode(colourMode); - else - v->c->SetColourMode(0); - } -}; - -class RenderView::RenderPresetAction: public ui::ButtonAction -{ - RenderView * v; -public: - int renderPreset; - RenderPresetAction(RenderView * v_, int renderPreset_) - { - v = v_; - renderPreset = renderPreset_; - } - virtual void ActionCallback(ui::Button * sender) - { - v->c->LoadRenderPreset(renderPreset); - } -}; - -RenderView::RenderView(): - ui::Window(ui::Point(0, 0), ui::Point(XRES, YRES+MENUSIZE)), - toolTip(""), - toolTipPresence(0), - ren(NULL) -{ - ui::Button * presetButton; - int presetButtonOffset = 375; - int checkboxOffset = 1; - int cSpace = 32; - int sSpace = 38; - - presetButton = new ui::Button(ui::Point(presetButtonOffset+200, YRES+6), ui::Point(30, 13), "", "Velocity display mode preset"); - presetButton->SetIcon(IconVelocity); - presetButton->SetActionCallback(new RenderPresetAction(this, 1)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+200, YRES+6+18), ui::Point(30, 13), "", "Pressure display mode preset"); - presetButton->SetIcon(IconPressure); - presetButton->SetActionCallback(new RenderPresetAction(this, 2)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+161, YRES+6), ui::Point(30, 13), "", "Persistent display mode preset"); - presetButton->SetIcon(IconPersistant); - presetButton->SetActionCallback(new RenderPresetAction(this, 3)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+161, YRES+6+18), ui::Point(30, 13), "", "Fire display mode preset"); - presetButton->SetIcon(IconFire); - presetButton->SetActionCallback(new RenderPresetAction(this, 4)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+122, YRES+6), ui::Point(30, 13), "", "Blob display mode preset"); - presetButton->SetIcon(IconBlob); - presetButton->SetActionCallback(new RenderPresetAction(this, 5)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+122, YRES+6+18), ui::Point(30, 13), "", "Heat display mode preset"); - presetButton->SetIcon(IconHeat); - presetButton->SetActionCallback(new RenderPresetAction(this, 6)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+83, YRES+6), ui::Point(30, 13), "", "Fancy display mode preset"); - presetButton->SetIcon(IconBlur); - presetButton->SetActionCallback(new RenderPresetAction(this, 7)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+83, YRES+6+18), ui::Point(30, 13), "", "Nothing display mode preset"); - presetButton->SetIcon(IconBasic); - presetButton->SetActionCallback(new RenderPresetAction(this, 8)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+44, YRES+6), ui::Point(30, 13), "", "Heat gradient display mode preset"); - presetButton->SetIcon(IconGradient); - presetButton->SetActionCallback(new RenderPresetAction(this, 9)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+44, YRES+6+18), ui::Point(30, 13), "", "Alternative Velocity display mode preset"); - presetButton->SetIcon(IconAltAir); - presetButton->SetActionCallback(new RenderPresetAction(this, 0)); - AddComponent(presetButton); - - presetButton = new ui::Button(ui::Point(presetButtonOffset+5, YRES+6), ui::Point(30, 13), "", "Life display mode preset"); - presetButton->SetIcon(IconLife); - presetButton->SetActionCallback(new RenderPresetAction(this, 10)); - AddComponent(presetButton); - - ui::Checkbox * tCheckbox; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Effects", "Adds Special flare effects to some elements"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconEffect); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_EFFE)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Fire", "Fire effect for gasses"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconFire); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_FIRE)); - AddComponent(tCheckbox); - - checkboxOffset += cSpace; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Glow", "Glow effect on some elements"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconGlow); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_GLOW)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Blur", "Blur effect for liquids"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconBlur); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_BLUR)); - AddComponent(tCheckbox); - - checkboxOffset += cSpace; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Blob", "Makes everything be drawn like a blob"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconBlob); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_BLOB)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Point", "Basic rendering, without this, most things will be invisible"); - renderModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconBasic); - tCheckbox->SetActionCallback(new RenderModeAction(this, RENDER_BASC)); - AddComponent(tCheckbox); - - checkboxOffset += sSpace; - line1 = checkboxOffset-5; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Alt. Air", "Displays pressure as red and blue, and velocity as white"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconAltAir); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_AIRC)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Pressure", "Displays pressure, red is positive and blue is negative"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconPressure); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_AIRP)); - AddComponent(tCheckbox); - - checkboxOffset += cSpace; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Velocity", "Displays velocity and positive pressure: up/down adds blue, right/left adds red, still pressure adds green"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconVelocity); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_AIRV)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Air-heat", "Displays the temperature of the air like heat display does"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconHeat); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_AIRH)); - AddComponent(tCheckbox); - - /*tCheckbox = new ui::Checkbox(ui::Point(216, YRES+4), ui::Point(30, 16), "Air", ""); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconAltAir); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_AIR)); - AddComponent(tCheckbox);*/ - - checkboxOffset += sSpace; - line2 = checkboxOffset-5; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Warp", "Gravity lensing, Newtonian Gravity bends light with this on"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconWarp); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_WARP)); - AddComponent(tCheckbox); - -#ifdef OGLR - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Effect", "I don't know what this does..."); //I would remove the whole checkbox, but then there's a large empty space -#else - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Effect", "Does nothing"); -#endif - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconEffect); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_EFFE)); - AddComponent(tCheckbox); - - checkboxOffset += cSpace; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Persistent", "Element paths persist on the screen for a while"); - displayModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconPersistant); - tCheckbox->SetActionCallback(new DisplayModeAction(this, DISPLAY_PERS)); - AddComponent(tCheckbox); - - checkboxOffset += sSpace; - line3 = checkboxOffset-5; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Heat", "Displays temperatures of the elements, dark blue is coldest, pink is hottest"); - colourModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconHeat); - tCheckbox->SetActionCallback(new ColourModeAction(this, COLOUR_HEAT)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "Life", "Displays the life value of elements in greyscale gradients"); - colourModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconLife); - tCheckbox->SetActionCallback(new ColourModeAction(this, COLOUR_LIFE)); - AddComponent(tCheckbox); - - checkboxOffset += cSpace; - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4+18), ui::Point(30, 16), "H-Gradient", "Changes colors of elements slightly to show heat diffusing through them"); - colourModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconGradient); - tCheckbox->SetActionCallback(new ColourModeAction(this, COLOUR_GRAD)); - AddComponent(tCheckbox); - - tCheckbox = new ui::Checkbox(ui::Point(checkboxOffset, YRES+4), ui::Point(30, 16), "Basic", "No special effects at all for anything, overrides all other options and deco"); - colourModes.push_back(tCheckbox); - tCheckbox->SetIcon(IconBasic); - tCheckbox->SetActionCallback(new ColourModeAction(this, COLOUR_BASC)); - AddComponent(tCheckbox); - - checkboxOffset += sSpace; - line4 = checkboxOffset-5; -} - -void RenderView::OnMouseDown(int x, int y, unsigned button) -{ - if(x > XRES || y < YRES) - c->Exit(); -} - -void RenderView::NotifyRendererChanged(RenderModel * sender) -{ - ren = sender->GetRenderer(); -} - -void RenderView::NotifyRenderChanged(RenderModel * sender) -{ - for(int i = 0; i < renderModes.size(); i++) - { - if(renderModes[i]->GetActionCallback()) - { - //Compares bitmasks at the moment, this means that "Point" is always on when other options that depend on it are, this might confuse some users, TODO: get the full list and compare that? - RenderModeAction * action = (RenderModeAction *)(renderModes[i]->GetActionCallback()); - if(action->renderMode == (sender->GetRenderMode() & action->renderMode)) - { - renderModes[i]->SetChecked(true); - } - else - { - renderModes[i]->SetChecked(false); - } - } - } -} - -void RenderView::NotifyDisplayChanged(RenderModel * sender) -{ - for(int i = 0; i < displayModes.size(); i++) - { - if(displayModes[i]->GetActionCallback()) - { - DisplayModeAction * action = (DisplayModeAction *)(displayModes[i]->GetActionCallback()); - if(action->displayMode == (sender->GetDisplayMode() & action->displayMode)) - { - displayModes[i]->SetChecked(true); - } - else - { - displayModes[i]->SetChecked(false); - } - } - } -} - -void RenderView::NotifyColourChanged(RenderModel * sender) -{ - for(int i = 0; i < colourModes.size(); i++) - { - if(colourModes[i]->GetActionCallback()) - { - ColourModeAction * action = (ColourModeAction *)(colourModes[i]->GetActionCallback()); - if(action->colourMode == sender->GetColourMode()) - { - colourModes[i]->SetChecked(true); - } - else - { - colourModes[i]->SetChecked(false); - } - } - } -} - -void RenderView::OnDraw() -{ - Graphics * g = ui::Engine::Ref().g; - g->clearrect(-1, -1, XRES+BARSIZE+1, YRES+MENUSIZE+1); - if(ren) - { - ren->clearScreen(1.0f); - ren->RenderBegin(); - ren->RenderEnd(); - } - g->draw_line(0, YRES, XRES-1, YRES, 200, 200, 200, 255); - g->draw_line(line1, YRES, line1, YRES+MENUSIZE, 200, 200, 200, 255); - g->draw_line(line2, YRES, line2, YRES+MENUSIZE, 200, 200, 200, 255); - g->draw_line(line3, YRES, line3, YRES+MENUSIZE, 200, 200, 200, 255); - g->draw_line(line4, YRES, line4, YRES+MENUSIZE, 200, 200, 200, 255); - g->draw_line(XRES, 0, XRES, YRES+MENUSIZE, 255, 255, 255, 255); - if(toolTipPresence && toolTip.length()) - { - g->drawtext(6, Size.Y-MENUSIZE-12, (char*)toolTip.c_str(), 255, 255, 255, toolTipPresence>51?255:toolTipPresence*5); - } -} - -void RenderView::OnTick(float dt) -{ - if(toolTipPresence>0) - { - toolTipPresence -= int(dt)>0?int(dt):1; - if(toolTipPresence<0) - toolTipPresence = 0; - } -} - -void RenderView::OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt) -{ - if (shift && key == '1') - c->LoadRenderPreset(10); - else if(key >= '0' && key <= '9') - { - c->LoadRenderPreset(key-'0'); - } -} - -void RenderView::ToolTip(ui::Component * sender, ui::Point mousePosition, std::string toolTip) -{ - this->toolTip = toolTip; - toolTipPresence = 500; -} - -RenderView::~RenderView() { -} diff --git a/src/render/RenderView.h b/src/render/RenderView.h deleted file mode 100644 index 5da8c1d..0000000 --- a/src/render/RenderView.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef RENDERVIEW_H_ -#define RENDERVIEW_H_ - - -#include <vector> -#include "interface/Window.h" -#include "RenderController.h" -#include "RenderModel.h" -#include "graphics/Renderer.h" -#include "interface/Checkbox.h" -#include "interface/Button.h" - -class RenderController; -class RenderModel; -class RenderView: public ui::Window { - RenderController * c; - Renderer * ren; - std::vector<ui::Checkbox*> renderModes; - std::vector<ui::Checkbox*> displayModes; - std::vector<ui::Checkbox*> colourModes; - std::string toolTip; - int toolTipPresence; - int line1, line2, line3, line4; -public: - class RenderModeAction; - class DisplayModeAction; - class ColourModeAction; - class RenderPresetAction; - RenderView(); - void NotifyRendererChanged(RenderModel * sender); - void NotifyRenderChanged(RenderModel * sender); - void NotifyDisplayChanged(RenderModel * sender); - void NotifyColourChanged(RenderModel * sender); - void AttachController(RenderController * c_) { c = c_; } - void OnMouseDown(int x, int y, unsigned button); - virtual void OnDraw(); - virtual void OnTick(float dt); - virtual void OnKeyPress(int key, Uint16 character, bool shift, bool ctrl, bool alt); - virtual void ToolTip(ui::Component * sender, ui::Point mousePosition, std::string toolTip); - virtual ~RenderView(); -}; - -#endif /* RENDERVIEW_H_ */ |
