* ./hurricane/src/hurricane:
- New: In DbU, extend the StringMode/getValueString() to support the physical unit in addition of lambda & foundry grid. "setStringMode()" has now a second parameter "UnitPower", only used when the mode is DbU::Physical. * ./hurricane/src/hviewer: - New: In CellWidget, the fitToContents now adds a margin of 5% to get border clear of the bounding box. - New: In CellWidget, ability to display lengths in nanometers & micrometers in complement of symbolic and foundry grid. DisplayFilterWidget modificated accordingly. New members: void setPhysicalMode ( DbU::UnitPower ); bool physicalMode () const; DbU::UnitPower getUnitPower () const; In addition to: bool gridMode () const; bool symbolicMode () const; void setGridMode (); void setSymbolicMode ();
This commit is contained in:
parent
0c88f99622
commit
faceb1f169
|
@ -57,6 +57,7 @@ namespace Hurricane {
|
||||||
double DbU::_gridsPerLambda = 10.0;
|
double DbU::_gridsPerLambda = 10.0;
|
||||||
double DbU::_physicalsPerGrid = 1.0;
|
double DbU::_physicalsPerGrid = 1.0;
|
||||||
unsigned int DbU::_stringMode = DbU::Symbolic;
|
unsigned int DbU::_stringMode = DbU::Symbolic;
|
||||||
|
DbU::UnitPower DbU::_stringModeUnitPower = DbU::Nano;
|
||||||
DbU::Unit DbU::_symbolicSnapGridStep = DbU::lambda(1.0);
|
DbU::Unit DbU::_symbolicSnapGridStep = DbU::lambda(1.0);
|
||||||
DbU::Unit DbU::_realSnapGridStep = DbU::grid (10.0);
|
DbU::Unit DbU::_realSnapGridStep = DbU::grid (10.0);
|
||||||
const DbU::Unit DbU::Min = std::numeric_limits<long>::min();
|
const DbU::Unit DbU::Min = std::numeric_limits<long>::min();
|
||||||
|
@ -245,6 +246,13 @@ namespace Hurricane {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DbU::setStringMode ( unsigned int mode, UnitPower p )
|
||||||
|
{
|
||||||
|
_stringMode = mode;
|
||||||
|
if ( _stringMode == Physical ) _stringModeUnitPower = p;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
string DbU::getValueString ( DbU::Unit u, int mode )
|
string DbU::getValueString ( DbU::Unit u, int mode )
|
||||||
{
|
{
|
||||||
char buffer[1024];
|
char buffer[1024];
|
||||||
|
@ -256,6 +264,17 @@ namespace Hurricane {
|
||||||
} else if ( _stringMode == Symbolic ) {
|
} else if ( _stringMode == Symbolic ) {
|
||||||
unitSymbol = 'l';
|
unitSymbol = 'l';
|
||||||
snprintf ( buffer, 1024, "%.1f", getLambda(u) );
|
snprintf ( buffer, 1024, "%.1f", getLambda(u) );
|
||||||
|
} else if ( _stringMode == Physical ) {
|
||||||
|
switch ( _stringModeUnitPower ) {
|
||||||
|
case Pico: unitSymbol = 'p'; break;
|
||||||
|
case Nano: unitSymbol = 'n'; break;
|
||||||
|
case Micro: unitSymbol = 'm'; break;
|
||||||
|
case Milli: unitSymbol = 'M'; break;
|
||||||
|
case Unity: unitSymbol = 'U'; break;
|
||||||
|
case Kilo: unitSymbol = 'k'; break;
|
||||||
|
default: unitSymbol = '?'; break;
|
||||||
|
}
|
||||||
|
snprintf ( buffer, 1024, "%.1f", getPhysical(u,_stringModeUnitPower) );
|
||||||
} else {
|
} else {
|
||||||
if ( _stringMode != Db )
|
if ( _stringMode != Db )
|
||||||
cerr << "[ERROR] Unknown Unit representation mode: " << _stringMode << endl;
|
cerr << "[ERROR] Unknown Unit representation mode: " << _stringMode << endl;
|
||||||
|
|
|
@ -62,10 +62,11 @@ namespace Hurricane {
|
||||||
public:
|
public:
|
||||||
typedef long Unit;
|
typedef long Unit;
|
||||||
public:
|
public:
|
||||||
enum StringMode { Db = 1
|
enum StringMode { Db = (1<<0)
|
||||||
, Grid = 2
|
, Grid = (1<<1)
|
||||||
, Symbolic = 4
|
, Symbolic = (1<<2)
|
||||||
, SmartTruncate = 8
|
, Physical = (1<<3)
|
||||||
|
, SmartTruncate = (1<<4)
|
||||||
};
|
};
|
||||||
enum SnapMode { Inferior = 1
|
enum SnapMode { Inferior = 1
|
||||||
, Superior = 2
|
, Superior = 2
|
||||||
|
@ -107,7 +108,7 @@ namespace Hurricane {
|
||||||
static string getValueString ( Unit u, int mode=SmartTruncate );
|
static string getValueString ( Unit u, int mode=SmartTruncate );
|
||||||
static Record* getValueRecord ( const Unit* u );
|
static Record* getValueRecord ( const Unit* u );
|
||||||
static Slot* getValueSlot ( const string& name, const Unit* u );
|
static Slot* getValueSlot ( const string& name, const Unit* u );
|
||||||
static inline void setStringMode ( unsigned int mode );
|
static void setStringMode ( unsigned int mode, UnitPower p=Nano );
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Static Attributes: constants.
|
// Static Attributes: constants.
|
||||||
|
@ -121,6 +122,7 @@ namespace Hurricane {
|
||||||
static double _gridsPerLambda;
|
static double _gridsPerLambda;
|
||||||
static double _physicalsPerGrid;
|
static double _physicalsPerGrid;
|
||||||
static unsigned int _stringMode;
|
static unsigned int _stringMode;
|
||||||
|
static DbU::UnitPower _stringModeUnitPower;
|
||||||
static DbU::Unit _realSnapGridStep;
|
static DbU::Unit _realSnapGridStep;
|
||||||
static DbU::Unit _symbolicSnapGridStep;
|
static DbU::Unit _symbolicSnapGridStep;
|
||||||
};
|
};
|
||||||
|
@ -134,7 +136,6 @@ namespace Hurricane {
|
||||||
inline double DbU::getGrid ( DbU::Unit u ) { return _resolution*(double)u; }
|
inline double DbU::getGrid ( DbU::Unit u ) { return _resolution*(double)u; }
|
||||||
inline double DbU::getLambda ( DbU::Unit u ) { return getGrid(u)/_gridsPerLambda; }
|
inline double DbU::getLambda ( DbU::Unit u ) { return getGrid(u)/_gridsPerLambda; }
|
||||||
inline double DbU::getPhysical ( DbU::Unit u, UnitPower p ) { return (_physicalsPerGrid*_resolution*(double)u)/getUnitPower(p); }
|
inline double DbU::getPhysical ( DbU::Unit u, UnitPower p ) { return (_physicalsPerGrid*_resolution*(double)u)/getUnitPower(p); }
|
||||||
inline void DbU::setStringMode ( unsigned int mode ) { _stringMode = mode; }
|
|
||||||
inline void DbU::setRealSnapGridStep ( DbU::Unit step ) { _realSnapGridStep = step; }
|
inline void DbU::setRealSnapGridStep ( DbU::Unit step ) { _realSnapGridStep = step; }
|
||||||
inline void DbU::setSymbolicSnapGridStep ( DbU::Unit step ) { _symbolicSnapGridStep = step; }
|
inline void DbU::setSymbolicSnapGridStep ( DbU::Unit step ) { _symbolicSnapGridStep = step; }
|
||||||
inline DbU::Unit DbU::getOnPhysicalGrid ( DbU::Unit u, SnapMode mode ) { return getOnCustomGrid(u, grid(1), mode); }
|
inline DbU::Unit DbU::getOnPhysicalGrid ( DbU::Unit u, SnapMode mode ) { return getOnCustomGrid(u, grid(1), mode); }
|
||||||
|
|
|
@ -1243,17 +1243,20 @@ namespace Hurricane {
|
||||||
|
|
||||||
void CellWidget::changeLayoutMode ()
|
void CellWidget::changeLayoutMode ()
|
||||||
{
|
{
|
||||||
if ( symbolicMode() )
|
if ( symbolicMode() ) {
|
||||||
setSymbolicMode ();
|
setSymbolicMode ();
|
||||||
else
|
} else if ( gridMode() ) {
|
||||||
setRealMode ();
|
setGridMode ();
|
||||||
|
} else {
|
||||||
|
setPhysicalMode(_state->getUnitPower());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void CellWidget::setRealMode ()
|
void CellWidget::setGridMode ()
|
||||||
{
|
{
|
||||||
if ( !realMode() ) {
|
if ( not gridMode() ) {
|
||||||
_state->setRealMode ();
|
_state->setGridMode ();
|
||||||
DbU::setStringMode ( DbU::Grid );
|
DbU::setStringMode ( DbU::Grid );
|
||||||
|
|
||||||
updateMousePosition ();
|
updateMousePosition ();
|
||||||
|
@ -1266,7 +1269,7 @@ namespace Hurricane {
|
||||||
|
|
||||||
void CellWidget::setSymbolicMode ()
|
void CellWidget::setSymbolicMode ()
|
||||||
{
|
{
|
||||||
if ( !symbolicMode() ) {
|
if ( not symbolicMode() ) {
|
||||||
_state->setSymbolicMode ();
|
_state->setSymbolicMode ();
|
||||||
DbU::setStringMode ( DbU::Symbolic );
|
DbU::setStringMode ( DbU::Symbolic );
|
||||||
|
|
||||||
|
@ -1278,6 +1281,20 @@ namespace Hurricane {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void CellWidget::setPhysicalMode ( DbU::UnitPower p )
|
||||||
|
{
|
||||||
|
if ( not physicalMode() or (_state->getUnitPower() != p) ) {
|
||||||
|
_state->setPhysicalMode ( p );
|
||||||
|
DbU::setStringMode ( DbU::Physical, p );
|
||||||
|
|
||||||
|
updateMousePosition ();
|
||||||
|
refresh ();
|
||||||
|
|
||||||
|
emit layoutModeChanged ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void CellWidget::setShowSelection ( bool state )
|
void CellWidget::setShowSelection ( bool state )
|
||||||
{
|
{
|
||||||
if ( state != _state->showSelection() ) {
|
if ( state != _state->showSelection() ) {
|
||||||
|
@ -1816,7 +1833,7 @@ namespace Hurricane {
|
||||||
{
|
{
|
||||||
QFont font = Graphics::getNormalFont();
|
QFont font = Graphics::getNormalFont();
|
||||||
QFontMetrics metrics = QFontMetrics(font);
|
QFontMetrics metrics = QFontMetrics(font);
|
||||||
int tickLength = metrics.width ( "+00000" );
|
int tickLength = metrics.width ( "+00000u" );
|
||||||
Point origin = ruler->getOrigin ();
|
Point origin = ruler->getOrigin ();
|
||||||
Point extremity = ruler->getExtremity ();
|
Point extremity = ruler->getExtremity ();
|
||||||
Point angle = ruler->getAngle ();
|
Point angle = ruler->getAngle ();
|
||||||
|
@ -1887,7 +1904,7 @@ namespace Hurricane {
|
||||||
|
|
||||||
// if ( !tick ) continue;
|
// if ( !tick ) continue;
|
||||||
|
|
||||||
textGrad = DbU::getValueString( gradStep*tick );
|
textGrad = DbU::getValueString( gradStep*tick, (symbolicMode()) ? DbU::Symbolic : DbU::Grid );
|
||||||
textGrad.resize ( textGrad.size()-1 );
|
textGrad.resize ( textGrad.size()-1 );
|
||||||
|
|
||||||
drawDisplayText ( QPoint ( pxGrad - 1, pxOrigin.y() + tickLength )
|
drawDisplayText ( QPoint ( pxGrad - 1, pxOrigin.y() + tickLength )
|
||||||
|
@ -1902,7 +1919,8 @@ namespace Hurricane {
|
||||||
_drawingPlanes.painter().drawLine ( pxAngle.x(), pxAngle.y()
|
_drawingPlanes.painter().drawLine ( pxAngle.x(), pxAngle.y()
|
||||||
, pxAngle.x(), pxAngle.y()+tickLength );
|
, pxAngle.x(), pxAngle.y()+tickLength );
|
||||||
|
|
||||||
textGrad = DbU::getValueString ( angle.getX() - origin.getX() );
|
textGrad = DbU::getValueString ( angle.getX() - origin.getX()
|
||||||
|
, (symbolicMode()) ? DbU::Symbolic : DbU::Grid );
|
||||||
textGrad.resize ( textGrad.size()-1 );
|
textGrad.resize ( textGrad.size()-1 );
|
||||||
|
|
||||||
drawDisplayText ( QPoint ( pxAngle.x() - 1,pxAngle.y() + tickLength )
|
drawDisplayText ( QPoint ( pxAngle.x() - 1,pxAngle.y() + tickLength )
|
||||||
|
@ -1945,7 +1963,7 @@ namespace Hurricane {
|
||||||
|
|
||||||
// if ( !tick ) continue;
|
// if ( !tick ) continue;
|
||||||
|
|
||||||
textGrad = DbU::getValueString( gradStep*tick );
|
textGrad = DbU::getValueString( gradStep*tick, (symbolicMode()) ? DbU::Symbolic : DbU::Grid );
|
||||||
textGrad.resize ( textGrad.size()-1 );
|
textGrad.resize ( textGrad.size()-1 );
|
||||||
|
|
||||||
drawDisplayText ( QPoint(pxOrigin.x() - tickLength,pyGrad + 1)
|
drawDisplayText ( QPoint(pxOrigin.x() - tickLength,pyGrad + 1)
|
||||||
|
@ -1960,7 +1978,8 @@ namespace Hurricane {
|
||||||
_drawingPlanes.painter().drawLine ( pxOrigin.x() , pxAngle.y()
|
_drawingPlanes.painter().drawLine ( pxOrigin.x() , pxAngle.y()
|
||||||
, pxOrigin.x()-tickLength, pxAngle.y() );
|
, pxOrigin.x()-tickLength, pxAngle.y() );
|
||||||
|
|
||||||
textGrad = DbU::getValueString( angle.getY() - origin.getY() );
|
textGrad = DbU::getValueString( angle.getY() - origin.getY()
|
||||||
|
, (symbolicMode()) ? DbU::Symbolic : DbU::Grid );
|
||||||
textGrad.resize ( textGrad.size()-1 );
|
textGrad.resize ( textGrad.size()-1 );
|
||||||
|
|
||||||
drawDisplayText ( QPoint(pxOrigin.x() - tickLength,pxAngle.y() + 1)
|
drawDisplayText ( QPoint(pxOrigin.x() - tickLength,pxAngle.y() + 1)
|
||||||
|
@ -2142,7 +2161,15 @@ namespace Hurricane {
|
||||||
);
|
);
|
||||||
|
|
||||||
if ( getCell() ) boundingBox = getCell()->getBoundingBox();
|
if ( getCell() ) boundingBox = getCell()->getBoundingBox();
|
||||||
reframe ( boundingBox, historyEnable );
|
|
||||||
|
DbU::Unit expand;
|
||||||
|
if ( boundingBox.getWidth() < boundingBox.getHeight() ) {
|
||||||
|
expand = DbU::grid( DbU::getGrid(boundingBox.getWidth()) * 0.05 );
|
||||||
|
} else {
|
||||||
|
expand = DbU::grid( DbU::getGrid(boundingBox.getHeight()) * 0.05 );
|
||||||
|
}
|
||||||
|
|
||||||
|
reframe ( boundingBox.inflate(expand), historyEnable );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -56,7 +56,9 @@ namespace Hurricane {
|
||||||
, _centric (new QRadioButton())
|
, _centric (new QRadioButton())
|
||||||
, _barycentric (new QRadioButton())
|
, _barycentric (new QRadioButton())
|
||||||
, _symbolicMode (new QRadioButton())
|
, _symbolicMode (new QRadioButton())
|
||||||
, _realMode (new QRadioButton())
|
, _gridMode (new QRadioButton())
|
||||||
|
, _nanoMode (new QRadioButton())
|
||||||
|
, _microMode (new QRadioButton())
|
||||||
, _updateState (ExternalEmit)
|
, _updateState (ExternalEmit)
|
||||||
{
|
{
|
||||||
setAttribute ( Qt::WA_QuitOnClose, false );
|
setAttribute ( Qt::WA_QuitOnClose, false );
|
||||||
|
@ -154,11 +156,23 @@ namespace Hurricane {
|
||||||
group->addButton ( _symbolicMode );
|
group->addButton ( _symbolicMode );
|
||||||
hLayout->addWidget ( _symbolicMode );
|
hLayout->addWidget ( _symbolicMode );
|
||||||
|
|
||||||
_realMode->setText ( tr("Real (foundry grid)") );
|
_gridMode->setText ( tr("Real (foundry grid)") );
|
||||||
_realMode->setFont ( Graphics::getNormalFont() );
|
_gridMode->setFont ( Graphics::getNormalFont() );
|
||||||
group->setId ( _realMode, 0 );
|
group->setId ( _gridMode, 0 );
|
||||||
group->addButton ( _realMode );
|
group->addButton ( _gridMode );
|
||||||
hLayout->addWidget ( _realMode );
|
hLayout->addWidget ( _gridMode );
|
||||||
|
|
||||||
|
_nanoMode->setText ( tr("nanometer") );
|
||||||
|
_nanoMode->setFont ( Graphics::getNormalFont() );
|
||||||
|
group->setId ( _nanoMode, 0 );
|
||||||
|
group->addButton ( _nanoMode );
|
||||||
|
hLayout->addWidget ( _nanoMode );
|
||||||
|
|
||||||
|
_microMode->setText ( tr("micrometer") );
|
||||||
|
_microMode->setFont ( Graphics::getNormalFont() );
|
||||||
|
group->setId ( _microMode, 0 );
|
||||||
|
group->addButton ( _microMode );
|
||||||
|
hLayout->addWidget ( _microMode );
|
||||||
|
|
||||||
groupBox->setLayout ( hLayout );
|
groupBox->setLayout ( hLayout );
|
||||||
wLayout->addWidget ( groupBox );
|
wLayout->addWidget ( groupBox );
|
||||||
|
@ -172,7 +186,9 @@ namespace Hurricane {
|
||||||
connect ( _centric , SIGNAL(clicked()) , this, SLOT(setRubberCentric()) );
|
connect ( _centric , SIGNAL(clicked()) , this, SLOT(setRubberCentric()) );
|
||||||
connect ( _barycentric , SIGNAL(clicked()) , this, SLOT(setRubberBarycentric()) );
|
connect ( _barycentric , SIGNAL(clicked()) , this, SLOT(setRubberBarycentric()) );
|
||||||
connect ( _symbolicMode, SIGNAL(clicked()) , this, SLOT(setSymbolicMode()) );
|
connect ( _symbolicMode, SIGNAL(clicked()) , this, SLOT(setSymbolicMode()) );
|
||||||
connect ( _realMode , SIGNAL(clicked()) , this, SLOT(setRealMode()) );
|
connect ( _gridMode , SIGNAL(clicked()) , this, SLOT(setGridMode()) );
|
||||||
|
connect ( _nanoMode , SIGNAL(clicked()) , this, SLOT(setNanoMode()) );
|
||||||
|
connect ( _microMode , SIGNAL(clicked()) , this, SLOT(setMicroMode()) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -212,8 +228,14 @@ namespace Hurricane {
|
||||||
|
|
||||||
if ( _cellWidget->symbolicMode() )
|
if ( _cellWidget->symbolicMode() )
|
||||||
_symbolicMode->setChecked(true);
|
_symbolicMode->setChecked(true);
|
||||||
else
|
else if ( _cellWidget->gridMode() )
|
||||||
_realMode->setChecked(true);
|
_gridMode->setChecked(true);
|
||||||
|
else if ( _cellWidget->physicalMode() ) {
|
||||||
|
switch ( _cellWidget->getUnitPower() ) {
|
||||||
|
case DbU::Nano: _nanoMode->setChecked(true); break;
|
||||||
|
case DbU::Micro: _microMode->setChecked(true); break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
blockAllSignals ( false );
|
blockAllSignals ( false );
|
||||||
}
|
}
|
||||||
|
@ -264,7 +286,9 @@ namespace Hurricane {
|
||||||
_centric ->blockSignals ( state );
|
_centric ->blockSignals ( state );
|
||||||
_barycentric ->blockSignals ( state );
|
_barycentric ->blockSignals ( state );
|
||||||
_symbolicMode ->blockSignals ( state );
|
_symbolicMode ->blockSignals ( state );
|
||||||
_realMode ->blockSignals ( state );
|
_gridMode ->blockSignals ( state );
|
||||||
|
_nanoMode ->blockSignals ( state );
|
||||||
|
_microMode ->blockSignals ( state );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -382,12 +406,34 @@ namespace Hurricane {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DisplayFilterWidget::setRealMode ()
|
void DisplayFilterWidget::setGridMode ()
|
||||||
{
|
{
|
||||||
if ( _cellWidget ) {
|
if ( _cellWidget ) {
|
||||||
if ( !_cellWidget->realMode() ) {
|
if ( !_cellWidget->gridMode() ) {
|
||||||
_updateState = InternalEmit;
|
_updateState = InternalEmit;
|
||||||
_cellWidget->setRealMode ();
|
_cellWidget->setGridMode ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DisplayFilterWidget::setNanoMode ()
|
||||||
|
{
|
||||||
|
if ( _cellWidget ) {
|
||||||
|
if ( not _cellWidget->physicalMode() or (_cellWidget->getUnitPower() != DbU::Nano) ) {
|
||||||
|
_updateState = InternalEmit;
|
||||||
|
_cellWidget->setPhysicalMode ( DbU::Nano );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DisplayFilterWidget::setMicroMode ()
|
||||||
|
{
|
||||||
|
if ( _cellWidget ) {
|
||||||
|
if ( not _cellWidget->physicalMode() or (_cellWidget->getUnitPower() != DbU::Micro) ) {
|
||||||
|
_updateState = InternalEmit;
|
||||||
|
_cellWidget->setPhysicalMode ( DbU::Micro );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -146,8 +146,10 @@ namespace Hurricane {
|
||||||
inline void resetActiveCommand ();
|
inline void resetActiveCommand ();
|
||||||
inline void setCursorStep ( DbU::Unit );
|
inline void setCursorStep ( DbU::Unit );
|
||||||
inline void setRealSnapGridStep ( DbU::Unit step );
|
inline void setRealSnapGridStep ( DbU::Unit step );
|
||||||
inline bool realMode () const;
|
inline bool gridMode () const;
|
||||||
inline bool symbolicMode () const;
|
inline bool symbolicMode () const;
|
||||||
|
inline bool physicalMode () const;
|
||||||
|
inline DbU::UnitPower getUnitPower () const;
|
||||||
inline bool showBoundaries () const;
|
inline bool showBoundaries () const;
|
||||||
inline bool showSelection () const;
|
inline bool showSelection () const;
|
||||||
inline bool cumulativeSelection () const;
|
inline bool cumulativeSelection () const;
|
||||||
|
@ -292,8 +294,9 @@ namespace Hurricane {
|
||||||
void setScale ( float );
|
void setScale ( float );
|
||||||
void scaleHistoryUp ();
|
void scaleHistoryUp ();
|
||||||
void scaleHistoryDown ();
|
void scaleHistoryDown ();
|
||||||
void setRealMode ();
|
void setGridMode ();
|
||||||
void setSymbolicMode ();
|
void setSymbolicMode ();
|
||||||
|
void setPhysicalMode ( DbU::UnitPower );
|
||||||
void setShowBoundaries ( bool state );
|
void setShowBoundaries ( bool state );
|
||||||
void reframe ();
|
void reframe ();
|
||||||
void reframe ( const Box& box, bool historyEnable=true );
|
void reframe ( const Box& box, bool historyEnable=true );
|
||||||
|
@ -540,8 +543,10 @@ namespace Hurricane {
|
||||||
inline void setCellWidget ( CellWidget* );
|
inline void setCellWidget ( CellWidget* );
|
||||||
inline void setCursorStep ( DbU::Unit );
|
inline void setCursorStep ( DbU::Unit );
|
||||||
inline DbU::Unit getCursorStep () const;
|
inline DbU::Unit getCursorStep () const;
|
||||||
inline void setRealMode ();
|
inline DbU::UnitPower getUnitPower () const;
|
||||||
|
inline void setGridMode ();
|
||||||
inline void setSymbolicMode ();
|
inline void setSymbolicMode ();
|
||||||
|
inline void setPhysicalMode ( DbU::UnitPower );
|
||||||
inline void setShowBoundaries ( bool );
|
inline void setShowBoundaries ( bool );
|
||||||
inline void setShowSelection ( bool );
|
inline void setShowSelection ( bool );
|
||||||
inline void setCumulativeSelection ( bool );
|
inline void setCumulativeSelection ( bool );
|
||||||
|
@ -560,8 +565,11 @@ namespace Hurricane {
|
||||||
inline SelectorCriterions& getSelection ();
|
inline SelectorCriterions& getSelection ();
|
||||||
inline RulerSet& getRulers ();
|
inline RulerSet& getRulers ();
|
||||||
inline DbU::Unit cursorStep () const;
|
inline DbU::Unit cursorStep () const;
|
||||||
inline bool realMode () const;
|
inline bool gridMode () const;
|
||||||
inline bool symbolicMode () const;
|
inline bool symbolicMode () const;
|
||||||
|
inline bool physicalMode () const;
|
||||||
|
inline bool nanoMode () const;
|
||||||
|
inline bool microMode () const;
|
||||||
inline bool showBoundaries () const;
|
inline bool showBoundaries () const;
|
||||||
inline bool showSelection () const;
|
inline bool showSelection () const;
|
||||||
inline bool cumulativeSelection () const;
|
inline bool cumulativeSelection () const;
|
||||||
|
@ -589,7 +597,8 @@ namespace Hurricane {
|
||||||
SelectorCriterions _selection;
|
SelectorCriterions _selection;
|
||||||
RulerSet _rulers;
|
RulerSet _rulers;
|
||||||
DbU::Unit _cursorStep;
|
DbU::Unit _cursorStep;
|
||||||
bool _symbolicMode;
|
unsigned int _displayMode;
|
||||||
|
DbU::UnitPower _unitPower;
|
||||||
bool _showBoundaries;
|
bool _showBoundaries;
|
||||||
bool _showSelection;
|
bool _showSelection;
|
||||||
Query::Mask _queryFilter;
|
Query::Mask _queryFilter;
|
||||||
|
@ -877,7 +886,8 @@ namespace Hurricane {
|
||||||
, _selection ()
|
, _selection ()
|
||||||
, _rulers ()
|
, _rulers ()
|
||||||
, _cursorStep (DbU::lambda(0.5))
|
, _cursorStep (DbU::lambda(0.5))
|
||||||
, _symbolicMode (true)
|
, _displayMode (DbU::Symbolic)
|
||||||
|
, _unitPower (DbU::Nano)
|
||||||
, _showBoundaries (true)
|
, _showBoundaries (true)
|
||||||
, _showSelection (false)
|
, _showSelection (false)
|
||||||
, _queryFilter (~Query::DoTerminalCells)
|
, _queryFilter (~Query::DoTerminalCells)
|
||||||
|
@ -894,7 +904,15 @@ namespace Hurricane {
|
||||||
|
|
||||||
|
|
||||||
inline bool CellWidget::State::symbolicMode () const
|
inline bool CellWidget::State::symbolicMode () const
|
||||||
{ return _symbolicMode; }
|
{ return (_displayMode == DbU::Symbolic); }
|
||||||
|
|
||||||
|
|
||||||
|
inline bool CellWidget::State::gridMode () const
|
||||||
|
{ return (_displayMode == DbU::Grid); }
|
||||||
|
|
||||||
|
|
||||||
|
inline bool CellWidget::State::physicalMode () const
|
||||||
|
{ return (_displayMode == DbU::Physical); }
|
||||||
|
|
||||||
|
|
||||||
inline void CellWidget::State::setCell ( Cell* cell )
|
inline void CellWidget::State::setCell ( Cell* cell )
|
||||||
|
@ -915,20 +933,32 @@ namespace Hurricane {
|
||||||
{ return _cursorStep; }
|
{ return _cursorStep; }
|
||||||
|
|
||||||
|
|
||||||
inline void CellWidget::State::setRealMode ()
|
inline DbU::UnitPower CellWidget::State::getUnitPower () const
|
||||||
|
{ return _unitPower; }
|
||||||
|
|
||||||
|
|
||||||
|
inline void CellWidget::State::setGridMode ()
|
||||||
{
|
{
|
||||||
_symbolicMode = false;
|
_displayMode = DbU::Grid;
|
||||||
_cursorStep = DbU::grid ( 1.0 );
|
_cursorStep = DbU::grid ( 1.0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
inline void CellWidget::State::setSymbolicMode ()
|
inline void CellWidget::State::setSymbolicMode ()
|
||||||
{
|
{
|
||||||
_symbolicMode = true;
|
_displayMode = DbU::Symbolic;
|
||||||
_cursorStep = DbU::lambda ( 0.5 );
|
_cursorStep = DbU::lambda ( 0.5 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
inline void CellWidget::State::setPhysicalMode ( DbU::UnitPower p )
|
||||||
|
{
|
||||||
|
_displayMode = DbU::Physical;
|
||||||
|
_cursorStep = DbU::grid ( 1.0 );
|
||||||
|
_unitPower = p;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
inline void CellWidget::State::setShowBoundaries ( bool state )
|
inline void CellWidget::State::setShowBoundaries ( bool state )
|
||||||
{ _showBoundaries = state; }
|
{ _showBoundaries = state; }
|
||||||
|
|
||||||
|
@ -1238,14 +1268,22 @@ namespace Hurricane {
|
||||||
{ return _state->cursorStep(); }
|
{ return _state->cursorStep(); }
|
||||||
|
|
||||||
|
|
||||||
inline bool CellWidget::realMode () const
|
inline bool CellWidget::gridMode () const
|
||||||
{ return !_state->symbolicMode(); }
|
{ return _state->gridMode(); }
|
||||||
|
|
||||||
|
|
||||||
inline bool CellWidget::symbolicMode () const
|
inline bool CellWidget::symbolicMode () const
|
||||||
{ return _state->symbolicMode(); }
|
{ return _state->symbolicMode(); }
|
||||||
|
|
||||||
|
|
||||||
|
inline bool CellWidget::physicalMode () const
|
||||||
|
{ return _state->physicalMode(); }
|
||||||
|
|
||||||
|
|
||||||
|
inline DbU::UnitPower CellWidget::getUnitPower () const
|
||||||
|
{ return _state->getUnitPower(); }
|
||||||
|
|
||||||
|
|
||||||
inline bool CellWidget::showBoundaries () const
|
inline bool CellWidget::showBoundaries () const
|
||||||
{ return _state->showBoundaries(); }
|
{ return _state->showBoundaries(); }
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,9 @@ namespace Hurricane {
|
||||||
void setRubberCentric ();
|
void setRubberCentric ();
|
||||||
void setRubberBarycentric ();
|
void setRubberBarycentric ();
|
||||||
void setSymbolicMode ();
|
void setSymbolicMode ();
|
||||||
void setRealMode ();
|
void setGridMode ();
|
||||||
|
void setNanoMode ();
|
||||||
|
void setMicroMode ();
|
||||||
protected:
|
protected:
|
||||||
void blockAllSignals ( bool state );
|
void blockAllSignals ( bool state );
|
||||||
|
|
||||||
|
@ -75,7 +77,9 @@ namespace Hurricane {
|
||||||
QRadioButton* _centric;
|
QRadioButton* _centric;
|
||||||
QRadioButton* _barycentric;
|
QRadioButton* _barycentric;
|
||||||
QRadioButton* _symbolicMode;
|
QRadioButton* _symbolicMode;
|
||||||
QRadioButton* _realMode;
|
QRadioButton* _gridMode;
|
||||||
|
QRadioButton* _nanoMode;
|
||||||
|
QRadioButton* _microMode;
|
||||||
UpdateState _updateState;
|
UpdateState _updateState;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue