allow for unicode characters in progressbar_look

master
Andrzej Rybczak 17 years ago
parent 6f88f9aeb2
commit bc1a8a2d1a
  1. 7
      src/ncmpcpp.cpp
  2. 8
      src/settings.cpp
  3. 2
      src/settings.h
  4. 5
      src/status.cpp
  5. 1
      src/window.cpp

@ -98,6 +98,8 @@ namespace
int main(int argc, char *argv[])
{
setlocale(LC_ALL, "");
CreateConfigDir();
DefaultConfiguration(Config);
DefaultKeys(Key);
@ -1136,8 +1138,9 @@ int main(int argc, char *argv[])
int howlong = wFooter->GetWidth()*progressbar_size;
mvwhline(wFooter->Raw(), 0, 0, 0, wFooter->GetWidth());
mvwhline(wFooter->Raw(), 0, 0, Config.progressbar[0], howlong);
mvwaddch(wFooter->Raw(), 0, howlong, Config.progressbar[1]);
for (int i = 0; i < howlong; ++i)
*wFooter << Config.progressbar[0];
*wFooter << Config.progressbar[1];
*wFooter << fmtBoldEnd;
wFooter->Refresh();
}

@ -24,6 +24,7 @@
# include <sys/stat.h>
#endif // WIN32
#include <fstream>
#include <stdexcept>
#include "global.h"
#include "helpers.h"
@ -251,7 +252,7 @@ void DefaultConfiguration(ncmpcpp_config &conf)
conf.new_header_first_line = "{$b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b}";
conf.new_header_second_line = "{{{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}}";
conf.browser_playlist_prefix << clRed << "(playlist)" << clEnd << ' ';
conf.progressbar = "=>";
conf.progressbar = U("=>");
conf.pattern = "%n - %t";
conf.selected_item_prefix << clMagenta;
conf.selected_item_suffix << clEnd;
@ -624,8 +625,9 @@ void ReadConfiguration(ncmpcpp_config &conf)
}
else if (cl.find("progressbar_look") != std::string::npos)
{
if (v.length() == 2)
conf.progressbar = v;
conf.progressbar = TO_WSTRING(v);
if (conf.progressbar.length() != 2)
throw std::runtime_error("the length of progressbar_look is not two characters long!");
}
else if (cl.find("default_tag_editor_pattern") != std::string::npos)
{

@ -139,7 +139,7 @@ struct ncmpcpp_config
std::string execute_on_song_change;
std::string new_header_first_line;
std::string new_header_second_line;
std::string progressbar;
std::basic_string<my_char_t> progressbar;
std::string pattern;

@ -502,8 +502,9 @@ void NcmpcppStatusChanged(Connection *, StatusChanges changed, void *)
mvwhline(wFooter->Raw(), 0, 0, 0, wFooter->GetWidth());
if (np.GetTotalLength())
{
mvwhline(wFooter->Raw(), 0, 0, Config.progressbar[0], howlong);
mvwaddch(wFooter->Raw(), 0, howlong, Config.progressbar[1]);
for (int i = 0; i < howlong; ++i)
*wFooter << Config.progressbar[0];
*wFooter << Config.progressbar[1];
}
wFooter->SetColor(Config.statusbar_color);
}

@ -37,7 +37,6 @@ void NCurses::InitScreen(GNUC_UNUSED const char *window_title, bool enable_color
COLOR_BLACK, COLOR_RED, COLOR_GREEN, COLOR_YELLOW,
COLOR_BLUE, COLOR_MAGENTA, COLOR_CYAN, COLOR_WHITE
};
setlocale(LC_ALL, "");
# ifdef XCURSES
Xinitscr(1, const_cast<char **>(&window_title));
# else

Loading…
Cancel
Save