titles_visibility configuration option

This commit is contained in:
Alexey Semenko
2010-08-25 17:56:13 +07:00
committed by Andrzej Rybczak
parent 8ec84637d2
commit 18bc6368bf
11 changed files with 42 additions and 25 deletions

View File

@@ -59,7 +59,7 @@ void Browser::Init()
{
static Display::ScreenFormat sf = { this, &Config.song_list_format };
w = new Menu<MPD::Item>(0, MainStartY, COLS, MainHeight, Config.columns_in_browser ? Display::Columns() : "", Config.main_color, brNone);
w = new Menu<MPD::Item>(0, MainStartY, COLS, MainHeight, Config.columns_in_browser && Config.titles_visibility ? Display::Columns() : "", Config.main_color, brNone);
w->HighlightColor(Config.main_highlight_color);
w->CyclicScrolling(Config.use_cyclic_scrolling);
w->CenteredCursor(Config.centered_cursor);

View File

@@ -57,7 +57,7 @@ void MediaLibrary::Init()
itsRightColWidth = COLS-COLS/3*2-1;
itsRightColStartX = itsLeftColWidth+itsMiddleColWidth+2;
Artists = new Menu<std::string>(0, MainStartY, itsLeftColWidth, MainHeight, IntoStr(Config.media_lib_primary_tag) + "s", Config.main_color, brNone);
Artists = new Menu<std::string>(0, MainStartY, itsLeftColWidth, MainHeight, Config.titles_visibility ? IntoStr(Config.media_lib_primary_tag) + "s" : "", Config.main_color, brNone);
Artists->HighlightColor(Config.active_column_color);
Artists->CyclicScrolling(Config.use_cyclic_scrolling);
Artists->CenteredCursor(Config.centered_cursor);
@@ -65,7 +65,7 @@ void MediaLibrary::Init()
Artists->SetSelectSuffix(&Config.selected_item_suffix);
Artists->SetItemDisplayer(DisplayPrimaryTags);
Albums = new Menu<SearchConstraints>(itsMiddleColStartX, MainStartY, itsMiddleColWidth, MainHeight, "Albums", Config.main_color, brNone);
Albums = new Menu<SearchConstraints>(itsMiddleColStartX, MainStartY, itsMiddleColWidth, MainHeight, Config.titles_visibility ? "Albums" : "", Config.main_color, brNone);
Albums->HighlightColor(Config.main_highlight_color);
Albums->CyclicScrolling(Config.use_cyclic_scrolling);
Albums->CenteredCursor(Config.centered_cursor);
@@ -77,7 +77,7 @@ void MediaLibrary::Init()
static Display::ScreenFormat sf = { this, &Config.song_library_format };
Songs = new Menu<MPD::Song>(itsRightColStartX, MainStartY, itsRightColWidth, MainHeight, "Songs", Config.main_color, brNone);
Songs = new Menu<MPD::Song>(itsRightColStartX, MainStartY, itsRightColWidth, MainHeight, Config.titles_visibility ? "Songs" : "", Config.main_color, brNone);
Songs->HighlightColor(Config.main_highlight_color);
Songs->CyclicScrolling(Config.use_cyclic_scrolling);
Songs->CenteredCursor(Config.centered_cursor);
@@ -152,12 +152,17 @@ void MediaLibrary::SwitchTo()
{
if (w == Artists)
NextColumn();
std::string item_type = IntoStr(Config.media_lib_primary_tag);
ToLower(item_type);
Albums->SetTitle("Albums (sorted by " + item_type + ")");
if (Config.titles_visibility)
{
std::string item_type = IntoStr(Config.media_lib_primary_tag);
ToLower(item_type);
Albums->SetTitle("Albums (sorted by " + item_type + ")");
}
else
Albums->SetTitle("");
}
else
Albums->SetTitle("Albums");
Albums->SetTitle(Config.titles_visibility ? "Albums" : "");
}
}

View File

@@ -1352,7 +1352,7 @@ int main(int argc, char *argv[])
if (Config.columns_in_playlist)
{
myPlaylist->Items->SetItemDisplayer(Display::SongsInColumns);
myPlaylist->Items->SetTitle(Display::Columns());
myPlaylist->Items->SetTitle(Config.titles_visibility ? Display::Columns() : "");
myPlaylist->Items->SetGetStringFunction(Playlist::SongInColumnsToString);
}
else
@@ -1366,7 +1366,7 @@ int main(int argc, char *argv[])
{
Config.columns_in_browser = !Config.columns_in_browser;
ShowMessage("Browser display mode: %s", Config.columns_in_browser ? "Columns" : "Classic");
myBrowser->Main()->SetTitle(Config.columns_in_browser ? Display::Columns() : "");
myBrowser->Main()->SetTitle(Config.columns_in_browser && Config.titles_visibility ? Display::Columns() : "");
}
else if (myScreen == mySearcher)
@@ -1374,7 +1374,7 @@ int main(int argc, char *argv[])
Config.columns_in_search_engine = !Config.columns_in_search_engine;
ShowMessage("Search engine display mode: %s", Config.columns_in_search_engine ? "Columns" : "Classic");
if (mySearcher->Main()->Size() > SearchEngine::StaticOptions)
mySearcher->Main()->SetTitle(Config.columns_in_search_engine ? Display::Columns() : "");
mySearcher->Main()->SetTitle(Config.columns_in_search_engine && Config.titles_visibility ? Display::Columns() : "");
}
}
else if (Keypressed(input, Key.ToggleSeparatorsInPlaylist))
@@ -2102,7 +2102,7 @@ int main(int argc, char *argv[])
{
Config.media_lib_primary_tag = new_tagitem;
std::string item_type = IntoStr(Config.media_lib_primary_tag);
myLibrary->Artists->SetTitle(item_type + "s");
myLibrary->Artists->SetTitle(Config.titles_visibility ? item_type + "s" : "");
myLibrary->Artists->Reset();
ToLower(item_type);
if (myLibrary->Columns() == 2)
@@ -2110,7 +2110,7 @@ int main(int argc, char *argv[])
myLibrary->Songs->Clear();
myLibrary->Albums->Reset();
myLibrary->Albums->Clear();
myLibrary->Albums->SetTitle("Albums (sorted by " + item_type + ")");
myLibrary->Albums->SetTitle(Config.titles_visibility ? "Albums (sorted by " + item_type + ")" : "");
myLibrary->Albums->Display();
}
else

View File

