Exemplo n.º 1
0
void GrGpuGLFixed::resetContext() {
    INHERITED::resetContext();

    GR_GL(Disable(GR_GL_TEXTURE_2D));

    for (int s = 0; s < kNumStages; ++s) {
        setTextureUnit(s);
        GR_GL(EnableClientState(GR_GL_VERTEX_ARRAY));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_TEXTURE_ENV_MODE, GR_GL_COMBINE));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_COMBINE_RGB,   GR_GL_MODULATE));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_SRC0_RGB,      GR_GL_TEXTURE0+s));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_SRC1_RGB,      GR_GL_PREVIOUS));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_OPERAND1_RGB,  GR_GL_SRC_COLOR));

        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_COMBINE_ALPHA, GR_GL_MODULATE));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_SRC0_ALPHA, GR_GL_TEXTURE0+s));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_OPERAND0_ALPHA, GR_GL_SRC_ALPHA));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_SRC1_ALPHA, GR_GL_PREVIOUS));
        GR_GL(TexEnvi(GR_GL_TEXTURE_ENV, GR_GL_OPERAND1_ALPHA, GR_GL_SRC_ALPHA));

        // color oprand0 changes between GL_SRC_COLR and GL_SRC_ALPHA depending
        // upon whether we have a (premultiplied) RGBA texture or just an ALPHA
        // texture, e.g.:
        //glTexEnvi(GL_TEXTURE_ENV, GL_OPERAND0_RGB,  GL_SRC_COLOR);
        fHWRGBOperand0[s] = (TextureEnvRGBOperands) -1;
    }

    fHWGeometryState.fVertexLayout = 0;
    fHWGeometryState.fVertexOffset  = ~0;
    GR_GL(EnableClientState(GR_GL_VERTEX_ARRAY));
    GR_GL(DisableClientState(GR_GL_TEXTURE_COORD_ARRAY));
    GR_GL(ShadeModel(GR_GL_FLAT));
    GR_GL(DisableClientState(GR_GL_COLOR_ARRAY));

    GR_GL(PointSize(1.f));

    GrGLClearErr();
    fTextVerts = false;

    fBaseVertex = 0xffffffff;
}
Exemplo n.º 2
0
PointSize *PointSize::getOrCreate(bool programmable, GLfloat value)
{
    return getOrCreateImpl(PointSize(programmable, value));
}
Exemplo n.º 3
0
namespace Dali
{

// Default font parameters. Adaptor will choose default system parameters.
FontParameters DEFAULT_FONT_PARAMETERS( std::string( "" ), std::string( "" ), PointSize( 0.f ) );

PointSize::PointSize(float val)
: value(val)
{
}

PointSize::operator float() const
{
  return value;
}

bool PointSize::operator==( PointSize pointSize )
{
  return fabs( value - pointSize.value ) < GetRangedEpsilon( value, pointSize.value );
}

bool PointSize::operator!=( PointSize pointSize )
{
  return !( *this == pointSize );
}

PixelSize::PixelSize(unsigned int val)
: value(val)
{
}

PixelSize::operator unsigned int() const
{
  return value;
}

CapsHeight::CapsHeight(unsigned int val)
: value(val)
{
}

CapsHeight::operator unsigned int() const
{
  return value;
}

struct FontParameters::Impl
{
  Impl( const std::string& familyName, const std::string& style, float size )
  : mFamilyName( familyName ),
    mStyle( style ),
    mSize( size )
  {}

  std::string  mFamilyName;
  std::string  mStyle;
  float        mSize;       ///< font size in points.
};

FontParameters::FontParameters()
: mImpl( new FontParameters::Impl( std::string( "" ), std::string( "" ), PointSize( 0.f ) ) )
{
}

FontParameters::FontParameters( const std::string& familyName, const std::string& style, PointSize size )
: mImpl( new FontParameters::Impl( familyName, style, size ) )
{
}

FontParameters::FontParameters( const std::string& familyName, const std::string& style, PixelSize size )
: mImpl( new FontParameters::Impl( familyName, style, Font::PixelsToPoints( size ) ) )
{
}

FontParameters::FontParameters( const std::string& familyName, const std::string& style, CapsHeight size )
: mImpl( NULL )
{
  PixelSize pixelSize = Font::GetLineHeightFromCapsHeight( familyName, style, size );
  mImpl = new FontParameters::Impl( familyName, style, Font::PixelsToPoints( pixelSize ) );
}

FontParameters::~FontParameters()
{
  delete mImpl;
}

FontParameters::FontParameters( const FontParameters& parameters )
: mImpl( new FontParameters::Impl( parameters.mImpl->mFamilyName, parameters.mImpl->mStyle, parameters.mImpl->mSize ) )
{
}

FontParameters& FontParameters::operator=( const FontParameters& parameters )
{
  if( &parameters != this )
  {
    mImpl->mFamilyName = parameters.GetFamilyName();
    mImpl->mStyle = parameters.GetStyle();
    mImpl->mSize = parameters.GetSize();
  }
  return *this;
}

const std::string& FontParameters::GetFamilyName() const
{
  return mImpl->mFamilyName;
}

const std::string& FontParameters::GetStyle() const
{
  return mImpl->mStyle;
}

PointSize FontParameters::GetSize() const
{
  return PointSize( mImpl->mSize );
}

} // namespace Dali
Exemplo n.º 4
0
FontParameters::FontParameters()
: mImpl( new FontParameters::Impl( std::string( "" ), std::string( "" ), PointSize( 0.f ) ) )
{
}
Exemplo n.º 5
0
PointSize FontParameters::GetSize() const
{
  return PointSize( mImpl->mSize );
}