mirror of
https://github.com/devZoGok/vb01.git
synced 2026-08-26 19:43:30 +00:00
3D position coordinates
This commit is contained in:
+12
-21
@@ -12,9 +12,7 @@ using namespace std;
|
||||
using namespace vb01;
|
||||
|
||||
namespace vb01Gui{
|
||||
Slider::MovableSliderButton::MovableSliderButton(Slider *slider, Vector2 pos, Vector2 size, string name, bool separate) : Button(pos, size, name, "", -1, separate) {
|
||||
this->slider = slider;
|
||||
}
|
||||
Slider::MovableSliderButton::MovableSliderButton(Slider *sl, Vector3 pos, Vector2 size, string name, bool separate) : Button(pos, size, name, "", -1, separate), slider(sl) {}
|
||||
|
||||
void Slider::MovableSliderButton::onClick() {
|
||||
clicked = !clicked;
|
||||
@@ -33,9 +31,7 @@ namespace vb01Gui{
|
||||
}
|
||||
}
|
||||
|
||||
Slider::StaticSliderButton::StaticSliderButton(Slider *slider, Vector2 pos, Vector2 size, string name, bool separate) : Button(pos, size, name, "", -1, separate) {
|
||||
this->slider = slider;
|
||||
}
|
||||
Slider::StaticSliderButton::StaticSliderButton(Slider *sl, Vector3 pos, Vector2 size, string name, bool separate) : Button(pos, size, name, "", -1, separate), slider(sl) {}
|
||||
|
||||
void Slider::StaticSliderButton::onClick() {
|
||||
Vector2 cursorPos = getCursorPos();
|
||||
@@ -43,20 +39,14 @@ namespace vb01Gui{
|
||||
slider->setValue(((double) buttonClickPoint / slider->getSize().x) * slider->getMaxValue());
|
||||
}
|
||||
|
||||
Slider::Slider(Vector2 pos, Vector2 size, double minValue, double maxValue) {
|
||||
this->pos = pos;
|
||||
this->size = size;
|
||||
this->minValue = minValue;
|
||||
this->maxValue = maxValue;
|
||||
|
||||
Slider::Slider(Vector3 p, Vector2 s, double min, double max) : pos(p), size(s), minValue(min), maxValue(max) {
|
||||
staticSliderButton = new StaticSliderButton(this, pos, size, "StaticSliderButton", false);
|
||||
movableSliderButton = new MovableSliderButton(this, Vector2(pos.x + staticSliderButton->getSize().x / 1, pos.y - 15), Vector2(10, 40), "MovableSliderButton", false);
|
||||
movableSliderButton = new MovableSliderButton(this, pos + Vector3(staticSliderButton->getSize().x, -15, 0), Vector2(10, 40), "MovableSliderButton", false);
|
||||
|
||||
value = (maxValue - minValue) / 2;
|
||||
}
|
||||
|
||||
Slider::~Slider() {
|
||||
}
|
||||
Slider::~Slider() {}
|
||||
|
||||
void Slider::update() {
|
||||
if (value < minValue)
|
||||
@@ -64,15 +54,16 @@ namespace vb01Gui{
|
||||
else if (value > maxValue)
|
||||
value = maxValue;
|
||||
|
||||
Vector2 p = movableSliderButton->getPos(), s = movableSliderButton->getSize();
|
||||
Vector3 p = movableSliderButton->getPos();
|
||||
Vector2 s = movableSliderButton->getSize();
|
||||
p.x = pos.x + (double) size.x / maxValue * value;
|
||||
movableSliderButton->update();
|
||||
movableSliderButton->setPos(p);
|
||||
|
||||
if(textbox && !textbox->isEnabled()){
|
||||
ostringstream ss;
|
||||
ss << value;
|
||||
textbox->setEntry(stringToWstring(ss.str()));
|
||||
}
|
||||
if(textbox && !textbox->isEnabled()){
|
||||
ostringstream ss;
|
||||
ss << value;
|
||||
textbox->setEntry(stringToWstring(ss.str()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user