@@ -49,7 +49,7 @@ void Playlist::Init()
{
static Display::ScreenFormat sf = { this, &Config.song_list_format };
Items = new Menu<MPD::Song>(0, MainStartY, COLS, MainHeight, Config.columns_in_playlist ? Display::Columns() : "", Config.main_color, brNone);
Items = new Menu<MPD::Song>(0, MainStartY, COLS, MainHeight, Config.columns_in_playlist && Config.titles_visibility ? Display::Columns() : "", Config.main_color, brNone);
Items->CyclicScrolling(Config.use_cyclic_scrolling);
Items->CenteredCursor(Config.centered_cursor);
Items->HighlightColor(Config.main_highlight_color);
@@ -118,7 +118,7 @@ void Playlist::Resize()
{
Items->Resize(COLS, MainHeight);
Items->MoveTo(0, MainStartY);
Items->SetTitle(Config.columns_in_playlist ? Display::Columns() : "");
Items->SetTitle(Config.columns_in_playlist && Config.titles_visibility ? Display::Columns() : "");
if (w == SortDialog) // if sorting window is active, playlist needs refreshing
Items->Display();

View File

@@ -45,7 +45,7 @@ void PlaylistEditor::Init()
RightColumnStartX = LeftColumnWidth+1;
RightColumnWidth = COLS-LeftColumnWidth-1;
Playlists = new Menu<std::string>(0, MainStartY, LeftColumnWidth, MainHeight, "Playlists", Config.main_color, brNone);
Playlists = new Menu<std::string>(0, MainStartY, LeftColumnWidth, MainHeight, Config.titles_visibility ? "Playlists" : "", Config.main_color, brNone);
Playlists->HighlightColor(Config.active_column_color);
Playlists->CyclicScrolling(Config.use_cyclic_scrolling);
Playlists->CenteredCursor(Config.centered_cursor);
@@ -53,7 +53,7 @@ void PlaylistEditor::Init()
static Display::ScreenFormat sf = { this, &Config.song_list_format };
Content = new Menu<MPD::Song>(RightColumnStartX, MainStartY, RightColumnWidth, MainHeight, "Playlist's content", Config.main_color, brNone);
Content = new Menu<MPD::Song>(RightColumnStartX, MainStartY, RightColumnWidth, MainHeight, Config.titles_visibility ? "Playlist's content" : "", Config.main_color, brNone);
Content->HighlightColor(Config.main_highlight_color);
Content->CyclicScrolling(Config.use_cyclic_scrolling);
Content->CenteredCursor(Config.centered_cursor);
@@ -139,9 +139,9 @@ void PlaylistEditor::Update()
MPD::SongList list;
Mpd.GetPlaylistContent(locale_to_utf_cpy(Playlists->Current()), list);
if (!list.empty())
Content->SetTitle("Playlist's content (" + IntoStr(list.size()) + " item" + (list.size() == 1 ? ")" : "s)"));
Content->SetTitle(Config.titles_visibility ? "Playlist's content (" + IntoStr(list.size()) + " item" + (list.size() == 1 ? ")" : "s)") : "");
else
Content->SetTitle("Playlist's content");
Content->SetTitle(Config.titles_visibility ? "Playlist's content" : "");
bool bold = 0;
for (MPD::SongList::const_iterator it = list.begin(); it != list.end(); ++it)
{

View File

@@ -155,7 +155,7 @@ void SearchEngine::EnterPressed()
if (!w->Back().first)
{
if (Config.columns_in_search_engine)
w->SetTitle(Display::Columns());
w->SetTitle(Config.titles_visibility ? Display::Columns() : "");
size_t found = w->Size()-SearchEngine::StaticOptions;
found += 3; // don't count options inserted below
w->InsertSeparator(ResetButton+1);

View File

@@ -378,6 +378,7 @@ void NcmpcppConfig::SetDefaults()
header_visibility = true;
header_text_scrolling = true;
statusbar_visibility = true;
titles_visibility = true;
centered_cursor = false;
screen_switcher_previous = false;
autocenter_mode = false;
@@ -899,6 +900,10 @@ void NcmpcppConfig::Read()
{
statusbar_visibility = v == "yes";
}
else if (cl.find("titles_visibility") != std::string::npos)
{
titles_visibility = v == "yes";
}
else if (cl.find("screen_switcher_mode") != std::string::npos)
{
if (v.find("previous") != std::string::npos)

View File

@@ -215,6 +215,7 @@ struct NcmpcppConfig
bool header_visibility;
bool header_text_scrolling;
bool statusbar_visibility;
bool titles_visibility;
bool centered_cursor;
bool screen_switcher_previous;
bool autocenter_mode;

View File

@@ -64,14 +64,14 @@ void TagEditor::Init()
{
SetDimensions();
Albums = new Menu<string_pair>(0, MainStartY, LeftColumnWidth, MainHeight, "Albums", Config.main_color, brNone);
Albums = new Menu<string_pair>(0, MainStartY, LeftColumnWidth, MainHeight, Config.titles_visibility ? "Albums" : "", Config.main_color, brNone);
Albums->HighlightColor(Config.active_column_color);
Albums->CyclicScrolling(Config.use_cyclic_scrolling);
Albums->CenteredCursor(Config.centered_cursor);
Albums->SetItemDisplayer(Display::Pairs);
Albums->SetGetStringFunction(StringPairToString);
Dirs = new Menu<string_pair>(0, MainStartY, LeftColumnWidth, MainHeight, "Directories", Config.main_color, brNone);
Dirs = new Menu<string_pair>(0, MainStartY, LeftColumnWidth, MainHeight, Config.titles_visibility ? "Directories" : "", Config.main_color, brNone);
Dirs->HighlightColor(Config.active_column_color);
Dirs->CyclicScrolling(Config.use_cyclic_scrolling);
Dirs->CenteredCursor(Config.centered_cursor);
@@ -80,7 +80,7 @@ void TagEditor::Init()
LeftColumn = Config.albums_in_tag_editor ? Albums : Dirs;
TagTypes = new Menu<std::string>(MiddleColumnStartX, MainStartY, MiddleColumnWidth, MainHeight, "Tag types", Config.main_color, brNone);
TagTypes = new Menu<std::string>(MiddleColumnStartX, MainStartY, MiddleColumnWidth, MainHeight, Config.titles_visibility ? "Tag types" : "", Config.main_color, brNone);
TagTypes->HighlightColor(Config.main_highlight_color);
TagTypes->CyclicScrolling(Config.use_cyclic_scrolling);
TagTypes->CenteredCursor(Config.centered_cursor);
@@ -91,7 +91,8 @@ void TagEditor::Init()
TagTypes->AddSeparator();
TagTypes->AddOption("Filename");
TagTypes->AddSeparator();
TagTypes->AddOption("Options", 1, 1);
if (Config.titles_visibility)
TagTypes->AddOption("Options", 1, 1);
TagTypes->AddSeparator();
TagTypes->AddOption("Reset");
TagTypes->AddOption("Save");
@@ -99,7 +100,7 @@ void TagEditor::Init()
TagTypes->AddOption("Capitalize First Letters");
TagTypes->AddOption("lower all letters");
Tags = new Menu<MPD::Song>(RightColumnStartX, MainStartY, RightColumnWidth, MainHeight, "Tags", Config.main_color, brNone);
Tags = new Menu<MPD::Song>(RightColumnStartX, MainStartY, RightColumnWidth, MainHeight, Config.titles_visibility ? "Tags" : "", Config.main_color, brNone);
Tags->HighlightColor(Config.main_highlight_color);
Tags->CyclicScrolling(Config.use_cyclic_scrolling);
Tags->CenteredCursor(Config.centered_cursor);