* ./hurricane/src/hviewer :
- Bug : default argument to setWeight() sould be QFont::Normal and not "-1". Shows in Qt debug mode (catched by an assert). - Bug : SelectCommand now keep the Selection check button in sync. - Change : Palette doesn't show at start. * ./hurricane : - Now choice between static and dynamic linking. Note that thoses options are mutually exclusives. * ./coriolis/src/crlcore : - New choice between static and dynamic linking. - New feature : XmlParser optional warning when file not found (default is to warn). - New feature : now read environment from user's optional configuration file : ~/.environment.alliance.xml - Potential bug : when loading/parsing file, the XmlReader hangs if the opened file is a directory, and QFile allows directory opening :-(
This commit is contained in:
parent
f6eee66fcb
commit
7bce78379c
|
@ -11,6 +11,20 @@ SET(CMAKE_SHARED_LINKER_FLAGS_DEBUG "-pg" CACHE STRING "Debug options."
|
|||
SET(CMAKE_MODULE_LINKER_FLAGS_DEBUG "-pg" CACHE STRING "Debug options." FORCE)
|
||||
SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "-pg" CACHE STRING "Debug options." FORCE)
|
||||
|
||||
OPTION(BUILD_STATIC "Build static version of libraries & binaries" OFF)
|
||||
|
||||
IF(BUILD_STATIC)
|
||||
MESSAGE(STATUS "Building static libraries.")
|
||||
# check for qmake
|
||||
FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake-qt4 qmake PATHS
|
||||
/opt/qt4-static-4.3.2/bin
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
MESSAGE(STATUS "qmake: ${QT_QMAKE_EXECUTABLE}")
|
||||
ELSE(BUILD_STATIC)
|
||||
MESSAGE(STATUS "Building dynamic libraries.")
|
||||
ENDIF(BUILD_STATIC)
|
||||
|
||||
SET(QT_USE_QTXML "true")
|
||||
|
||||
FIND_PACKAGE(Qt4 REQUIRED) # find and setup Qt4 for this project
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
# HURRICANE_LIBRARIES - The path to where the Hurricane library files are.
|
||||
|
||||
|
||||
SET(HURRICANE_INCLUDE_PATH_DESCRIPTION "directory containing the Hurricane include files. E.g /usr/local/include or /asim/coriolis/include")
|
||||
|
||||
SET(HURRICANE_DIR_MESSAGE "Set the HURRICANE_INCLUDE_DIR cmake cache entry to the ${HURRICANE_INCLUDE_PATH_DESCRIPTION}")
|
||||
SET(HURRICANE_INCLUDE_PATH_DESCRIPTION "The directory containing the Hurricane include files. E.g /usr/local/include or /asim/coriolis/include")
|
||||
SET(HURRICANE_LIBRARY_PATH_DESCRIPTION "The directory containing the Hurricane library files. E.g /usr/local/lib or /asim/coriolis/lib")
|
||||
SET(HURRICANE_DIR_MESSAGE "Set the HURRICANE_INCLUDE_DIR cmake cache entry to the ${HURRICANE_INCLUDE_PATH_DESCRIPTION}")
|
||||
|
||||
# don't even bother under WIN32
|
||||
IF(UNIX)
|
||||
|
@ -26,7 +26,7 @@ IF(UNIX)
|
|||
${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES include
|
||||
# Help the user find it if we cannot.
|
||||
DOC "The ${HURRICANE_INCLUDE_PATH_DESCRIPTION}"
|
||||
DOC "${HURRICANE_INCLUDE_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(HURRICANE_LIBRARY_PATH
|
||||
|
@ -34,7 +34,15 @@ IF(UNIX)
|
|||
PATHS ${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES lib
|
||||
# Help the user find it if we cannot.
|
||||
DOC "The ${HURRICANE_INCLUDE_PATH_DESCRIPTION}"
|
||||
DOC "${HURRICANE_LIBRARY_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(HURRICANE_STATIC_LIBRARY_PATH
|
||||
NAMES hurricane-static
|
||||
PATHS ${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES lib
|
||||
# Help the user find it if we cannot.
|
||||
DOC "${HURRICANE_LIBRARY_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
FIND_PATH(HURRICANE_VIEWER_INCLUDE_PATH
|
||||
|
@ -42,7 +50,7 @@ IF(UNIX)
|
|||
PATHS ${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES include
|
||||
# Help the user find it if we cannot.
|
||||
DOC "The ${HURRICANE_INCLUDE_PATH_DESCRIPTION}"
|
||||
DOC "${HURRICANE_LIBRARY_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(HURRICANE_VIEWER_LIBRARY_PATH
|
||||
|
@ -50,12 +58,22 @@ IF(UNIX)
|
|||
PATHS ${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES lib
|
||||
# Help the user find it if we cannot.
|
||||
DOC "The ${HURRICANE_INCLUDE_PATH_DESCRIPTION}"
|
||||
DOC "${HURRICANE_LIBRARY_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
FIND_LIBRARY(HURRICANE_VIEWER_STATIC_LIBRARY_PATH
|
||||
NAMES hviewer-static
|
||||
PATHS ${HURRICANE_DIR_SEARCH}
|
||||
PATH_SUFFIXES lib
|
||||
# Help the user find it if we cannot.
|
||||
DOC "${HURRICANE_LIBRARY_PATH_DESCRIPTION}"
|
||||
)
|
||||
|
||||
# Assume we didn't find it.
|
||||
SET(HURRICANE_FOUND 0)
|
||||
SET(HURRICANE_GRAPHICAL_FOUND 0)
|
||||
SET(HURRICANE_FOUND "NOTFOUND")
|
||||
SET(HURRICANE_STATIC_FOUND "NOTFOUND")
|
||||
SET(HURRICANE_GRAPHICAL_FOUND "NOTFOUND")
|
||||
SET(HURRICANE_GRAPHICAL_STATIC_FOUND "NOTFOUND")
|
||||
|
||||
IF(HURRICANE_INCLUDE_PATH)
|
||||
IF(HURRICANE_LIBRARY_PATH)
|
||||
|
@ -67,6 +85,15 @@ IF(UNIX)
|
|||
${HURRICANE_LIBRARY_PATH}
|
||||
)
|
||||
ENDIF(HURRICANE_LIBRARY_PATH)
|
||||
IF(HURRICANE_STATIC_LIBRARY_PATH)
|
||||
SET(HURRICANE_STATIC_FOUND "YES")
|
||||
SET(HURRICANE_INCLUDE_DIR
|
||||
${HURRICANE_INCLUDE_PATH}
|
||||
)
|
||||
SET(HURRICANE_STATIC_LIBRARIES
|
||||
${HURRICANE_STATIC_LIBRARY_PATH}
|
||||
)
|
||||
ENDIF(HURRICANE_STATIC_LIBRARY_PATH)
|
||||
ENDIF(HURRICANE_INCLUDE_PATH)
|
||||
|
||||
IF(HURRICANE_VIEWER_INCLUDE_PATH)
|
||||
|
@ -79,23 +106,34 @@ IF(UNIX)
|
|||
${HURRICANE_VIEWER_LIBRARY_PATH}
|
||||
)
|
||||
ENDIF(HURRICANE_VIEWER_LIBRARY_PATH)
|
||||
IF(HURRICANE_VIEWER_STATIC_LIBRARY_PATH)
|
||||
SET(HURRICANE_GRAPHICAL_STATIC_FOUND "YES")
|
||||
SET(HURRICANE_GRAPHICAL_INCLUDE_DIR
|
||||
${HURRICANE_VIEWER_INCLUDE_PATH}
|
||||
)
|
||||
SET(HURRICANE_GRAPHICAL_STATIC_LIBRARIES
|
||||
${HURRICANE_VIEWER_STATIC_LIBRARY_PATH}
|
||||
)
|
||||
ENDIF(HURRICANE_VIEWER_STATIC_LIBRARY_PATH)
|
||||
ENDIF(HURRICANE_VIEWER_INCLUDE_PATH)
|
||||
|
||||
IF(HURRICANE_FOUND)
|
||||
IF(HURRICANE_FOUND OR HURRICANE_STATIC_FOUND)
|
||||
IF(NOT HURRICANE_FIND_QUIETLY)
|
||||
MESSAGE(STATUS "Found HURRICANE : ${HURRICANE_LIBRARIES}")
|
||||
ENDIF(NOT HURRICANE_FIND_QUIETLY)
|
||||
ELSE(HURRICANE_FOUND)
|
||||
ELSE(HURRICANE_FOUND OR HURRICANE_STATIC_FOUND)
|
||||
IF(HURRICANE_FIND_REQUIRED)
|
||||
MESSAGE(FATAL_ERROR "HURRICANE was not found. ${HURRICANE_DIR_MESSAGE}")
|
||||
ENDIF(HURRICANE_FIND_REQUIRED)
|
||||
ENDIF(HURRICANE_FOUND)
|
||||
ENDIF(HURRICANE_FOUND OR HURRICANE_STATIC_FOUND)
|
||||
|
||||
MARK_AS_ADVANCED(
|
||||
HURRICANE_INCLUDE_PATH
|
||||
HURRICANE_LIBRARY_PATH
|
||||
HURRICANE_STATIC_LIBRARY_PATH
|
||||
HURRICANE_GRAPHICAL_INCLUDE_PATH
|
||||
HURRICANE_VIEWER_LIBRARY_PATH
|
||||
HURRICANE_VIEWER_STATIC_LIBRARY_PATH
|
||||
)
|
||||
|
||||
ENDIF(UNIX)
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -144,7 +144,14 @@
|
|||
Timer.cpp
|
||||
)
|
||||
|
||||
add_library ( hurricane SHARED ${cpps} )
|
||||
|
||||
|
||||
if ( BUILD_STATIC )
|
||||
add_library ( hurricane-static STATIC ${cpps} )
|
||||
install ( TARGETS hurricane-static DESTINATION /lib)
|
||||
else ( BUILD_STATIC )
|
||||
add_library ( hurricane SHARED ${cpps} )
|
||||
install ( TARGETS hurricane DESTINATION /lib)
|
||||
endif ( BUILD_STATIC )
|
||||
|
||||
install ( FILES ${includes} DESTINATION /include/hurricane)
|
||||
install ( TARGETS hurricane DESTINATION /lib)
|
||||
|
||||
|
|
|
@ -133,12 +133,14 @@ namespace Hurricane {
|
|||
//else
|
||||
// cerr << " TopCell: " << getMasterCell() << " " << getTransformation() << endl;
|
||||
|
||||
forEach ( Slice*, islice, getMasterCell()->getSlices() ) {
|
||||
if ( !(*islice)->getLayer()->contains(getBasicLayer()) ) continue;
|
||||
if ( !(*islice)->getBoundingBox().intersect(getArea()) ) continue;
|
||||
if ( !getMasterCell()->isTerminal() || (_filter & DoTerminalCells) ) {
|
||||
forEach ( Slice*, islice, getMasterCell()->getSlices() ) {
|
||||
if ( !(*islice)->getLayer()->contains(getBasicLayer()) ) continue;
|
||||
if ( !(*islice)->getBoundingBox().intersect(getArea()) ) continue;
|
||||
|
||||
forEach ( Go*, igo, (*islice)->getGosUnder(_stack.getArea()) )
|
||||
goCallback ( *igo );
|
||||
forEach ( Go*, igo, (*islice)->getGosUnder(_stack.getArea()) )
|
||||
goCallback ( *igo );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -304,9 +304,12 @@ namespace Hurricane {
|
|||
class Query {
|
||||
public:
|
||||
// Types.
|
||||
enum QueryFilter { DoMasterCells = 1
|
||||
, DoComponents = 2
|
||||
, DoAll = DoMasterCells || DoComponents
|
||||
enum QueryFilter { DoMasterCells = 1
|
||||
, DoTerminalCells = 2
|
||||
, DoComponents = 4
|
||||
, DoAll = DoMasterCells
|
||||
| DoTerminalCells
|
||||
| DoComponents
|
||||
};
|
||||
public:
|
||||
// Constructors & Destructors.
|
||||
|
|
|
@ -79,8 +79,14 @@
|
|||
qt4_wrap_cpp ( MOC_SRCS ${mocincludes} )
|
||||
qt4_add_resources ( RCC_SRCS CellViewer.qrc )
|
||||
|
||||
add_library ( hviewer SHARED ${cpps} ${MOC_SRCS} ${RCC_SRCS} )
|
||||
target_link_libraries ( hviewer ${QT_LIBRARIES} hurricane )
|
||||
install ( FILES ${exports} DESTINATION /include/hurricane/viewer )
|
||||
|
||||
install ( FILES ${exports} DESTINATION /include/hurricane/viewer )
|
||||
install ( TARGETS hviewer DESTINATION /lib )
|
||||
if ( BUILD_STATIC )
|
||||
add_library ( hviewer-static STATIC ${cpps} ${MOC_SRCS} ${RCC_SRCS} )
|
||||
target_link_libraries ( hviewer-static hurricane-static ${QT_LIBRARIES} )
|
||||
install ( TARGETS hviewer-static DESTINATION /lib )
|
||||
else ( BUILD_STATIC )
|
||||
add_library ( hviewer SHARED ${cpps} ${MOC_SRCS} ${RCC_SRCS} )
|
||||
target_link_libraries ( hviewer ${QT_LIBRARIES} hurricane )
|
||||
install ( TARGETS hviewer DESTINATION /lib )
|
||||
endif ( BUILD_STATIC )
|
||||
|
|
|
@ -95,6 +95,7 @@ namespace Hurricane {
|
|||
, _fileMenu(NULL)
|
||||
, _viewMenu(NULL)
|
||||
, _toolsMenu(NULL)
|
||||
, _debugMenu(NULL)
|
||||
//, _mapView(NULL)
|
||||
, _palette(NULL)
|
||||
, _mousePosition(NULL)
|
||||
|
@ -125,7 +126,6 @@ namespace Hurricane {
|
|||
_openAction->setObjectName ( "viewer.file.openCell" );
|
||||
_openAction->setIcon ( QIcon(":/images/stock_open.png") );
|
||||
_openAction->setStatusTip ( tr("Open (load) a new Cell") );
|
||||
cerr << "_openAction: " << _openAction << endl;
|
||||
|
||||
_nextAction = new QAction ( tr("&Next Breakpoint"), this );
|
||||
_nextAction->setObjectName ( "viewer.file.nextBreakpoint" );
|
||||
|
@ -239,6 +239,10 @@ namespace Hurricane {
|
|||
_toolsMenu->addAction ( _runInspectorOnCell );
|
||||
_toolsMenu->addAction ( _browseSelection );
|
||||
_toolsMenu->addAction ( _browseNetlist );
|
||||
|
||||
_debugMenu = menuBar()->addMenu ( tr("Debug") );
|
||||
_debugMenu->setObjectName ( "viewer.debug" );
|
||||
_debugMenu->hide ();
|
||||
}
|
||||
|
||||
|
||||
|
@ -258,6 +262,7 @@ namespace Hurricane {
|
|||
_cellWidget->bindCommand ( &_selectCommand );
|
||||
_displayFilter->setCellWidget ( _cellWidget );
|
||||
|
||||
_selectCommand.bindToAction ( _showSelectionAction );
|
||||
|
||||
HMousePosition* _mousePosition = new HMousePosition ();
|
||||
statusBar()->addPermanentWidget ( _mousePosition );
|
||||
|
@ -299,6 +304,7 @@ namespace Hurricane {
|
|||
connect ( _cellWidget , SIGNAL(mousePositionChanged(const Point&))
|
||||
, _mousePosition , SLOT(setPosition(const Point&)) );
|
||||
|
||||
_showPaletteAction->setChecked ( false );
|
||||
_cellWidget->redraw ();
|
||||
}
|
||||
|
||||
|
|
|
@ -345,6 +345,7 @@ namespace Hurricane {
|
|||
, _offsetVA(_stripWidth,_stripWidth)
|
||||
, _drawingPlanes(QSize(6*_stripWidth,6*_stripWidth),this)
|
||||
, _drawingQuery(this)
|
||||
, _queryFilter(Query::DoAll)
|
||||
, _mousePosition(0,0)
|
||||
, _spot(this)
|
||||
, _cell(NULL)
|
||||
|
@ -458,7 +459,9 @@ namespace Hurricane {
|
|||
|
||||
void CellWidget::redraw ( QRect redrawArea )
|
||||
{
|
||||
cerr << "CellWidget::redraw() - " << _selectionHasChanged << endl;
|
||||
// cerr << "CellWidget::redraw() - "
|
||||
// << _selectionHasChanged << " filter:"
|
||||
// << _queryFilter << endl;
|
||||
|
||||
//_drawingQuery.setStartLevel ( 1 );
|
||||
//_drawingQuery.setStopLevel ( 2 );
|
||||
|
@ -493,7 +496,7 @@ namespace Hurricane {
|
|||
if ( isDrawable((*iLayer)->getName()) ) {
|
||||
//drawCell ( _cell, (*iLayer), redrawBox, Transformation() );
|
||||
_drawingQuery.setBasicLayer ( *iLayer );
|
||||
_drawingQuery.setFilter ( Query::DoComponents );
|
||||
_drawingQuery.setFilter ( _queryFilter & ~Query::DoMasterCells );
|
||||
_drawingQuery.doQuery ();
|
||||
}
|
||||
}
|
||||
|
@ -503,7 +506,7 @@ namespace Hurricane {
|
|||
|
||||
//drawBoundaries ( _cell, redrawBox, Transformation() );
|
||||
_drawingQuery.setBasicLayer ( NULL );
|
||||
_drawingQuery.setFilter ( Query::DoMasterCells );
|
||||
_drawingQuery.setFilter ( _queryFilter & ~Query::DoComponents );
|
||||
_drawingQuery.doQuery ();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -55,7 +55,6 @@
|
|||
# include <Qt>
|
||||
# include <QBrush>
|
||||
# include <QPen>
|
||||
# include <QFont>
|
||||
# include <QApplication>
|
||||
|
||||
# include "hurricane/Name.h"
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
|
||||
|
||||
#include <QLabel>
|
||||
#include <QCheckBox>
|
||||
#include <QSpinBox>
|
||||
#include <QGroupBox>
|
||||
#include <QGridLayout>
|
||||
|
@ -72,12 +73,13 @@ namespace Hurricane {
|
|||
, _cellWidget(NULL)
|
||||
, _startSpinBox(NULL)
|
||||
, _stopSpinBox(NULL)
|
||||
, _queryFilter(Query::DoAll)
|
||||
{
|
||||
setAttribute ( Qt::WA_QuitOnClose, false );
|
||||
setWindowTitle ( tr("Display Filter") );
|
||||
setFont ( Graphics::getNormalFont(true) );
|
||||
|
||||
QGroupBox* groupBox = new QGroupBox ( tr("Hierarchy Levels") );
|
||||
QGroupBox* groupBox = new QGroupBox ( tr("Hierarchy Settings") );
|
||||
QGridLayout* gLayout = new QGridLayout ();
|
||||
QGridLayout* wLayout = new QGridLayout ();
|
||||
|
||||
|
@ -102,6 +104,35 @@ namespace Hurricane {
|
|||
gLayout->addWidget ( label , 1, 0 );
|
||||
gLayout->addWidget ( _stopSpinBox, 1, 1 );
|
||||
|
||||
QFrame* separator = new QFrame ();
|
||||
separator->setFrameShape ( QFrame::HLine );
|
||||
separator->setFrameShadow ( QFrame::Sunken );
|
||||
gLayout->addWidget ( separator, 2, 0, 1, 2 );
|
||||
|
||||
QCheckBox* filterBox = new QCheckBox ();
|
||||
filterBox->setFont ( Graphics::getNormalFont() );
|
||||
filterBox->setText ( tr("Process Master Cells") );
|
||||
filterBox->setChecked ( true );
|
||||
|
||||
gLayout->addWidget ( filterBox, 3, 0, 1, 2 );
|
||||
connect ( filterBox, SIGNAL(stateChanged(int)), this, SLOT(setDoMasterCells(int)) );
|
||||
|
||||
filterBox = new QCheckBox ();
|
||||
filterBox->setFont ( Graphics::getNormalFont() );
|
||||
filterBox->setText ( tr("Process Terminal Cells") );
|
||||
filterBox->setChecked ( true );
|
||||
|
||||
gLayout->addWidget ( filterBox, 4, 0, 1, 2 );
|
||||
connect ( filterBox, SIGNAL(stateChanged(int)), this, SLOT(setDoTerminalCells(int)) );
|
||||
|
||||
filterBox = new QCheckBox ();
|
||||
filterBox->setFont ( Graphics::getNormalFont() );
|
||||
filterBox->setText ( tr("Process Components") );
|
||||
filterBox->setChecked ( true );
|
||||
|
||||
gLayout->addWidget ( filterBox, 5, 0, 1, 2 );
|
||||
connect ( filterBox, SIGNAL(stateChanged(int)), this, SLOT(setDoComponents(int)) );
|
||||
|
||||
groupBox->setLayout ( gLayout );
|
||||
wLayout->addWidget ( groupBox, 0, 0 );
|
||||
setLayout ( wLayout );
|
||||
|
@ -150,4 +181,37 @@ namespace Hurricane {
|
|||
}
|
||||
|
||||
|
||||
void HDisplayFilter::setDoMasterCells ( int state )
|
||||
{
|
||||
if ( state != Qt::Unchecked ) _queryFilter |= Query::DoMasterCells;
|
||||
else _queryFilter &= ~Query::DoMasterCells;
|
||||
|
||||
_cellWidget->setQueryFilter ( _queryFilter );
|
||||
|
||||
emit filterChanged();
|
||||
}
|
||||
|
||||
|
||||
void HDisplayFilter::setDoTerminalCells ( int state )
|
||||
{
|
||||
if ( state != Qt::Unchecked ) _queryFilter |= Query::DoTerminalCells;
|
||||
else _queryFilter &= ~Query::DoTerminalCells;
|
||||
|
||||
_cellWidget->setQueryFilter ( _queryFilter );
|
||||
|
||||
emit filterChanged();
|
||||
}
|
||||
|
||||
|
||||
void HDisplayFilter::setDoComponents ( int state )
|
||||
{
|
||||
if ( state != Qt::Unchecked ) _queryFilter |= Query::DoComponents;
|
||||
else _queryFilter &= ~Query::DoComponents;
|
||||
|
||||
_cellWidget->setQueryFilter ( _queryFilter );
|
||||
|
||||
emit filterChanged();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
|
||||
# include <QMouseEvent>
|
||||
# include <QKeyEvent>
|
||||
# include <QAction>
|
||||
|
||||
# include "hurricane/Cell.h"
|
||||
|
||||
|
@ -68,6 +69,7 @@ namespace Hurricane {
|
|||
|
||||
SelectCommand::SelectCommand ()
|
||||
: AreaCommand()
|
||||
, _selectAction(NULL)
|
||||
{ }
|
||||
|
||||
|
||||
|
@ -75,6 +77,12 @@ namespace Hurricane {
|
|||
{ }
|
||||
|
||||
|
||||
void SelectCommand::bindToAction ( QAction* action )
|
||||
{
|
||||
_selectAction = action;
|
||||
}
|
||||
|
||||
|
||||
bool SelectCommand::mousePressEvent ( CellWidget* widget, QMouseEvent* event )
|
||||
{
|
||||
if ( isActive() ) return true;
|
||||
|
@ -105,8 +113,15 @@ namespace Hurricane {
|
|||
, widget->getCell()->getOccurrencesUnder(widget->screenToDbuBox(selectArea)) ) {
|
||||
widget->select ( *ioccurrence );
|
||||
}
|
||||
widget->setShowSelection ( true );
|
||||
widget->redraw ();
|
||||
if ( _selectAction ) {
|
||||
if ( !_selectAction->isChecked() )
|
||||
_selectAction->setChecked ( true );
|
||||
else
|
||||
widget->redraw ();
|
||||
} else {
|
||||
widget->setShowSelection ( true );
|
||||
widget->redraw ();
|
||||
}
|
||||
|
||||
emit selectionChanged(widget->getSelectorSet(),widget->getCell());
|
||||
|
||||
|
|
|
@ -136,6 +136,7 @@ namespace Hurricane {
|
|||
QMenu* _fileMenu;
|
||||
QMenu* _viewMenu;
|
||||
QMenu* _toolsMenu;
|
||||
QMenu* _debugMenu;
|
||||
//MapView* _mapView;
|
||||
HPalette* _palette;
|
||||
HMousePosition* _mousePosition;
|
||||
|
|
|
@ -131,6 +131,7 @@ namespace Hurricane {
|
|||
void unselectAll ( bool delayRedraw=true );
|
||||
inline void setStartLevel ( int level );
|
||||
inline void setStopLevel ( int level );
|
||||
inline void setQueryFilter ( int filter );
|
||||
// Painter control & Hurricane objects drawing primitives.
|
||||
inline float getScale () const;
|
||||
bool isDrawable ( const Name& entryName );
|
||||
|
@ -291,6 +292,7 @@ namespace Hurricane {
|
|||
QPoint _offsetVA;
|
||||
DrawingPlanes _drawingPlanes;
|
||||
DrawingQuery _drawingQuery;
|
||||
int _queryFilter;
|
||||
QPoint _mousePosition;
|
||||
Spot _spot;
|
||||
Cell* _cell;
|
||||
|
@ -508,6 +510,10 @@ namespace Hurricane {
|
|||
{ return _scale; }
|
||||
|
||||
|
||||
inline void CellWidget::setQueryFilter ( int filter )
|
||||
{ _queryFilter = filter; }
|
||||
|
||||
|
||||
} // End of Hurricane namespace.
|
||||
|
||||
|
||||
|
|
|
@ -59,7 +59,8 @@
|
|||
|
||||
# include "hurricane/viewer/DisplayStyle.h"
|
||||
|
||||
class QFont;
|
||||
# include <QFont>
|
||||
|
||||
class QColor;
|
||||
class QPen;
|
||||
class QBrush;
|
||||
|
@ -78,7 +79,7 @@ namespace Hurricane {
|
|||
public:
|
||||
// Accessors.
|
||||
static Graphics* getGraphics ();
|
||||
static const QFont getFixedFont ( int weight=-1, bool italic=false, bool underline=false );
|
||||
static const QFont getFixedFont ( int weight=QFont::Normal, bool italic=false, bool underline=false );
|
||||
static const QFont getNormalFont ( bool bold=false, bool italic=false, bool underline=false );
|
||||
static const Name& getGroup ( const Name& key );
|
||||
static QColor getColor ( const Name& key, int darkening=100 );
|
||||
|
|
|
@ -69,20 +69,24 @@ namespace Hurricane {
|
|||
Q_OBJECT;
|
||||
|
||||
public:
|
||||
HDisplayFilter ( QWidget* parent=NULL );
|
||||
void setCellWidget ( CellWidget* );
|
||||
HDisplayFilter ( QWidget* parent=NULL );
|
||||
void setCellWidget ( CellWidget* );
|
||||
|
||||
signals:
|
||||
void filterChanged ();
|
||||
void filterChanged ();
|
||||
|
||||
public slots:
|
||||
void startLevelChanged ( int level );
|
||||
void stopLevelChanged ( int level );
|
||||
void startLevelChanged ( int level );
|
||||
void stopLevelChanged ( int level );
|
||||
void setDoMasterCells ( int state );
|
||||
void setDoComponents ( int state );
|
||||
void setDoTerminalCells ( int state );
|
||||
|
||||
protected:
|
||||
CellWidget* _cellWidget;
|
||||
QSpinBox* _startSpinBox;
|
||||
QSpinBox* _stopSpinBox;
|
||||
int _queryFilter;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -53,10 +53,12 @@
|
|||
#ifndef __HURRICANE_SELECT_COMMAND_H__
|
||||
#define __HURRICANE_SELECT_COMMAND_H__
|
||||
|
||||
#include <set>
|
||||
|
||||
#include <QObject>
|
||||
#include <QPoint>
|
||||
|
||||
#include <set>
|
||||
class QAction;
|
||||
|
||||
#include "hurricane/viewer/AreaCommand.h"
|
||||
|
||||
|
@ -79,8 +81,11 @@ namespace Hurricane {
|
|||
virtual ~SelectCommand ();
|
||||
virtual bool mousePressEvent ( CellWidget*, QMouseEvent* );
|
||||
virtual bool mouseReleaseEvent ( CellWidget*, QMouseEvent* );
|
||||
void bindToAction ( QAction* action );
|
||||
signals:
|
||||
void selectionChanged ( const set<Selector*>&, Cell* );
|
||||
private:
|
||||
QAction* _selectAction;
|
||||
private:
|
||||
SelectCommand ( const SelectCommand& );
|
||||
SelectCommand& operator= ( const SelectCommand& );
|
||||
|
|
|
@ -79,6 +79,23 @@
|
|||
hurricane/isobar/PyVertical.h
|
||||
)
|
||||
|
||||
|
||||
install ( FILES ${includes} DESTINATION /include/hurricane/isobar )
|
||||
|
||||
if ( BUILD_STATIC )
|
||||
add_library ( isobar-static STATIC ${sources} )
|
||||
target_link_libraries ( isobar-static hurricane-static ${PYTHON_LIBRARIES} )
|
||||
|
||||
add_library ( Hurricane-static MODULE ${sources} )
|
||||
set_target_properties ( Hurricane-static PROPERTIES
|
||||
COMPILE_FLAGS "${COMPILE_FLAGS} -D__PYTHON_MODULE__=1"
|
||||
PREFIX ""
|
||||
)
|
||||
target_link_libraries ( Hurricane-static isobar-static hurricane-static ${PYTHON_LIBRARIES} )
|
||||
|
||||
install ( TARGETS isobar-static DESTINATION /lib )
|
||||
install ( TARGETS Hurricane-static DESTINATION /lib/python )
|
||||
else ( BUILD_STATIC )
|
||||
add_library ( isobar SHARED ${sources} )
|
||||
target_link_libraries ( isobar hurricane ${PYTHON_LIBRARIES} )
|
||||
|
||||
|
@ -91,4 +108,4 @@
|
|||
|
||||
install ( TARGETS isobar DESTINATION /lib )
|
||||
install ( TARGETS Hurricane DESTINATION /lib/python )
|
||||
install ( FILES ${includes} DESTINATION /include/hurricane/isobar )
|
||||
endif ( BUILD_STATIC )
|
||||
|
|
Loading…
Reference in New Issue