scrollpad: pass boost::regex flags explicitly

This commit is contained in:
Andrzej Rybczak
2013-07-09 21:03:18 +02:00
parent 54d11a464c
commit 12c7dc2f5b
3 changed files with 11 additions and 10 deletions

View File

@@ -106,8 +106,8 @@ bool ArtistInfo::checkArgs(const Args &args)
void ArtistInfo::colorizeOutput(NC::Scrollpad &w)
{
w.setProperties(NC::Format::Bold, "\n\nSimilar artists:\n", NC::Format::NoBold, 0);
w.setProperties(Config.color2, "\n * ", NC::Color::End, 0);
w.setProperties(NC::Format::Bold, "\n\nSimilar artists:\n", NC::Format::NoBold, 0, boost::regex::literal);
w.setProperties(Config.color2, "\n * ", NC::Color::End, 0, boost::regex::literal);
}
bool ArtistInfo::parse(std::string &data)

View File

@@ -26,10 +26,10 @@
namespace {//
template <typename PropT>
bool regexSearch(NC::Buffer &buf, PropT begin, const std::string &ws, PropT end, size_t id)
bool regexSearch(NC::Buffer &buf, PropT begin, const std::string &ws, PropT end, size_t id, boost::regex::flag_type flags)
{
try {
boost::regex rx(ws, boost::regex::icase);
boost::regex rx(ws, flags);
auto first = boost::sregex_iterator(buf.str().begin(), buf.str().end(), rx);
auto last = boost::sregex_iterator();
bool success = first != last;
@@ -268,14 +268,14 @@ void Scrollpad::reset()
m_beginning = 0;
}
bool Scrollpad::setProperties(Color begin, const std::string &s, Color end, size_t id)
bool Scrollpad::setProperties(Color begin, const std::string &s, Color end, size_t id, boost::regex::flag_type flags)
{
return regexSearch(m_buffer, begin, s, end, id);
return regexSearch(m_buffer, begin, s, end, id, flags);
}
bool Scrollpad::setProperties(Format begin, const std::string &s, Format end, size_t id)
bool Scrollpad::setProperties(Format begin, const std::string &s, Format end, size_t id, boost::regex::flag_type flags)
{
return regexSearch(m_buffer, begin, s, end, id);
return regexSearch(m_buffer, begin, s, end, id, flags);
}
void Scrollpad::removeProperties(size_t id)

View File

@@ -21,6 +21,7 @@
#ifndef NCMPCPP_SCROLLPAD_H
#define NCMPCPP_SCROLLPAD_H
#include <boost/regex.hpp>
#include "window.h"
#include "strbuffer.h"
@@ -46,8 +47,8 @@ struct Scrollpad: public Window
void flush();
void reset();
bool setProperties(Color begin, const std::string &s, Color end, size_t id = -2);
bool setProperties(Format begin, const std::string &s, Format end, size_t id = -2);
bool setProperties(Color begin, const std::string &s, Color end, size_t id = -2, boost::regex::flag_type flags = boost::regex::icase);
bool setProperties(Format begin, const std::string &s, Format end, size_t id = -2, boost::regex::flag_type flags = boost::regex::icase);
void removeProperties(size_t id = -2);
template <typename ItemT>