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);
    }
Exemple #4
0
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;
}