EgtGeomKernel 1.5c6 :
- aggiunta gestione attributi Level, Mode e Status - aggiunti comandi per assegnarli.
This commit is contained in:
+25
-22
@@ -31,35 +31,34 @@ Attribs::Dump( string& sOut, const char* szNewLine) const
|
||||
// livello
|
||||
sOut += "Lev=" ;
|
||||
switch ( m_Data[LEVEL]) {
|
||||
default : /* LEV_USER */ sOut += "user" ; break ;
|
||||
case LEV_SYSTEM : sOut += "system" ; break ;
|
||||
case LEV_TEMP : sOut += "temp" ; break ;
|
||||
default : /* GDB_LV_USER */ sOut += "user" ; break ;
|
||||
case GDB_LV_SYSTEM : sOut += "system" ; break ;
|
||||
case GDB_LV_TEMP : sOut += "temp" ; break ;
|
||||
}
|
||||
// modo
|
||||
sOut += " Mod=" ;
|
||||
switch ( m_Data[MODE]) {
|
||||
default : /* MOD_STD */ sOut += "std" ; break ;
|
||||
case MOD_LOCKED : sOut += "locked" ; break ;
|
||||
case MOD_HIDDEN : sOut += "hidden" ; break ;
|
||||
default : /* GDB_MD_STD */ sOut += "std" ; break ;
|
||||
case GDB_MD_LOCKED : sOut += "locked" ; break ;
|
||||
case GDB_MD_HIDDEN : sOut += "hidden" ; break ;
|
||||
}
|
||||
// stato
|
||||
sOut += " Sta=" ;
|
||||
switch ( m_Data[STATUS]) {
|
||||
default : /* STS_ON */ sOut += "on" ; break ;
|
||||
case STS_SEL : sOut += "sel" ; break ;
|
||||
case STS_OFF : sOut += "off" ; break ;
|
||||
default : /* GDB_ST_ON */ sOut += "on" ; break ;
|
||||
case GDB_ST_SEL : sOut += "sel" ; break ;
|
||||
case GDB_ST_OFF : sOut += "off" ; break ;
|
||||
}
|
||||
sOut += szNewLine ;
|
||||
// materiale
|
||||
sOut += "Mat=" ;
|
||||
switch ( m_Material) {
|
||||
case MAT_PARENT : sOut += "by parent" ; break ;
|
||||
case MAT_COLOR : sOut += "color" ; break ;
|
||||
case MAT_NULL : sOut += "null" ; break ;
|
||||
case GDB_MT_COLOR : sOut += "color" ; break ;
|
||||
case GDB_MT_PARENT : sOut += "by parent" ; break ;
|
||||
default : sOut += ToString( m_Material) ; break ;
|
||||
}
|
||||
// eventuale colore
|
||||
if ( m_Material != MAT_PARENT && m_Material != MAT_NULL) {
|
||||
if ( m_Material == GDB_MT_COLOR) {
|
||||
sOut += " Col=" ;
|
||||
string sColName ;
|
||||
if ( GetNameOfStdColor( m_Color, sColName))
|
||||
@@ -91,8 +90,9 @@ Attribs::Save( ostream& osOut) const
|
||||
osOut << ToString( m_Data[LEVEL]) << "," ;
|
||||
// modo
|
||||
osOut << ToString( m_Data[MODE]) << "," ;
|
||||
// stato
|
||||
osOut << ToString( m_Data[STATUS]) << "," ;
|
||||
// stato (se SEL viene convertito in ON)
|
||||
int nStat = (( m_Data[STATUS] == GDB_ST_SEL) ? GDB_ST_ON : m_Data[STATUS]) ;
|
||||
osOut << ToString( nStat) << "," ;
|
||||
// altro
|
||||
osOut << ToString( m_Data[OTHER]) << ";" ;
|
||||
// materiale
|
||||
@@ -126,11 +126,14 @@ Attribs::Load( Scanner& TheScanner)
|
||||
// Data (Level,Mode,Status,Other)
|
||||
if ( ! DataFromString( vsParams[0]))
|
||||
return false ;
|
||||
// OldData è inizializzato con Data
|
||||
for ( int i = 0 ; i < DIM ; ++ i)
|
||||
m_OldData[i] = m_Data[i] ;
|
||||
// materiale
|
||||
int nMat ;
|
||||
if ( ! FromString( vsParams[1], nMat))
|
||||
return false ;
|
||||
m_Material = __max( nMat, MAT_PARENT) ;
|
||||
m_Material = __max( nMat, GDB_MT_COLOR) ;
|
||||
// colore
|
||||
if ( ! FromString( vsParams[2], m_Color))
|
||||
return false ;
|
||||
@@ -164,22 +167,22 @@ Attribs::DataFromString( const string& sParam)
|
||||
int nLev ;
|
||||
if ( ! FromString( vsParams[0], nLev))
|
||||
return false ;
|
||||
m_Data[LEVEL] = CLIP( nLev, LEV_USER, LEV_TEMP) ;
|
||||
m_Data[LEVEL] = CLIP( nLev, GDB_LV_USER, GDB_LV_TEMP) ;
|
||||
// modo
|
||||
int nMode ;
|
||||
if ( ! FromString( vsParams[1], nMode))
|
||||
return false ;
|
||||
m_Data[MODE] = CLIP( nMode, MOD_STD, MOD_HIDDEN) ;
|
||||
m_Data[MODE] = CLIP( nMode, GDB_MD_STD, GDB_MD_HIDDEN) ;
|
||||
// stato
|
||||
int nStat ;
|
||||
if ( ! FromString( vsParams[2], nStat))
|
||||
return false ;
|
||||
m_Data[STATUS] = CLIP( nStat, STS_ON, STS_OFF) ;
|
||||
m_Data[STATUS] = CLIP( nStat, GDB_ST_ON, GDB_ST_OFF) ;
|
||||
// altro
|
||||
int nOther ;
|
||||
if ( ! FromString( vsParams[3], nOther))
|
||||
int nOldStatus ;
|
||||
if ( ! FromString( vsParams[3], nOldStatus))
|
||||
return false ;
|
||||
m_Data[OTHER] = CLIP( nOther, 0, 255) ;
|
||||
m_Data[OTHER] = CLIP( nOldStatus, 0, 255) ;
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user