compile in needed helpers and fix warnings

This commit is contained in:
Miodrag Milanovic 2018-06-28 13:57:11 +02:00
parent 403c2d65a2
commit 45032e2224
5 changed files with 27 additions and 17 deletions

View File

@ -52,9 +52,9 @@ int ColumnFormatter::solve(int width)
while (fits) while (fits)
{ {
++i; ++i;
std::vector<int> widths = divideItems(i); std::vector<size_t> widths = divideItems(i);
int columnWidth = width / i; size_t columnWidth = width / i;
for (int j = 0; j < widths.size(); ++j) for (size_t j = 0; j < widths.size(); ++j)
{ {
fits &= (widths[j] < columnWidth); fits &= (widths[j] < columnWidth);
} }
@ -66,18 +66,18 @@ int ColumnFormatter::solve(int width)
return i; return i;
} }
std::vector<int> ColumnFormatter::divideItems(int numColumns) std::vector<size_t> ColumnFormatter::divideItems(int numColumns)
{ {
columns.clear(); columns.clear();
for (int i = 0; i < numColumns; ++i) for (int i = 0; i < numColumns; ++i)
columns.push_back(std::list<std::string>()); columns.push_back(std::list<std::string>());
for (int i = 0; i < items.size(); ++i) for (size_t i = 0; i < items.size(); ++i)
{ {
columns[i % numColumns].push_back(items[i]); columns[i % numColumns].push_back(items[i]);
} }
// count the fattest item in each column // count the fattest item in each column
std::vector<int> res(numColumns); std::vector<size_t> res(numColumns);
for (int i = 0; i < numColumns; ++i) for (int i = 0; i < numColumns; ++i)
{ {
for (std::list<std::string>::const_iterator it = for (std::list<std::string>::const_iterator it =
@ -104,7 +104,7 @@ void ColumnFormatter::format(int width)
divideItems(cols); divideItems(cols);
std::vector< std::list<std::string>::const_iterator > its; std::vector< std::list<std::string>::const_iterator > its;
std::vector< std::list<std::string>::const_iterator > it_ends; std::vector< std::list<std::string>::const_iterator > it_ends;
for (int i = 0; i < columns.size(); ++i) for (size_t i = 0; i < columns.size(); ++i)
{ {
its.push_back(columns[i].begin()); its.push_back(columns[i].begin());
it_ends.push_back(columns[i].end()); it_ends.push_back(columns[i].end());
@ -113,7 +113,7 @@ void ColumnFormatter::format(int width)
while (!done) while (!done)
{ {
std::stringstream row_ss; std::stringstream row_ss;
for (int i = 0; i < columns.size(); ++i) for (size_t i = 0; i < columns.size(); ++i)
{ {
std::stringstream item_ss; std::stringstream item_ss;
std::string item; std::string item;
@ -128,7 +128,7 @@ void ColumnFormatter::format(int width)
m_formattedOutput.push_back(row_ss.str()); m_formattedOutput.push_back(row_ss.str());
done = true; done = true;
for (int i = 0; i < columns.size(); ++i) for (size_t i = 0; i < columns.size(); ++i)
{ {
done &= (its[i] == it_ends[i]); done &= (its[i] == it_ends[i]);
} }

View File

@ -60,7 +60,7 @@ public:
/** /**
Divide items into numColumns. Divide items into numColumns.
*/ */
std::vector<int> divideItems(int numColumns); std::vector<size_t> divideItems(int numColumns);
/** /**
Generate formatted output, the items formatted into as many columns as can Generate formatted output, the items formatted into as many columns as can

View File

@ -40,7 +40,7 @@ bool ParseHelper::BracketParseState::LoadBrackets(const std::string& str,
return false; return false;
stack->clear(); stack->clear();
for (int i = 0; i < str.size(); ++i) for (size_t i = 0; i < str.size(); ++i)
{ {
if (OpeningBrackets.find_first_of(str[i]) != std::string::npos) if (OpeningBrackets.find_first_of(str[i]) != std::string::npos)
{ {
@ -63,7 +63,7 @@ bool ParseHelper::BracketParseState::LoadBrackets(const std::string& str,
ParseHelper::BracketParseState::BracketParseState( ParseHelper& parent, const std::string& firstLine ): ParseHelper::BracketParseState::BracketParseState( ParseHelper& parent, const std::string& firstLine ):
ParseState( parent ) ParseState( parent )
{ {
bool hasOpenBrackets = LoadBrackets( firstLine, &brackets ); /*bool hasOpenBrackets = */ LoadBrackets( firstLine, &brackets );
//assert( hasOpenBrackets ); //assert( hasOpenBrackets );
m_buffer.push_back( firstLine ); m_buffer.push_back( firstLine );
} }
@ -71,7 +71,7 @@ ParseHelper::BracketParseState::BracketParseState( ParseHelper& parent, const st
bool ParseHelper::BracketParseState::process(const std::string& str) bool ParseHelper::BracketParseState::process(const std::string& str)
{ {
// update brackets stack // update brackets stack
for (int i = 0; i < str.size(); ++i) for (size_t i = 0; i < str.size(); ++i)
{ {
if (OpeningBrackets.find_first_of(str[i]) != std::string::npos) if (OpeningBrackets.find_first_of(str[i]) != std::string::npos)
{ {

View File

@ -51,7 +51,7 @@ bool ParseHelper::PeekIndent( const std::string& str, Indent* indent )
return false; return false;
int nonwhitespaceIndex = -1; int nonwhitespaceIndex = -1;
for (int i = 0; i < str.size(); ++i) for (size_t i = 0; i < str.size(); ++i)
{ {
if (!isspace(str[i])) if (!isspace(str[i]))
{ {
@ -151,7 +151,7 @@ bool ParseHelper::buffered( ) const
void ParseHelper::flush( ) void ParseHelper::flush( )
{ {
std::stringstream ss; std::stringstream ss;
for (int i = 0; i < commandBuffer.size(); ++i ) for (size_t i = 0; i < commandBuffer.size(); ++i )
{ {
ss << commandBuffer[i] << "\n"; ss << commandBuffer[i] << "\n";
} }
@ -188,7 +188,7 @@ void ParseHelper::unsubscribeAll( )
void ParseHelper::broadcast( const ParseMessage& msg ) void ParseHelper::broadcast( const ParseMessage& msg )
{ {
// broadcast signal // broadcast signal
for (int i = 0; i < listeners.size(); ++i) for (size_t i = 0; i < listeners.size(); ++i)
{ {
if (listeners[i]) if (listeners[i])
{ {

View File

@ -1,15 +1,25 @@
set(CMAKE_AUTOMOC ON) set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(PYTHON_CONSOLE_SRC
../3rdparty/python-console/ColumnFormatter.cpp
../3rdparty/python-console/ParseHelper.cpp
../3rdparty/python-console/ParseHelper.BlockParseState.cpp
../3rdparty/python-console/ParseHelper.BracketParseState.cpp
../3rdparty/python-console/ParseHelper.ContinuationParseState.cpp
../3rdparty/python-console/ParseMessage.cpp
)
aux_source_directory(. GUI_SOURCE_FILES) aux_source_directory(. GUI_SOURCE_FILES)
aux_source_directory(${family}/ GUI_SOURCE_FILES) aux_source_directory(${family}/ GUI_SOURCE_FILES)
set(_RESOURCES base.qrc ${family}/nextpnr.qrc) set(_RESOURCES base.qrc ${family}/nextpnr.qrc)
qt5_add_resources(GUI_RESOURCE_FILES ${_RESOURCES}) qt5_add_resources(GUI_RESOURCE_FILES ${_RESOURCES})
set(GUI_LIBRARY_FILES_${ufamily} Qt5::Widgets Qt5::OpenGL ${OPENGL_LIBRARIES} QtPropertyBrowser PARENT_SCOPE) set(GUI_LIBRARY_FILES_${ufamily} Qt5::Widgets Qt5::OpenGL ${OPENGL_LIBRARIES} QtPropertyBrowser PARENT_SCOPE)
add_library(gui_${family} STATIC ${GUI_SOURCE_FILES} ${GUI_RESOURCE_FILES}) add_library(gui_${family} STATIC ${GUI_SOURCE_FILES} ${PYTHON_CONSOLE_SRC} ${GUI_RESOURCE_FILES})
target_include_directories(gui_${family} PRIVATE ../${family} ${family} ../3rdparty/QtPropertyBrowser/src) target_include_directories(gui_${family} PRIVATE ../${family} ${family} ../3rdparty/QtPropertyBrowser/src)
target_compile_definitions(gui_${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family} ARCH_${ufamily} ARCHNAME=${family} QT_NO_KEYWORDS) target_compile_definitions(gui_${family} PRIVATE NEXTPNR_NAMESPACE=nextpnr_${family} ARCH_${ufamily} ARCHNAME=${family} QT_NO_KEYWORDS)