void CircleDistance::setPosition(const Point2i& rPosition) { Vector2f pointPFloat(float(rPosition.getX()), float(rPosition.getY())); Vector2f vecRaduis(pointPFloat - m_pointCenter); m_position = rPosition; m_distanceSquaredFromCenter = vecRaduis.getLengthSquared(); }
/* Public */ RubBrowserControls::RubBrowserControls(const Point2i &position, const Point2i &dimensions) : BrowserControls(position, dimensions) { int px = position.getX(); int py = position.getY(); int dx = dimensions.getX() - CONTROL_BAR_HEIGHT; int dy = dimensions.getY(); bx = getSizef(dx); by = getSizef(dy); px += dx; dy = CONTROL_BAR_HEIGHT; exit = new ExitButton(Point2i(px, py), Point2i(dy, dy)); exit->setClickedCallback(MakeDelegate(this, &RubBrowserControls::exit_Clicked)); registerEventHandler(exit); }
/* Public */ Camera::Camera(const Point2i &position, const Point2i &dimensions, const Point2i &frameDimensions, const Point2i &textureDimensions) : UIElement(position, dimensions) { this->frameDimensions = frameDimensions; int px = position.getX(); int py = position.getY() + dimensions.getY() - CONTROL_BAR_HEIGHT; int dx = dimensions.getX() - 125; int dy = CONTROL_BAR_HEIGHT; controls = new CameraControls(Point2i(px, py), Point2i(dx, dy)); controls->setClickedCallback(MakeDelegate(this, &Camera::controls_Clicked)); registerEventHandler(controls); mode = new ModeToggle(Point2i(dx, py), Point2i(125, dy), "switch_slide.png", "switch_rub.png"); mode->setClickedCallback(MakeDelegate(this, &Camera::mode_Clicked)); registerEventHandler(mode); GLfloat data[12] = { 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, 0.0f }; float u0 = 0.0f; float u1 = (float)frameDimensions.getX() / (float)textureDimensions.getX(); float v0 = 0.0f;// float v1 = (float)frameDimensions.getY() / (float)textureDimensions.getY(); GLfloat textureData[8] = { u0, v1, u1, v1, u0, v0, u1, v0 }; vbo = new GLVbo(GL_TRIANGLE_STRIP, GL_STATIC_DRAW, data, 4, textureData); }
void toggleFullscreen(void) { if(fullscreen) { glutReshapeWindow(savedWinDims.getX(), savedWinDims.getY()); glutPositionWindow(savedWinPos.getX(), savedWinPos.getY()); } else { unsigned int w = glutGet(GLUT_WINDOW_WIDTH); unsigned int h = glutGet(GLUT_WINDOW_HEIGHT); unsigned int x = glutGet(GLUT_WINDOW_X); unsigned int y = glutGet(GLUT_WINDOW_Y); savedWinDims.setX(w); savedWinDims.setY(h); savedWinPos.setX(x); savedWinPos.setY(y); glutFullScreen(); } fullscreen = !fullscreen; }