7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-14 13:29:35 +00:00

Mainly case changes.

This commit is contained in:
Maciej Suminski 2013-10-14 20:40:36 +02:00
parent 0ac3e1fbf2
commit bc305859b2
62 changed files with 1697 additions and 1617 deletions

View File

@ -325,7 +325,7 @@ void CAIRO_GAL::SetIsFill( bool aIsFillEnabled )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SET_FILL;
groupElement.boolArgument = aIsFillEnabled;
currentGroup->push_back( groupElement );
@ -340,7 +340,7 @@ void CAIRO_GAL::SetIsStroke( bool aIsStrokeEnabled )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SET_STROKE;
groupElement.boolArgument = aIsStrokeEnabled;
currentGroup->push_back( groupElement );
@ -355,7 +355,7 @@ void CAIRO_GAL::SetStrokeColor( const COLOR4D& aColor )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SET_STROKECOLOR;
groupElement.arguments[0] = strokeColor.r;
groupElement.arguments[1] = strokeColor.g;
@ -373,7 +373,7 @@ void CAIRO_GAL::SetFillColor( const COLOR4D& aColor )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SET_FILLCOLOR;
groupElement.arguments[0] = fillColor.r;
groupElement.arguments[1] = fillColor.g;
@ -392,7 +392,7 @@ void CAIRO_GAL::SetLineWidth( double aLineWidth )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SET_LINE_WIDTH;
groupElement.arguments[0] = aLineWidth;
currentGroup->push_back( groupElement );
@ -446,7 +446,7 @@ void CAIRO_GAL::Rotate( double aAngle )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_ROTATE;
groupElement.arguments[0] = aAngle;
currentGroup->push_back( groupElement );
@ -464,7 +464,7 @@ void CAIRO_GAL::Translate( const VECTOR2D& aTranslation )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_TRANSLATE;
groupElement.arguments[0] = aTranslation.x;
groupElement.arguments[1] = aTranslation.y;
@ -483,7 +483,7 @@ void CAIRO_GAL::Scale( const VECTOR2D& aScale )
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SCALE;
groupElement.arguments[0] = aScale.x;
groupElement.arguments[1] = aScale.y;
@ -502,7 +502,7 @@ void CAIRO_GAL::Save()
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_SAVE;
currentGroup->push_back( groupElement );
}
@ -519,7 +519,7 @@ void CAIRO_GAL::Restore()
if( isGrouping )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.command = CMD_RESTORE;
currentGroup->push_back( groupElement );
}
@ -538,7 +538,7 @@ int CAIRO_GAL::BeginGroup()
// a attribute was changed or when grouping stops with the end group method.
storePath();
Group group;
GROUP group;
int groupNumber = getNewGroupNumber();
groups.insert( std::make_pair( groupNumber, group ) );
currentGroup = &groups[groupNumber];
@ -564,7 +564,7 @@ void CAIRO_GAL::DrawGroup( int aGroupNumber )
storePath();
for( Group::iterator it = groups[aGroupNumber].begin();
for( GROUP::iterator it = groups[aGroupNumber].begin();
it != groups[aGroupNumber].end(); ++it )
{
switch( it->command )
@ -649,7 +649,7 @@ void CAIRO_GAL::ChangeGroupColor( int aGroupNumber, const COLOR4D& aNewColor )
{
storePath();
for( Group::iterator it = groups[aGroupNumber].begin();
for( GROUP::iterator it = groups[aGroupNumber].begin();
it != groups[aGroupNumber].end(); ++it )
{
if( it->command == CMD_SET_FILLCOLOR || it->command == CMD_SET_STROKECOLOR )
@ -675,7 +675,7 @@ void CAIRO_GAL::DeleteGroup( int aGroupNumber )
storePath();
// Delete the Cairo paths
std::deque<GroupElement>::iterator it, end;
std::deque<GROUP_ELEMENT>::iterator it, end;
for( it = groups[aGroupNumber].begin(), end = groups[aGroupNumber].end(); it != end; ++it )
{
@ -730,7 +730,7 @@ void CAIRO_GAL::RestoreScreen()
}
void CAIRO_GAL::SetTarget( RenderTarget aTarget )
void CAIRO_GAL::SetTarget( RENDER_TARGET aTarget )
{
// If the compositor is not set, that means that there is a recaching process going on
// and we do not need the compositor now
@ -766,13 +766,13 @@ void CAIRO_GAL::SetTarget( RenderTarget aTarget )
}
RenderTarget CAIRO_GAL::GetTarget() const
RENDER_TARGET CAIRO_GAL::GetTarget() const
{
return currentTarget;
}
void CAIRO_GAL::ClearTarget( RenderTarget aTarget )
void CAIRO_GAL::ClearTarget( RENDER_TARGET aTarget )
{
// Save the current state
unsigned int currentBuffer = compositor->GetBuffer();
@ -844,7 +844,7 @@ void CAIRO_GAL::storePath()
// add this command to the group list;
if( isStrokeEnabled )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.cairoPath = cairo_copy_path( currentContext );
groupElement.command = CMD_STROKE_PATH;
currentGroup->push_back( groupElement );
@ -852,7 +852,7 @@ void CAIRO_GAL::storePath()
if( isFillEnabled )
{
GroupElement groupElement;
GROUP_ELEMENT groupElement;
groupElement.cairoPath = cairo_copy_path( currentContext );
groupElement.command = CMD_FILL_PATH;
currentGroup->push_back( groupElement );

View File

@ -45,7 +45,7 @@ CACHED_CONTAINER::CACHED_CONTAINER( unsigned int aSize ) :
VERTEX_CONTAINER( aSize ), m_item( NULL )
{
// In the beginning there is only free space
m_freeChunks.insert( Chunk( aSize, 0 ) );
m_freeChunks.insert( CHUNK( aSize, 0 ) );
}
@ -80,7 +80,7 @@ void CACHED_CONTAINER::FinishItem()
int itemOffset = m_item->GetOffset();
// Add the not used memory back to the pool
m_freeChunks.insert( Chunk( m_chunkSize - m_itemSize, itemOffset + m_itemSize ) );
m_freeChunks.insert( CHUNK( m_chunkSize - m_itemSize, itemOffset + m_itemSize ) );
m_freeSpace += ( m_chunkSize - m_itemSize );
// mergeFreeChunks(); // veery slow and buggy
}
@ -152,7 +152,7 @@ void CACHED_CONTAINER::Delete( VERTEX_ITEM* aItem )
// Insert a free memory chunk entry in the place where item was stored
if( size > 0 )
{
m_freeChunks.insert( Chunk( size, offset ) );
m_freeChunks.insert( CHUNK( size, offset ) );
m_freeSpace += size;
// Indicate that the item is not stored in the container anymore
aItem->setSize( 0 );
@ -186,7 +186,7 @@ void CACHED_CONTAINER::Clear()
// Set the size of all the stored VERTEX_ITEMs to 0, so it is clear that they are not held
// in the container anymore
Items::iterator it;
ITEMS::iterator it;
for( it = m_items.begin(); it != m_items.end(); ++it )
{
@ -198,7 +198,7 @@ void CACHED_CONTAINER::Clear()
// Now there is only free space left
m_freeChunks.clear();
m_freeChunks.insert( Chunk( m_freeSpace, 0 ) );
m_freeChunks.insert( CHUNK( m_freeSpace, 0 ) );
}
@ -240,7 +240,7 @@ unsigned int CACHED_CONTAINER::reallocate( unsigned int aSize )
}
// Look for the free space chunk of at least given size
FreeChunkMap::iterator newChunk = m_freeChunks.lower_bound( aSize );
FREE_CHUNK_MAP::iterator newChunk = m_freeChunks.lower_bound( aSize );
if( newChunk == m_freeChunks.end() )
{
@ -277,7 +277,7 @@ unsigned int CACHED_CONTAINER::reallocate( unsigned int aSize )
// Free the space previously used by the chunk
wxASSERT( m_itemSize > 0 );
m_freeChunks.insert( Chunk( m_itemSize, m_chunkOffset ) );
m_freeChunks.insert( CHUNK( m_itemSize, m_chunkOffset ) );
m_freeSpace += m_itemSize;
}
@ -287,7 +287,7 @@ unsigned int CACHED_CONTAINER::reallocate( unsigned int aSize )
// If there is some space left, return it to the pool - add an entry for it
if( chunkSize > aSize )
{
m_freeChunks.insert( Chunk( chunkSize - aSize, chunkOffset + aSize ) );
m_freeChunks.insert( CHUNK( chunkSize - aSize, chunkOffset + aSize ) );
}
m_freeSpace -= aSize;
@ -321,7 +321,7 @@ bool CACHED_CONTAINER::defragment( VERTEX* aTarget )
}
int newOffset = 0;
Items::iterator it, it_end;
ITEMS::iterator it, it_end;
for( it = m_items.begin(), it_end = m_items.end(); it != it_end; ++it )
{
@ -345,7 +345,7 @@ bool CACHED_CONTAINER::defragment( VERTEX* aTarget )
// Now there is only one big chunk of free memory
m_freeChunks.clear();
wxASSERT( m_freeSpace > 0 );
m_freeChunks.insert( Chunk( m_freeSpace, m_currentSize - m_freeSpace ) );
m_freeChunks.insert( CHUNK( m_freeSpace, m_currentSize - m_freeSpace ) );
#if CACHED_CONTAINER_TEST > 0
prof_end( &totalTime );
@ -369,9 +369,9 @@ void CACHED_CONTAINER::mergeFreeChunks()
#endif
// Reversed free chunks map - this one stores chunk size with its offset as the key
std::list<Chunk> freeChunks;
std::list<CHUNK> freeChunks;
FreeChunkMap::const_iterator it, it_end;
FREE_CHUNK_MAP::const_iterator it, it_end;
for( it = m_freeChunks.begin(), it_end = m_freeChunks.end(); it != it_end; ++it )
{
@ -381,7 +381,7 @@ void CACHED_CONTAINER::mergeFreeChunks()
m_freeChunks.clear();
freeChunks.sort();
std::list<Chunk>::const_iterator itf, itf_end;
std::list<CHUNK>::const_iterator itf, itf_end;
unsigned int offset = freeChunks.front().first;
unsigned int size = freeChunks.front().second;
freeChunks.pop_front();
@ -449,7 +449,7 @@ bool CACHED_CONTAINER::resizeContainer( unsigned int aNewSize )
// We have to correct freeChunks after defragmentation
m_freeChunks.clear();
wxASSERT( aNewSize - reservedSpace() > 0 );
m_freeChunks.insert( Chunk( aNewSize - reservedSpace(), reservedSpace() ) );
m_freeChunks.insert( CHUNK( aNewSize - reservedSpace(), reservedSpace() ) );
}
else
{
@ -463,7 +463,7 @@ bool CACHED_CONTAINER::resizeContainer( unsigned int aNewSize )
}
// Add an entry for the new memory chunk at the end of the container
m_freeChunks.insert( Chunk( aNewSize - m_currentSize, m_currentSize ) );
m_freeChunks.insert( CHUNK( aNewSize - m_currentSize, m_currentSize ) );
}
m_vertices = newContainer;

View File

@ -691,7 +691,7 @@ void OPENGL_GAL::RestoreScreen()
}
void OPENGL_GAL::SetTarget( RenderTarget aTarget )
void OPENGL_GAL::SetTarget( RENDER_TARGET aTarget )
{
switch( aTarget )
{
@ -713,13 +713,13 @@ void OPENGL_GAL::SetTarget( RenderTarget aTarget )
}
RenderTarget OPENGL_GAL::GetTarget() const
RENDER_TARGET OPENGL_GAL::GetTarget() const
{
return currentTarget;
}
void OPENGL_GAL::ClearTarget( RenderTarget aTarget )
void OPENGL_GAL::ClearTarget( RENDER_TARGET aTarget )
{
// Save the current state
unsigned int oldTarget = compositor.GetBuffer();

View File

@ -63,7 +63,7 @@ SHADER::~SHADER()
}
bool SHADER::LoadBuiltinShader( unsigned int aShaderNumber, ShaderType aShaderType )
bool SHADER::LoadBuiltinShader( unsigned int aShaderNumber, SHADER_TYPE aShaderType )
{
if( aShaderNumber >= shaders_number )
return false;
@ -72,7 +72,7 @@ bool SHADER::LoadBuiltinShader( unsigned int aShaderNumber, ShaderType aShaderTy
}
bool SHADER::LoadShaderFromFile( const std::string& aShaderSourceName, ShaderType aShaderType )
bool SHADER::LoadShaderFromFile( const std::string& aShaderSourceName, SHADER_TYPE aShaderType )
{
// Load shader sources
const std::string shaderSource = readSource( aShaderSourceName );
@ -219,7 +219,7 @@ std::string SHADER::readSource( std::string aShaderSourceName )
}
bool SHADER::addSource( const std::string& aShaderSource, ShaderType aShaderType )
bool SHADER::addSource( const std::string& aShaderSource, SHADER_TYPE aShaderType )
{
if( isShaderLinked )
{

View File

@ -59,7 +59,7 @@ bool STROKE_FONT::LoadNewStrokeFont( const char* const aNewStrokeFont[], int aNe
for( int j = 0; j < aNewStrokeFontSize; j++ )
{
Glyph glyph;
GLYPH glyph;
double glyphStartX = 0.0;
double glyphEndX = 0.0;
VECTOR2D glyphBoundingX;
@ -118,21 +118,21 @@ bool STROKE_FONT::LoadNewStrokeFont( const char* const aNewStrokeFont[], int aNe
}
BOX2D STROKE_FONT::computeBoundingBox( const Glyph& aGlyph, const VECTOR2D& aGlyphBoundingX ) const
BOX2D STROKE_FONT::computeBoundingBox( const GLYPH& aGLYPH, const VECTOR2D& aGLYPHBoundingX ) const
{
BOX2D boundingBox;
std::deque<VECTOR2D> boundingPoints;
boundingPoints.push_back( VECTOR2D( aGlyphBoundingX.x, 0 ) );
boundingPoints.push_back( VECTOR2D( aGlyphBoundingX.y, 0 ) );
boundingPoints.push_back( VECTOR2D( aGLYPHBoundingX.x, 0 ) );
boundingPoints.push_back( VECTOR2D( aGLYPHBoundingX.y, 0 ) );
for( Glyph::const_iterator pointListIt = aGlyph.begin(); pointListIt != aGlyph.end(); ++pointListIt )
for( GLYPH::const_iterator pointListIt = aGLYPH.begin(); pointListIt != aGLYPH.end(); ++pointListIt )
{
for( std::deque<VECTOR2D>::const_iterator pointIt = pointListIt->begin();
pointIt != pointListIt->end(); ++pointIt )
{
boundingPoints.push_back( VECTOR2D( aGlyphBoundingX.x, pointIt->y ) );
boundingPoints.push_back( VECTOR2D( aGLYPHBoundingX.x, pointIt->y ) );
}
}
@ -241,15 +241,15 @@ void STROKE_FONT::Draw( std::string aText, const VECTOR2D& aPosition, double aRo
continue;
}
GlyphList::iterator glyphIt = m_glyphs.begin();
GLYPH_LIST::iterator glyphIt = m_glyphs.begin();
std::deque<BOX2D>::iterator bbIt = m_glyphBoundingBoxes.begin();
advance( glyphIt, (int) ( *chIt ) - (int) ' ' );
advance( bbIt, (int) ( *chIt ) - (int) ' ' );
Glyph glyph = *glyphIt;
GLYPH glyph = *glyphIt;
for( Glyph::iterator pointListIt = glyph.begin(); pointListIt != glyph.end();
for( GLYPH::iterator pointListIt = glyph.begin(); pointListIt != glyph.end();
pointListIt++ )
{
std::deque<VECTOR2D> pointListScaled;

View File

@ -22,28 +22,27 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <geometry/seg.h>
template<typename T>
int sgn( T val )
template <typename T>
int sgn( T aVal )
{
return ( T( 0 ) < val ) - ( val < T( 0 ) );
return ( T( 0 ) < aVal ) - ( aVal < T( 0 ) );
}
bool SEG::PointCloserThan( const VECTOR2I& aP, int dist ) const
bool SEG::PointCloserThan( const VECTOR2I& aP, int aDist ) const
{
VECTOR2I d = b - a;
ecoord dist_sq = (ecoord) dist * dist;
VECTOR2I d = B - A;
ecoord dist_sq = (ecoord) aDist * aDist;
SEG::ecoord l_squared = d.Dot( d );
SEG::ecoord t = d.Dot( aP - a );
SEG::ecoord t = d.Dot( aP - A );
if( t <= 0 || !l_squared )
return ( aP - a ).SquaredEuclideanNorm() < dist_sq;
return ( aP - A ).SquaredEuclideanNorm() < dist_sq;
else if( t >= l_squared )
return ( aP - b ).SquaredEuclideanNorm() < dist_sq;
return ( aP - B ).SquaredEuclideanNorm() < dist_sq;
int dxdy = abs( d.x ) - abs( d.y );
@ -51,7 +50,7 @@ bool SEG::PointCloserThan( const VECTOR2I& aP, int dist ) const
{
int ca = -sgn( d.y );
int cb = sgn( d.x );
int cc = -ca * a.x - cb * a.y;
int cc = -ca * A.x - cb * A.y;
ecoord num = ca * aP.x + cb * aP.y + cc;
num *= num;
@ -66,8 +65,8 @@ bool SEG::PointCloserThan( const VECTOR2I& aP, int dist ) const
}
VECTOR2I nearest;
nearest.x = a.x + rescale( t, (ecoord) d.x, l_squared );
nearest.y = a.y + rescale( t, (ecoord) d.y, l_squared );
nearest.x = A.x + rescale( t, (ecoord) d.x, l_squared );
nearest.y = A.y + rescale( t, (ecoord) d.y, l_squared );
return ( nearest - aP ).SquaredEuclideanNorm() <= dist_sq;
}
@ -81,10 +80,10 @@ SEG::ecoord SEG::SquaredDistance( const SEG& aSeg ) const
const VECTOR2I pts[4] =
{
aSeg.NearestPoint( a ) - a,
aSeg.NearestPoint( b ) - b,
NearestPoint( aSeg.a ) - aSeg.a,
NearestPoint( aSeg.b ) - aSeg.b
aSeg.NearestPoint( A ) - A,
aSeg.NearestPoint( B ) - B,
NearestPoint( aSeg.A ) - aSeg.A,
NearestPoint( aSeg.B ) - aSeg.B
};
ecoord m = VECTOR2I::ECOORD_MAX;
@ -98,9 +97,9 @@ SEG::ecoord SEG::SquaredDistance( const SEG& aSeg ) const
OPT_VECTOR2I SEG::Intersect( const SEG& aSeg, bool aIgnoreEndpoints, bool aLines ) const
{
const VECTOR2I e( b - a );
const VECTOR2I f( aSeg.b - aSeg.a );
const VECTOR2I ac( aSeg.a - a );
const VECTOR2I e( B - A );
const VECTOR2I f( aSeg.B - aSeg.A );
const VECTOR2I ac( aSeg.A - A );
ecoord d = f.Cross( e );
ecoord p = f.Cross( ac );
@ -118,16 +117,16 @@ OPT_VECTOR2I SEG::Intersect( const SEG& aSeg, bool aIgnoreEndpoints, bool aLines
if( !aLines && aIgnoreEndpoints && ( q == 0 || q == d ) && ( p == 0 || p == d ) )
return OPT_VECTOR2I();
VECTOR2I ip( aSeg.a.x + rescale( q, (ecoord) f.x, d ),
aSeg.a.y + rescale( q, (ecoord) f.y, d ) );
VECTOR2I ip( aSeg.A.x + rescale( q, (ecoord) f.x, d ),
aSeg.A.y + rescale( q, (ecoord) f.y, d ) );
return ip;
}
bool SEG::ccw( const VECTOR2I& a, const VECTOR2I& b, const VECTOR2I& c ) const
bool SEG::ccw( const VECTOR2I& aA, const VECTOR2I& aB, const VECTOR2I& aC ) const
{
return (ecoord) ( c.y - a.y ) * ( b.x - a.x ) > (ecoord) ( b.y - a.y ) * ( c.x - a.x );
return (ecoord) ( aC.y - aA.y ) * ( aB.x - aA.x ) > (ecoord) ( aB.y - aA.y ) * ( aC.x - aA.x );
}
@ -135,17 +134,17 @@ bool SEG::Collide( const SEG& aSeg, int aClearance ) const
{
// check for intersection
// fixme: move to a method
if( ccw( a, aSeg.a, aSeg.b ) != ccw( b, aSeg.a, aSeg.b ) &&
ccw( a, b, aSeg.a ) != ccw( a, b, aSeg.b ) )
if( ccw( A, aSeg.A, aSeg.B ) != ccw( B, aSeg.A, aSeg.B ) &&
ccw( A, B, aSeg.A ) != ccw( A, B, aSeg.B ) )
return true;
#define CHK( _seg, _pt ) \
if( (_seg).PointCloserThan( _pt, aClearance ) ) return true;
CHK( *this, aSeg.a );
CHK( *this, aSeg.b );
CHK( aSeg, a );
CHK( aSeg, b );
CHK( *this, aSeg.A );
CHK( *this, aSeg.B );
CHK( aSeg, A );
CHK( aSeg, B );
#undef CHK
return false;

View File

@ -50,6 +50,7 @@ static inline bool Collide( const SHAPE_CIRCLE& aA, const SHAPE_CIRCLE& aB, int
return true;
}
static inline bool Collide( const SHAPE_RECT& aA, const SHAPE_CIRCLE& aB, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
@ -154,7 +155,8 @@ static inline bool Collide( const SHAPE_RECT& aA, const SHAPE_LINE_CHAIN& aB, in
}
bool CollideShapes( const SHAPE* aA, const SHAPE* aB, int aClearance, bool aNeedMTV, VECTOR2I& aMTV )
bool CollideShapes( const SHAPE* aA, const SHAPE* aB, int aClearance,
bool aNeedMTV, VECTOR2I& aMTV )
{
switch( aA->Type() )
{
@ -163,53 +165,56 @@ bool CollideShapes( const SHAPE* aA, const SHAPE* aB, int aClearance, bool aNeed
{
case SH_CIRCLE:
return Collide( *static_cast<const SHAPE_RECT*>( aA ),
*static_cast<const SHAPE_CIRCLE*>( aB ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_CIRCLE*>( aB ), aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return Collide( *static_cast<const SHAPE_RECT*>( aA ),
*static_cast<const SHAPE_LINE_CHAIN*>( aB ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_LINE_CHAIN*>( aB ), aClearance, aNeedMTV, aMTV );
default:
break;
}
break;
case SH_CIRCLE:
switch( aB->Type() )
{
case SH_RECT:
return Collide( *static_cast<const SHAPE_RECT*>( aB ),
*static_cast<const SHAPE_CIRCLE*>( aA ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_CIRCLE*>( aA ), aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return Collide( *static_cast<const SHAPE_CIRCLE*>( aA ),
*static_cast<const SHAPE_CIRCLE*>( aB ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_CIRCLE*>( aB ), aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return Collide( *static_cast<const SHAPE_CIRCLE*>( aA ),
*static_cast<const SHAPE_LINE_CHAIN *>( aB ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_LINE_CHAIN *>( aB ), aClearance, aNeedMTV, aMTV );
default:
break;
}
break;
case SH_LINE_CHAIN:
switch( aB->Type() )
{
case SH_RECT:
return Collide( *static_cast<const SHAPE_RECT*>( aB ),
*static_cast<const SHAPE_LINE_CHAIN*>( aA ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_LINE_CHAIN*>( aA ), aClearance, aNeedMTV, aMTV );
case SH_CIRCLE:
return Collide( *static_cast<const SHAPE_CIRCLE*>( aB ),
*static_cast<const SHAPE_LINE_CHAIN*>( aA ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_LINE_CHAIN*>( aA ), aClearance, aNeedMTV, aMTV );
case SH_LINE_CHAIN:
return Collide( *static_cast<const SHAPE_LINE_CHAIN*>( aA ),
*static_cast<const SHAPE_LINE_CHAIN*>( aB ), aClearance, aNeedMTV, aMTV );
*static_cast<const SHAPE_LINE_CHAIN*>( aB ), aClearance, aNeedMTV, aMTV );
default:
break;
}
break;
default:
break;

View File

@ -25,7 +25,7 @@
#include <geometry/shape_index.h>
template<>
template <>
const SHAPE* shapeFunctor( SHAPE* aItem )
{
return aItem;

View File

@ -31,6 +31,7 @@ using boost::optional;
bool SHAPE_LINE_CHAIN::Collide( const VECTOR2I& aP, int aClearance ) const
{
assert( false );
return false;
}
@ -38,19 +39,20 @@ bool SHAPE_LINE_CHAIN::Collide( const VECTOR2I& aP, int aClearance ) const
bool SHAPE_LINE_CHAIN::Collide( const BOX2I& aBox, int aClearance ) const
{
assert( false );
return false;
}
bool SHAPE_LINE_CHAIN::Collide( const SEG& aSeg, int aClearance ) const
{
BOX2I box_a( aSeg.a, aSeg.b - aSeg.a );
BOX2I box_a( aSeg.A, aSeg.B - aSeg.A );
BOX2I::ecoord_type dist_sq = (BOX2I::ecoord_type) aClearance * aClearance;
for( int i = 0; i < SegmentCount(); i++ )
{
const SEG& s = CSegment( i );
BOX2I box_b( s.a, s.b - s.a );
BOX2I box_b( s.A, s.B - s.A );
BOX2I::ecoord_type d = box_a.SquaredDistance( box_b );
@ -158,7 +160,7 @@ int SHAPE_LINE_CHAIN::Split( const VECTOR2I& aP )
// make sure we are not producing a 'slightly concave' primitive. This might happen
// if aP lies very close to one of already existing points.
if( dist < min_dist && seg.a != aP && seg.b != aP )
if( dist < min_dist && seg.A != aP && seg.B != aP )
{
min_dist = dist;
ii = s;
@ -208,8 +210,8 @@ struct compareOriginDistance
compareOriginDistance( VECTOR2I& aOrigin ) :
m_origin( aOrigin ) {};
bool operator()( const SHAPE_LINE_CHAIN::Intersection& aA,
const SHAPE_LINE_CHAIN::Intersection& aB )
bool operator()( const SHAPE_LINE_CHAIN::INTERSECTION& aA,
const SHAPE_LINE_CHAIN::INTERSECTION& aB )
{
return ( m_origin - aA.p ).EuclideanNorm() < ( m_origin - aB.p ).EuclideanNorm();
}
@ -218,7 +220,7 @@ struct compareOriginDistance
};
int SHAPE_LINE_CHAIN::Intersect( const SEG& aSeg, Intersections& aIp ) const
int SHAPE_LINE_CHAIN::Intersect( const SEG& aSeg, INTERSECTIONS& aIp ) const
{
for( int s = 0; s < SegmentCount(); s++ )
{
@ -226,7 +228,7 @@ int SHAPE_LINE_CHAIN::Intersect( const SEG& aSeg, Intersections& aIp ) const
if( p )
{
Intersection is;
INTERSECTION is;
is.our = CSegment( s );
is.their = aSeg;
is.p = *p;
@ -234,21 +236,21 @@ int SHAPE_LINE_CHAIN::Intersect( const SEG& aSeg, Intersections& aIp ) const
}
}
compareOriginDistance comp( aSeg.a );
compareOriginDistance comp( aSeg.A );
sort( aIp.begin(), aIp.end(), comp );
return aIp.size();
}
int SHAPE_LINE_CHAIN::Intersect( const SHAPE_LINE_CHAIN& aChain, Intersections& aIp ) const
int SHAPE_LINE_CHAIN::Intersect( const SHAPE_LINE_CHAIN& aChain, INTERSECTIONS& aIp ) const
{
BOX2I bb_other = aChain.BBox();
for( int s1 = 0; s1 < SegmentCount(); s1++ )
{
const SEG& a = CSegment( s1 );
const BOX2I bb_cur( a.a, a.b - a.a );
const BOX2I bb_cur( a.A, a.B - a.A );
if( !bb_other.Intersects( bb_cur ) )
continue;
@ -256,14 +258,14 @@ int SHAPE_LINE_CHAIN::Intersect( const SHAPE_LINE_CHAIN& aChain, Intersections&
for( int s2 = 0; s2 < aChain.SegmentCount(); s2++ )
{
const SEG& b = aChain.CSegment( s2 );
Intersection is;
INTERSECTION is;
if( a.Collinear( b ) )
{
if( a.Contains( b.a ) ) { is.p = b.a; aIp.push_back( is ); }
if( a.Contains( b.b ) ) { is.p = b.b; aIp.push_back( is ); }
if( b.Contains( a.a ) ) { is.p = a.a; aIp.push_back( is ); }
if( b.Contains( a.b ) ) { is.p = a.b; aIp.push_back( is ); }
if( a.Contains( b.A ) ) { is.p = b.A; aIp.push_back( is ); }
if( a.Contains( b.B ) ) { is.p = b.B; aIp.push_back( is ); }
if( b.Contains( a.A ) ) { is.p = a.A; aIp.push_back( is ); }
if( b.Contains( a.B ) ) { is.p = a.B; aIp.push_back( is ); }
}
else
{
@ -289,7 +291,7 @@ int SHAPE_LINE_CHAIN::Intersect( const SHAPE_LINE_CHAIN& aChain, Intersections&
const SEG& a = CSegment( s1 );
const SEG& b = aChain.CSegment( s2 );
OPT_VECTOR2I p = a.Intersect( b );
Intersection is;
INTERSECTION is;
if( p )
{
@ -300,16 +302,16 @@ int SHAPE_LINE_CHAIN::Intersect( const SHAPE_LINE_CHAIN& aChain, Intersections&
}
else if( a.Collinear( b ) )
{
if( a.a != b.a && a.a != b.b && b.Contains( a.a ) )
if( a.A != b.A && a.A != b.B && b.Contains( a.A ) )
{
is.p = a.a;
is.p = a.A;
is.our = a;
is.their = b;
aIp.push_back( is );
}
else if( a.b != b.a && a.b != b.b && b.Contains( a.b ) )
else if( a.B != b.A && a.B != b.B && b.Contains( a.B ) )
{
is.p = a.b;
is.p = a.B;
is.our = a;
is.their = b;
aIp.push_back( is );
@ -333,7 +335,7 @@ int SHAPE_LINE_CHAIN::PathLength( const VECTOR2I& aP ) const
if( d <= 1 )
{
sum += ( aP - seg.a ).EuclideanNorm();
sum += ( aP - seg.A ).EuclideanNorm();
return sum;
}
else
@ -358,7 +360,7 @@ bool SHAPE_LINE_CHAIN::PointInside( const VECTOR2I& aP ) const
{
const SEG s = CSegment( i );
if( aP == s.a || aP == s.b ) // edge does not belong to the interior!
if( aP == s.A || aP == s.B ) // edge does not belong to the interior!
return false;
if( s.Side( aP ) != cur )
@ -378,7 +380,7 @@ bool SHAPE_LINE_CHAIN::PointOnEdge( const VECTOR2I& aP ) const
{
const SEG s = CSegment( i );
if( s.a == aP || s.b == aP )
if( s.A == aP || s.B == aP )
return true;
if( s.Distance( aP ) <= 1 )
@ -389,17 +391,17 @@ bool SHAPE_LINE_CHAIN::PointOnEdge( const VECTOR2I& aP ) const
}
const optional<SHAPE_LINE_CHAIN::Intersection> SHAPE_LINE_CHAIN::SelfIntersecting() const
const optional<SHAPE_LINE_CHAIN::INTERSECTION> SHAPE_LINE_CHAIN::SelfIntersecting() const
{
for( int s1 = 0; s1 < SegmentCount(); s1++ )
{
for( int s2 = s1 + 1; s2 < SegmentCount(); s2++ )
{
const VECTOR2I s2a = CSegment( s2 ).a, s2b = CSegment( s2 ).b;
const VECTOR2I s2a = CSegment( s2 ).A, s2b = CSegment( s2 ).B;
if( s1 + 1 != s2 && CSegment( s1 ).Contains( s2a ) )
{
Intersection is;
INTERSECTION is;
is.our = CSegment( s1 );
is.their = CSegment( s2 );
is.p = s2a;
@ -407,7 +409,7 @@ const optional<SHAPE_LINE_CHAIN::Intersection> SHAPE_LINE_CHAIN::SelfIntersectin
}
else if( CSegment( s1 ).Contains( s2b ) )
{
Intersection is;
INTERSECTION is;
is.our = CSegment( s1 );
is.their = CSegment( s2 );
is.p = s2b;
@ -419,7 +421,7 @@ const optional<SHAPE_LINE_CHAIN::Intersection> SHAPE_LINE_CHAIN::SelfIntersectin
if( p )
{
Intersection is;
INTERSECTION is;
is.our = CSegment( s1 );
is.their = CSegment( s2 );
is.p = *p;
@ -429,7 +431,7 @@ const optional<SHAPE_LINE_CHAIN::Intersection> SHAPE_LINE_CHAIN::SelfIntersectin
}
}
return optional<Intersection>();
return optional<INTERSECTION>();
}

View File

@ -28,31 +28,32 @@
#include <climits>
#include <math/math_util.h>
template<>
int rescale( int numerator, int value, int denominator )
template <>
int rescale( int aNumerator, int aValue, int aDenominator )
{
return (int) ( (int64_t) numerator * (int64_t) value / (int64_t) denominator );
return (int) ( (int64_t) aNumerator * (int64_t) aValue / (int64_t) aDenominator );
}
template<>
int64_t rescale( int64_t numerator, int64_t value, int64_t denominator )
template <>
int64_t rescale( int64_t aNumerator, int64_t aValue, int64_t aDenominator )
{
int64_t r = 0;
int64_t sign = ( ( numerator < 0) ? -1 : 1 ) * ( denominator < 0 ? -1 : 1 ) * ( value < 0 ? -1 : 1 );
int64_t sign = ( ( aNumerator < 0 ) ? -1 : 1 ) * ( aDenominator < 0 ? -1 : 1 ) *
( aValue < 0 ? -1 : 1 );
int64_t a = std::abs( numerator );
int64_t b = std::abs( value );
int64_t c = std::abs( denominator );
int64_t a = std::abs( aNumerator );
int64_t b = std::abs( aValue );
int64_t c = std::abs( aDenominator );
r = c / 2;
if( b <= INT_MAX && c <= INT_MAX )
{
if( a <= INT_MAX )
return sign * ( (a * b + r ) / c );
return sign * ( ( a * b + r ) / c );
else
return sign * (a / c * b + (a % c * b + r) / c);
return sign * ( a / c * b + ( a % c * b + r ) / c);
}
else
{

View File

@ -104,8 +104,8 @@ void CONTEXT_MENU::Add( const TOOL_ACTION& aAction )
wxString menuEntry;
if( aAction.HasHotKey() )
menuEntry = wxString( ( aAction.GetMenuItem() + '\t' + getHotKeyDescription( aAction ) ).c_str(),
wxConvUTF8 );
menuEntry = wxString( ( aAction.GetMenuItem() + '\t' +
getHotKeyDescription( aAction ) ).c_str(), wxConvUTF8 );
else
menuEntry = wxString( aAction.GetMenuItem().c_str(), wxConvUTF8 );
@ -134,17 +134,17 @@ std::string CONTEXT_MENU::getHotKeyDescription( const TOOL_ACTION& aAction ) con
std::string description = "";
if( hotkey & MD_ModAlt )
if( hotkey & MD_ALT )
description += "ALT+";
if( hotkey & MD_ModCtrl )
if( hotkey & MD_CTRL )
description += "CTRL+";
if( hotkey & MD_ModShift )
if( hotkey & MD_SHIFT )
description += "SHIFT+";
// TODO dispatch keys such as Fx, TAB, PG_UP/DN, HOME, END, etc.
description += char(hotkey & ~MD_ModifierMask);
description += char( hotkey & ~MD_MODIFIER_MASK );
return description;
}
@ -159,7 +159,7 @@ void CONTEXT_MENU::CMEventHandler::onEvent( wxEvent& aEvent )
// For example, the selection tool can use this to dynamically highlight the current item
// from selection clarification popup.
if( type == wxEVT_MENU_HIGHLIGHT )
evt = TOOL_EVENT( TC_Command, TA_ContextMenuUpdate, aEvent.GetId() );
evt = TOOL_EVENT( TC_COMMAND, TA_CONTEXT_MENU_UPDATE, aEvent.GetId() );
// One of menu entries was selected..
else if( type == wxEVT_COMMAND_MENU_SELECTED )
@ -172,7 +172,7 @@ void CONTEXT_MENU::CMEventHandler::onEvent( wxEvent& aEvent )
else
{
// Handling non-action menu entries (e.g. items in clarification list)
evt = TOOL_EVENT( TC_Command, TA_ContextMenuChoice, aEvent.GetId() );
evt = TOOL_EVENT( TC_COMMAND, TA_CONTEXT_MENU_CHOICE, aEvent.GetId() );
}
}

View File

@ -40,9 +40,9 @@
using boost::optional;
///> Stores information about a mouse button state
struct TOOL_DISPATCHER::ButtonState
struct TOOL_DISPATCHER::BUTTON_STATE
{
ButtonState( TOOL_MouseButtons aButton, const wxEventType& aDownEvent,
BUTTON_STATE( TOOL_MOUSE_BUTTONS aButton, const wxEventType& aDownEvent,
const wxEventType& aUpEvent ) :
button( aButton ),
downEvent( aDownEvent ),
@ -66,7 +66,7 @@ struct TOOL_DISPATCHER::ButtonState
double dragMaxDelta;
///> Determines the mouse button for which information are stored.
TOOL_MouseButtons button;
TOOL_MOUSE_BUTTONS button;
///> The type of wxEvent that determines mouse button press.
wxEventType downEvent;
@ -89,9 +89,9 @@ struct TOOL_DISPATCHER::ButtonState
TOOL_DISPATCHER::TOOL_DISPATCHER( TOOL_MANAGER* aToolMgr, PCB_BASE_FRAME* aEditFrame ) :
m_toolMgr( aToolMgr ), m_editFrame( aEditFrame )
{
m_buttons.push_back( new ButtonState( MB_Left, wxEVT_LEFT_DOWN, wxEVT_LEFT_UP ) );
m_buttons.push_back( new ButtonState( MB_Right, wxEVT_RIGHT_DOWN, wxEVT_RIGHT_UP ) );
m_buttons.push_back( new ButtonState( MB_Middle, wxEVT_MIDDLE_DOWN, wxEVT_MIDDLE_UP ) );
m_buttons.push_back( new BUTTON_STATE( MB_LEFT, wxEVT_LEFT_DOWN, wxEVT_LEFT_UP ) );
m_buttons.push_back( new BUTTON_STATE( MB_RIGHT, wxEVT_RIGHT_DOWN, wxEVT_RIGHT_UP ) );
m_buttons.push_back( new BUTTON_STATE( MB_MIDDLE, wxEVT_MIDDLE_DOWN, wxEVT_MIDDLE_UP ) );
ResetState();
}
@ -99,14 +99,14 @@ TOOL_DISPATCHER::TOOL_DISPATCHER( TOOL_MANAGER* aToolMgr, PCB_BASE_FRAME* aEditF
TOOL_DISPATCHER::~TOOL_DISPATCHER()
{
BOOST_FOREACH( ButtonState* st, m_buttons )
BOOST_FOREACH( BUTTON_STATE* st, m_buttons )
delete st;
}
void TOOL_DISPATCHER::ResetState()
{
BOOST_FOREACH( ButtonState* st, m_buttons )
BOOST_FOREACH( BUTTON_STATE* st, m_buttons )
st->Reset();
}
@ -119,7 +119,7 @@ KIGFX::VIEW* TOOL_DISPATCHER::getView()
bool TOOL_DISPATCHER::handleMouseButton( wxEvent& aEvent, int aIndex, bool aMotion )
{
ButtonState* st = m_buttons[aIndex];
BUTTON_STATE* st = m_buttons[aIndex];
wxEventType type = aEvent.GetEventType();
optional<TOOL_EVENT> evt;
bool isClick = false;
@ -137,7 +137,7 @@ bool TOOL_DISPATCHER::handleMouseButton( wxEvent& aEvent, int aIndex, bool aMoti
st->downPosition = m_lastMousePos;
st->dragMaxDelta = 0;
st->pressed = true;
evt = TOOL_EVENT( TC_Mouse, TA_MouseDown, args );
evt = TOOL_EVENT( TC_MOUSE, TA_MOUSE_DOWN, args );
}
else if( up ) // Handle mouse button release
{
@ -152,13 +152,13 @@ bool TOOL_DISPATCHER::handleMouseButton( wxEvent& aEvent, int aIndex, bool aMoti
st->dragMaxDelta < DragDistanceThreshold )
isClick = true;
else
evt = TOOL_EVENT( TC_Mouse, TA_MouseUp, args );
evt = TOOL_EVENT( TC_MOUSE, TA_MOUSE_UP, args );
}
else
isClick = true;
if( isClick )
evt = TOOL_EVENT( TC_Mouse, TA_MouseClick, args );
evt = TOOL_EVENT( TC_MOUSE, TA_MOUSE_CLICK, args );
st->dragging = false;
}
@ -174,7 +174,7 @@ bool TOOL_DISPATCHER::handleMouseButton( wxEvent& aEvent, int aIndex, bool aMoti
if( t - st->downTimestamp > DragTimeThreshold || st->dragMaxDelta > DragDistanceThreshold )
{
evt = TOOL_EVENT( TC_Mouse, TA_MouseDrag, args );
evt = TOOL_EVENT( TC_MOUSE, TA_MOUSE_DRAG, args );
evt->SetMouseDragOrigin( st->dragOrigin );
evt->SetMouseDelta( m_lastMousePos - st->dragOrigin );
}
@ -222,7 +222,7 @@ void TOOL_DISPATCHER::DispatchWxEvent( wxEvent& aEvent )
if( !buttonEvents && motion )
{
evt = TOOL_EVENT( TC_Mouse, TA_MouseMotion );
evt = TOOL_EVENT( TC_MOUSE, TA_MOUSE_MOTION );
evt->SetMousePosition( pos );
}
}
@ -237,13 +237,13 @@ void TOOL_DISPATCHER::DispatchWxEvent( wxEvent& aEvent )
if( type == wxEVT_KEY_UP )
{
if( key == WXK_ESCAPE ) // ESC is the special key for cancelling tools
evt = TOOL_EVENT( TC_Command, TA_CancelTool );
evt = TOOL_EVENT( TC_COMMAND, TA_CANCEL_TOOL );
else
evt = TOOL_EVENT( TC_Keyboard, TA_KeyUp, key | mods );
evt = TOOL_EVENT( TC_KEYBOARD, TA_KEY_UP, key | mods );
}
else
{
evt = TOOL_EVENT( TC_Keyboard, TA_KeyDown, key | mods );
evt = TOOL_EVENT( TC_KEYBOARD, TA_KEY_DOWN, key | mods );
}
}

View File

@ -40,14 +40,14 @@ struct FlagString
};
static const std::string flag2string( int flag, const FlagString* exps )
static const std::string flag2string( int aFlag, const FlagString* aExps )
{
std::string rv;
for( int i = 0; exps[i].str.length(); i++ )
for( int i = 0; aExps[i].str.length(); i++ )
{
if( exps[i].flag & flag )
rv += exps[i].str + " ";
if( aExps[i].flag & aFlag )
rv += aExps[i].str + " ";
}
return rv;
@ -66,51 +66,51 @@ const std::string TOOL_EVENT::Format() const
const FlagString categories[] =
{
{ TC_Mouse, "mouse" },
{ TC_Keyboard, "keyboard" },
{ TC_Command, "command" },
{ TC_Message, "message" },
{ TC_View, "view" },
{ TC_MOUSE, "mouse" },
{ TC_KEYBOARD, "keyboard" },
{ TC_COMMAND, "command" },
{ TC_MESSAGE, "message" },
{ TC_VIEW, "view" },
{ 0, "" }
};
const FlagString actions[] =
{
{ TA_MouseClick, "click" },
{ TA_MouseUp, "button-up" },
{ TA_MouseDown, "button-down" },
{ TA_MouseDrag, "drag" },
{ TA_MouseMotion, "motion" },
{ TA_MouseWheel, "wheel" },
{ TA_KeyUp, "key-up" },
{ TA_KeyDown, "key-down" },
{ TA_ViewRefresh, "view-refresh" },
{ TA_ViewZoom, "view-zoom" },
{ TA_ViewPan, "view-pan" },
{ TA_ViewDirty, "view-dirty" },
{ TA_ChangeLayer, "change-layer" },
{ TA_CancelTool, "cancel-tool" },
{ TA_ContextMenuUpdate, "context-menu-update" },
{ TA_ContextMenuChoice, "context-menu-choice" },
{ TA_Action, "action" },
{ 0, "" }
{ TA_MOUSE_CLICK, "click" },
{ TA_MOUSE_UP, "button-up" },
{ TA_MOUSE_DOWN, "button-down" },
{ TA_MOUSE_DRAG, "drag" },
{ TA_MOUSE_MOTION, "motion" },
{ TA_MOUSE_WHEEL, "wheel" },
{ TA_KEY_UP, "key-up" },
{ TA_KEY_DOWN, "key-down" },
{ TA_VIEW_REFRESH, "view-refresh" },
{ TA_VIEW_ZOOM, "view-zoom" },
{ TA_VIEW_PAN, "view-pan" },
{ TA_VIEW_DIRTY, "view-dirty" },
{ TA_CHANGE_LAYER, "change-layer" },
{ TA_CANCEL_TOOL, "cancel-tool" },
{ TA_CONTEXT_MENU_UPDATE, "context-menu-update" },
{ TA_CONTEXT_MENU_CHOICE, "context-menu-choice" },
{ TA_ACTION, "action" },
{ 0, "" }
};
const FlagString buttons[] =
{
{ MB_None, "none" },
{ MB_Left, "left" },
{ MB_Right, "right" },
{ MB_Middle, "middle" },
{ MB_NONE, "none" },
{ MB_LEFT, "left" },
{ MB_RIGHT, "right" },
{ MB_MIDDLE, "middle" },
{ 0, "" }
};
const FlagString modifiers[] =
{
{ MD_ModShift, "shift" },
{ MD_ModCtrl, "ctrl" },
{ MD_ModAlt, "alt" },
{ 0, "" }
{ MD_SHIFT, "shift" },
{ MD_CTRL, "ctrl" },
{ MD_ALT, "alt" },
{ 0, "" }
};
ev = "category: ";
@ -118,20 +118,20 @@ const std::string TOOL_EVENT::Format() const
ev += " action: ";
ev += flag2string( m_actions, actions );
if( m_actions & TA_Mouse )
if( m_actions & TA_MOUSE )
{
ev += " btns: ";
ev += flag2string( m_mouseButtons, buttons );
}
if( m_actions & TA_Keyboard )
if( m_actions & TA_KEYBOARD )
{
char tmp[128];
sprintf( tmp, "key: %d", m_keyCode );
ev += tmp;
}
if( m_actions & ( TA_Mouse | TA_Keyboard ) )
if( m_actions & ( TA_MOUSE | TA_KEYBOARD ) )
{
ev += " mods: ";
ev += flag2string( m_modifiers, modifiers );

View File

@ -30,13 +30,13 @@
#include <tool/context_menu.h>
TOOL_INTERACTIVE::TOOL_INTERACTIVE( TOOL_ID aId, const std::string& aName ) :
TOOL_BASE( TOOL_Interactive, aId, aName )
TOOL_BASE( INTERACTIVE, aId, aName )
{
}
TOOL_INTERACTIVE::TOOL_INTERACTIVE( const std::string& aName ) :
TOOL_BASE( TOOL_Interactive, TOOL_MANAGER::MakeToolId( aName ), aName )
TOOL_BASE( INTERACTIVE, TOOL_MANAGER::MakeToolId( aName ), aName )
{
}

View File

@ -134,7 +134,7 @@ void TOOL_MANAGER::RegisterTool( TOOL_BASE* aTool )
aTool->m_toolMgr = this;
if( aTool->GetType() == TOOL_Interactive )
if( aTool->GetType() == INTERACTIVE )
{
bool initState = static_cast<TOOL_INTERACTIVE*>( aTool )->Init();
@ -158,7 +158,7 @@ bool TOOL_MANAGER::InvokeTool( TOOL_ID aToolId )
{
TOOL_BASE* tool = FindTool( aToolId );
if( tool && tool->GetType() == TOOL_Interactive )
if( tool && tool->GetType() == INTERACTIVE )
return invokeTool( tool );
return false; // there is no tool with the given id
@ -169,7 +169,7 @@ bool TOOL_MANAGER::InvokeTool( const std::string& aToolName )
{
TOOL_BASE* tool = FindTool( aToolName );
if( tool && tool->GetType() == TOOL_Interactive )
if( tool && tool->GetType() == INTERACTIVE )
return invokeTool( tool );
return false; // there is no tool with the given name
@ -192,7 +192,7 @@ bool TOOL_MANAGER::invokeTool( TOOL_BASE* aTool )
{
wxASSERT( aTool != NULL );
TOOL_EVENT evt( TC_Command, TA_Action, aTool->GetName() );
TOOL_EVENT evt( TC_COMMAND, TA_ACTION, aTool->GetName() );
ProcessEvent( evt );
return true;
@ -203,7 +203,7 @@ bool TOOL_MANAGER::runTool( TOOL_ID aToolId )
{
TOOL_BASE* tool = FindTool( aToolId );
if( tool && tool->GetType() == TOOL_Interactive )
if( tool && tool->GetType() == INTERACTIVE )
return runTool( tool );
return false; // there is no tool with the given id
@ -214,7 +214,7 @@ bool TOOL_MANAGER::runTool( const std::string& aToolName )
{
TOOL_BASE* tool = FindTool( aToolName );
if( tool && tool->GetType() == TOOL_Interactive )
if( tool && tool->GetType() == INTERACTIVE )
return runTool( tool );
return false; // there is no tool with the given name
@ -360,13 +360,13 @@ void TOOL_MANAGER::dispatchInternal( TOOL_EVENT& aEvent )
bool TOOL_MANAGER::dispatchStandardEvents( TOOL_EVENT& aEvent )
{
if( aEvent.Action() == TA_KeyUp )
if( aEvent.Action() == TA_KEY_UP )
{
// Check if there is a hotkey associated
if( m_actionMgr->RunHotKey( aEvent.Modifier() | aEvent.KeyCode() ) )
return false; // hotkey event was handled so it does not go any further
}
else if( aEvent.Category() == TC_Command ) // it may be a tool activation event
else if( aEvent.Category() == TC_COMMAND ) // it may be a tool activation event
{
dispatchActivation( aEvent );
// do not return false, as the event has to go on to the destined tool
@ -433,11 +433,11 @@ bool TOOL_MANAGER::ProcessEvent( TOOL_EVENT& aEvent )
// or immediately (CMENU_NOW) mode. The latter is used for clarification lists.
if( st->contextMenuTrigger != CMENU_OFF )
{
if( st->contextMenuTrigger == CMENU_BUTTON && !aEvent.IsClick( MB_Right ) )
if( st->contextMenuTrigger == CMENU_BUTTON && !aEvent.IsClick( MB_RIGHT ) )
break;
st->pendingWait = true;
st->waitEvents = TOOL_EVENT( TC_Any, TA_Any );
st->waitEvents = TOOL_EVENT( TC_ANY, TA_ANY );
if( st->contextMenuTrigger == CMENU_NOW )
st->contextMenuTrigger = CMENU_OFF;
@ -446,7 +446,7 @@ bool TOOL_MANAGER::ProcessEvent( TOOL_EVENT& aEvent )
GetEditFrame()->PopupMenu( menu->GetMenu() );
//
TOOL_EVENT evt( TC_Command, TA_ContextMenuChoice );
TOOL_EVENT evt( TC_COMMAND, TA_CONTEXT_MENU_CHOICE );
dispatchInternal( evt );
break;
@ -498,7 +498,7 @@ void TOOL_MANAGER::SetEnvironment( EDA_ITEM* aModel, KIGFX::VIEW* aView,
{
TOOL_BASE* tool = m_toolIdIndex[toolId]->theTool;
if( tool->GetType() == TOOL_Interactive )
if( tool->GetType() == INTERACTIVE )
static_cast<TOOL_INTERACTIVE*>( tool )->Reset();
}
}

View File

@ -67,7 +67,7 @@ VIEW::VIEW( bool aIsDynamic ) :
VIEW::~VIEW()
{
BOOST_FOREACH( LayerMap::value_type& l, m_layers )
BOOST_FOREACH( LAYER_MAP::value_type& l, m_layers )
{
delete l.second.items;
}
@ -156,7 +156,7 @@ struct queryVisitor
void operator()( VIEW_ITEM* aItem )
{
if( aItem->ViewIsVisible() )
m_cont.push_back( VIEW::LayerItemPair( aItem, m_layer ) );
m_cont.push_back( VIEW::LAYER_ITEM_PAIR( aItem, m_layer ) );
}
Container& m_cont;
@ -164,7 +164,7 @@ struct queryVisitor
};
int VIEW::Query( const BOX2I& aRect, std::vector<LayerItemPair>& aResult )
int VIEW::Query( const BOX2I& aRect, std::vector<LAYER_ITEM_PAIR>& aResult )
{
if( m_orderedLayers.empty() )
return 0;
@ -179,7 +179,7 @@ int VIEW::Query( const BOX2I& aRect, std::vector<LayerItemPair>& aResult )
if( ( *i )->displayOnly )
continue;
queryVisitor<std::vector<LayerItemPair> > visitor( aResult, ( *i )->id );
queryVisitor<std::vector<LAYER_ITEM_PAIR> > visitor( aResult, ( *i )->id );
( *i )->items->Query( aRect, visitor );
}
@ -424,7 +424,7 @@ void VIEW::UpdateAllLayersColor()
r.SetMaximum();
for( LayerMapIter i = m_layers.begin(); i != m_layers.end(); ++i )
for( LAYER_MAP_ITER i = m_layers.begin(); i != m_layers.end(); ++i )
{
VIEW_LAYER* l = &( ( *i ).second );
@ -555,7 +555,7 @@ void VIEW::UpdateAllLayersOrder()
{
sortLayers();
BOOST_FOREACH( LayerMap::value_type& l, m_layers )
BOOST_FOREACH( LAYER_MAP::value_type& l, m_layers )
{
ChangeLayerDepth( l.first, l.second.renderingOrder );
}
@ -727,7 +727,7 @@ void VIEW::Clear()
r.SetMaximum();
for( LayerMapIter i = m_layers.begin(); i != m_layers.end(); ++i )
for( LAYER_MAP_ITER i = m_layers.begin(); i != m_layers.end(); ++i )
{
VIEW_LAYER* l = &( ( *i ).second );
unlinkItem v;
@ -811,7 +811,7 @@ void VIEW::clearGroupCache()
r.SetMaximum();
clearLayerCache visitor( this );
for( LayerMapIter i = m_layers.begin(); i != m_layers.end(); ++i )
for( LAYER_MAP_ITER i = m_layers.begin(); i != m_layers.end(); ++i )
{
VIEW_LAYER* l = &( ( *i ).second );
l->items->Query( r, visitor );
@ -858,7 +858,7 @@ void VIEW::sortLayers()
m_orderedLayers.resize( m_layers.size() );
for( LayerMapIter i = m_layers.begin(); i != m_layers.end(); ++i )
for( LAYER_MAP_ITER i = m_layers.begin(); i != m_layers.end(); ++i )
m_orderedLayers[n++] = &i->second;
sort( m_orderedLayers.begin(), m_orderedLayers.end(), compareRenderingOrder );
@ -974,7 +974,7 @@ void VIEW::RecacheAllItems( bool aImmediately )
prof_start( &totalRealTime, false );
#endif /* __WXDEBUG__ */
for( LayerMapIter i = m_layers.begin(); i != m_layers.end(); ++i )
for( LAYER_MAP_ITER i = m_layers.begin(); i != m_layers.end(); ++i )
{
VIEW_LAYER* l = &( ( *i ).second );

View File

@ -142,7 +142,7 @@ void VIEW_GROUP::ItemsSetVisibility( bool aVisible )
}
void VIEW_GROUP::ItemsViewUpdate( VIEW_ITEM::ViewUpdateFlags aFlags )
void VIEW_GROUP::ItemsViewUpdate( VIEW_ITEM::VIEW_UPDATE_FLAGS aFlags )
{
std::set<VIEW_ITEM*>::const_iterator it, it_end;

View File

@ -39,26 +39,26 @@ WX_VIEW_CONTROLS::WX_VIEW_CONTROLS( VIEW* aView, wxWindow* aParentPanel ) :
m_state( IDLE ),
m_parentPanel( aParentPanel )
{
m_parentPanel->Connect( wxEVT_MOTION, wxMouseEventHandler(
WX_VIEW_CONTROLS::onMotion ), NULL, this );
m_parentPanel->Connect( wxEVT_MOUSEWHEEL, wxMouseEventHandler(
WX_VIEW_CONTROLS::onWheel ), NULL, this );
m_parentPanel->Connect( wxEVT_MIDDLE_UP, wxMouseEventHandler(
WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_MIDDLE_DOWN, wxMouseEventHandler(
WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_LEFT_UP, wxMouseEventHandler(
WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler(
WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_MOTION,
wxMouseEventHandler( WX_VIEW_CONTROLS::onMotion ), NULL, this );
m_parentPanel->Connect( wxEVT_MOUSEWHEEL,
wxMouseEventHandler( WX_VIEW_CONTROLS::onWheel ), NULL, this );
m_parentPanel->Connect( wxEVT_MIDDLE_UP,
wxMouseEventHandler( WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_MIDDLE_DOWN,
wxMouseEventHandler( WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_LEFT_UP,
wxMouseEventHandler( WX_VIEW_CONTROLS::onButton ), NULL, this );
m_parentPanel->Connect( wxEVT_LEFT_DOWN,
wxMouseEventHandler( WX_VIEW_CONTROLS::onButton ), NULL, this );
#if defined _WIN32 || defined _WIN64
m_parentPanel->Connect( wxEVT_ENTER_WINDOW, wxMouseEventHandler(
WX_VIEW_CONTROLS::onEnter ), NULL, this );
m_parentPanel->Connect( wxEVT_ENTER_WINDOW,
wxMouseEventHandler( WX_VIEW_CONTROLS::onEnter ), NULL, this );
#endif
m_panTimer.SetOwner( this );
this->Connect( wxEVT_TIMER, wxTimerEventHandler(
WX_VIEW_CONTROLS::onTimer ), NULL, this );
this->Connect( wxEVT_TIMER,
wxTimerEventHandler( WX_VIEW_CONTROLS::onTimer ), NULL, this );
}

View File

@ -217,13 +217,13 @@ public:
virtual void RestoreScreen();
/// @copydoc GAL::SetTarget()
virtual void SetTarget( RenderTarget aTarget );
virtual void SetTarget( RENDER_TARGET aTarget );
/// @copydoc GAL::GetTarget()
virtual RenderTarget GetTarget() const;
virtual RENDER_TARGET GetTarget() const;
/// @copydoc GAL::ClearTarget()
virtual void ClearTarget( RenderTarget aTarget );
virtual void ClearTarget( RENDER_TARGET aTarget );
// -------
// Cursor
@ -267,7 +267,7 @@ private:
boost::shared_ptr<CAIRO_COMPOSITOR> compositor; ///< Object for layers compositing
unsigned int mainBuffer; ///< Handle to the main buffer
unsigned int overlayBuffer; ///< Handle to the overlay buffer
RenderTarget currentTarget; ///< Current rendering target
RENDER_TARGET currentTarget; ///< Current rendering target
bool validCompositor; ///< Compositor initialization flag
// Variables related to wxWidgets
@ -290,7 +290,8 @@ private:
static const int MAX_CAIRO_ARGUMENTS = 6;
/// Definitions for the command recorder
enum GraphicsCommand {
enum GRAPHICS_COMMAND
{
CMD_SET_FILL, ///< Enable/disable filling
CMD_SET_STROKE, ///< Enable/disable stroking
CMD_SET_FILLCOLOR, ///< Set the fill color
@ -310,20 +311,20 @@ private:
/// Type definition for an graphics group element
typedef struct
{
GraphicsCommand command; ///< Command to execute
GRAPHICS_COMMAND command; ///< Command to execute
double arguments[MAX_CAIRO_ARGUMENTS]; ///< Arguments for Cairo commands
bool boolArgument; ///< A bool argument
int intArgument; ///< An int argument
cairo_path_t* cairoPath; ///< Pointer to a Cairo path
} GroupElement;
} GROUP_ELEMENT;
// Variables for the grouping function
bool isGrouping; ///< Is grouping enabled ?
bool isElementAdded; ///< Was an graphic element added ?
typedef std::deque<GroupElement> Group; ///< A graphic group type definition
std::map<int, Group> groups; ///< List of graphic groups
typedef std::deque<GROUP_ELEMENT> GROUP; ///< A graphic group type definition
std::map<int, GROUP> groups; ///< List of graphic groups
unsigned int groupCounter; ///< Counter used for generating keys for groups
Group* currentGroup; ///< Currently used group
GROUP* currentGroup; ///< Currently used group
// Variables related to Cairo <-> wxWidgets
cairo_matrix_t cairoWorldScreenMatrix; ///< Cairo world to screen transformation matrix

View File

@ -34,9 +34,9 @@
namespace KIGFX
{
/**
* RenderTarget: Possible rendering targets
* RENDER_TARGET: Possible rendering targets
*/
enum RenderTarget
enum RENDER_TARGET
{
TARGET_CACHED = 0, ///< Main rendering target (cached)
TARGET_NONCACHED, ///< Auxiliary rendering target (noncached)

View File

@ -589,21 +589,21 @@ public:
*
* @param aTarget is the new target for rendering.
*/
virtual void SetTarget( RenderTarget aTarget ) = 0;
virtual void SetTarget( RENDER_TARGET aTarget ) = 0;
/**
* @brief Gets the currently used target for rendering.
*
* @return The current rendering target.
*/
virtual RenderTarget GetTarget() const = 0;
virtual RENDER_TARGET GetTarget() const = 0;
/**
* @brief Clears the target for rendering.
*
* @param aTarget is the target to be cleared.
*/
virtual void ClearTarget( RenderTarget aTarget ) = 0;
virtual void ClearTarget( RENDER_TARGET aTarget ) = 0;
// -------------
// Grid methods

View File

@ -49,19 +49,19 @@ class CACHED_CONTAINER : public VERTEX_CONTAINER
public:
CACHED_CONTAINER( unsigned int aSize = defaultInitSize );
///< @copydoc VERTEX_CONTAINER::SetItem()
///> @copydoc VERTEX_CONTAINER::SetItem()
virtual void SetItem( VERTEX_ITEM* aItem );
///< @copydoc VERTEX_CONTAINER::FinishItem()
///> @copydoc VERTEX_CONTAINER::FinishItem()
virtual void FinishItem();
///< @copydoc VERTEX_CONTAINER::Allocate()
///> @copydoc VERTEX_CONTAINER::Allocate()
virtual VERTEX* Allocate( unsigned int aSize );
///< @copydoc VERTEX_CONTAINER::Delete()
///> @copydoc VERTEX_CONTAINER::Delete()
virtual void Delete( VERTEX_ITEM* aItem );
///< @copydoc VERTEX_CONTAINER::Clear()
///> @copydoc VERTEX_CONTAINER::Clear()
virtual void Clear();
/**
@ -73,23 +73,23 @@ public:
virtual VERTEX* GetVertices( const VERTEX_ITEM* aItem ) const;
protected:
///< Maps size of free memory chunks to their offsets
typedef std::pair<unsigned int, unsigned int> Chunk;
typedef std::multimap<unsigned int, unsigned int> FreeChunkMap;
///> Maps size of free memory chunks to their offsets
typedef std::pair<unsigned int, unsigned int> CHUNK;
typedef std::multimap<unsigned int, unsigned int> FREE_CHUNK_MAP;
/// List of all the stored items
typedef std::set<VERTEX_ITEM*> Items;
typedef std::set<VERTEX_ITEM*> ITEMS;
///< Stores size & offset of free chunks.
FreeChunkMap m_freeChunks;
///> Stores size & offset of free chunks.
FREE_CHUNK_MAP m_freeChunks;
///< Stored VERTEX_ITEMs
Items m_items;
///> Stored VERTEX_ITEMs
ITEMS m_items;
///< Currently modified item
///> Currently modified item
VERTEX_ITEM* m_item;
///< Properties of currently modified chunk & item
///> Properties of currently modified chunk & item
unsigned int m_chunkSize;
unsigned int m_chunkOffset;
unsigned int m_itemSize;
@ -146,7 +146,7 @@ private:
*
* @param aChunk is the chunk.
*/
inline int getChunkSize( const Chunk& aChunk ) const
inline int getChunkSize( const CHUNK& aChunk ) const
{
return aChunk.first;
}
@ -157,7 +157,7 @@ private:
*
* @param aChunk is the chunk.
*/
inline unsigned int getChunkOffset( const Chunk& aChunk ) const
inline unsigned int getChunkOffset( const CHUNK& aChunk ) const
{
return aChunk.second;
}

View File

@ -89,15 +89,17 @@ public:
protected:
GPU_MANAGER( VERTEX_CONTAINER* aContainer );
///< Drawing status flag.
///> Drawing status flag.
bool m_isDrawing;
///< Container that stores vertices data.
///> Container that stores vertices data.
VERTEX_CONTAINER* m_container;
///< Shader handling
///> Shader handling
SHADER* m_shader;
int m_shaderAttrib; ///< Location of shader attributes (for glVertexAttribPointer)
///> Location of shader attributes (for glVertexAttribPointer)
int m_shaderAttrib;
};
@ -107,19 +109,19 @@ public:
GPU_CACHED_MANAGER( VERTEX_CONTAINER* aContainer );
~GPU_CACHED_MANAGER();
///< @copydoc GPU_MANAGER::Initialize()
///> @copydoc GPU_MANAGER::Initialize()
virtual void Initialize();
///< @copydoc GPU_MANAGER::BeginDrawing()
///> @copydoc GPU_MANAGER::BeginDrawing()
virtual void BeginDrawing();
///< @copydoc GPU_MANAGER::DrawIndices()
///> @copydoc GPU_MANAGER::DrawIndices()
virtual void DrawIndices( unsigned int aOffset, unsigned int aSize );
///< @copydoc GPU_MANAGER::DrawAll()
///> @copydoc GPU_MANAGER::DrawAll()
virtual void DrawAll();
///< @copydoc GPU_MANAGER::EndDrawing()
///> @copydoc GPU_MANAGER::EndDrawing()
virtual void EndDrawing();
/**
@ -130,10 +132,19 @@ public:
virtual void uploadToGpu();
protected:
///> Buffers initialization flag
bool m_buffersInitialized;
///> Pointer to the current indices buffer
boost::scoped_array<GLuint> m_indices;
///> Pointer to the first free cell in the indices buffer
GLuint* m_indicesPtr;
///> Handle to vertices buffer
GLuint m_verticesBuffer;
///> Number of indices stored in the indices buffer
unsigned int m_indicesSize;
};
@ -143,19 +154,19 @@ class GPU_NONCACHED_MANAGER : public GPU_MANAGER
public:
GPU_NONCACHED_MANAGER( VERTEX_CONTAINER* aContainer );
///< @copydoc GPU_MANAGER::Initialize()
///> @copydoc GPU_MANAGER::Initialize()
virtual void Initialize();
///< @copydoc GPU_MANAGER::BeginDrawing()
///> @copydoc GPU_MANAGER::BeginDrawing()
virtual void BeginDrawing();
///< @copydoc GPU_MANAGER::DrawIndices()
///> @copydoc GPU_MANAGER::DrawIndices()
virtual void DrawIndices( unsigned int aOffset, unsigned int aSize );
///< @copydoc GPU_MANAGER::DrawAll()
///> @copydoc GPU_MANAGER::DrawAll()
virtual void DrawAll();
///< @copydoc GPU_MANAGER::EndDrawing()
///> @copydoc GPU_MANAGER::EndDrawing()
virtual void EndDrawing();
};
} // namespace KIGFX

View File

@ -106,7 +106,8 @@ public:
virtual void DrawLine( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint );
/// @copydoc GAL::DrawSegment()
virtual void DrawSegment( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint, double aWidth );
virtual void DrawSegment( const VECTOR2D& aStartPoint, const VECTOR2D& aEndPoint,
double aWidth );
/// @copydoc GAL::DrawCircle()
virtual void DrawCircle( const VECTOR2D& aCenterPoint, double aRadius );
@ -209,13 +210,13 @@ public:
virtual void RestoreScreen();
/// @copydoc GAL::SetTarget()
virtual void SetTarget( RenderTarget aTarget );
virtual void SetTarget( RENDER_TARGET aTarget );
/// @copydoc GAL::GetTarget()
virtual RenderTarget GetTarget() const;
virtual RENDER_TARGET GetTarget() const;
/// @copydoc GAL::ClearTarget()
virtual void ClearTarget( RenderTarget aTarget );
virtual void ClearTarget( RENDER_TARGET aTarget );
// -------
// Cursor
@ -275,8 +276,8 @@ private:
wxEvtHandler* paintListener;
// Vertex buffer objects related fields
typedef std::map< unsigned int, boost::shared_ptr<VERTEX_ITEM> > GroupsMap;
GroupsMap groups; ///< Stores informations about VBO objects (groups)
typedef std::map< unsigned int, boost::shared_ptr<VERTEX_ITEM> > GROUPS_MAP;
GROUPS_MAP groups; ///< Stores informations about VBO objects (groups)
unsigned int groupCounter; ///< Counter used for generating keys for groups
VERTEX_MANAGER* currentManager; ///< Currently used VERTEX_MANAGER (for storing VERTEX_ITEMs)
VERTEX_MANAGER cachedManager; ///< Container for storing cached VERTEX_ITEMs
@ -287,7 +288,7 @@ private:
OPENGL_COMPOSITOR compositor; ///< Handles multiple rendering targets
unsigned int mainBuffer; ///< Main rendering target
unsigned int overlayBuffer; ///< Auxiliary rendering target (for menus etc.)
RenderTarget currentTarget; ///< Current rendering target
RENDER_TARGET currentTarget; ///< Current rendering target
// Shader
SHADER shader; ///< There is only one shader used for different objects

View File

@ -39,7 +39,7 @@ namespace KIGFX
class OPENGL_GAL;
/// Type definition for the shader
enum ShaderType
enum SHADER_TYPE
{
SHADER_TYPE_VERTEX = GL_VERTEX_SHADER, ///< Vertex shader
SHADER_TYPE_FRAGMENT = GL_FRAGMENT_SHADER, ///< Fragment shader
@ -77,7 +77,7 @@ public:
* @param aShaderType is the type of the shader.
* @return True in case of success, false otherwise.
*/
bool LoadBuiltinShader( unsigned int aShaderNumber, ShaderType aShaderType );
bool LoadBuiltinShader( unsigned int aShaderNumber, SHADER_TYPE aShaderType );
/**
* @brief Loads one of the built-in shaders and compiles it.
@ -86,7 +86,7 @@ public:
* @param aShaderType is the type of the shader.
* @return True in case of success, false otherwise.
*/
bool LoadShaderFromFile( const std::string& aShaderSourceName, ShaderType aShaderType );
bool LoadShaderFromFile( const std::string& aShaderSourceName, SHADER_TYPE aShaderType );
/**
* @brief Link the shaders.
@ -193,7 +193,7 @@ private:
* @param aShaderType is the type of the shader.
* @return True in case of success, false otherwise.
*/
bool addSource( const std::string& aShaderSource, ShaderType aShaderType );
bool addSource( const std::string& aShaderSource, SHADER_TYPE aShaderType );
std::deque<GLuint> shaderNumbers; ///< Shader number list
GLuint programNumber; ///< Shader program number

Some files were not shown because too many files have changed in this diff Show More