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

@@ -285,6 +285,8 @@
# #
#statusbar_visibility = "yes" #statusbar_visibility = "yes"
# #
#titles_visibility = "yes"
#
#header_text_scrolling = "yes" #header_text_scrolling = "yes"
# #
#fancy_scrolling = "yes" #fancy_scrolling = "yes"

View File

@@ -195,6 +195,9 @@ If enabled, header window will be displayed, otherwise hidden.
.B statusbar_visibility = yes/no .B statusbar_visibility = yes/no
If enabled, statusbar will be displayed, otherwise hidden. If enabled, statusbar will be displayed, otherwise hidden.
.TP .TP
.B titles_visibility = yes/no
If enabled, column titles will be displayed, otherwise hidden.
.TP
.B autocenter_mode = yes/no .B autocenter_mode = yes/no
Default state for autocenter mode at start. Default state for autocenter mode at start.
.TP .TP

View File

@@ -59,7 +59,7 @@ void Browser::Init()
{ {
static Display::ScreenFormat sf = { this, &Config.song_list_format }; 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->HighlightColor(Config.main_highlight_color);
w->CyclicScrolling(Config.use_cyclic_scrolling); w->CyclicScrolling(Config.use_cyclic_scrolling);
w->CenteredCursor(Config.centered_cursor); w->CenteredCursor(Config.centered_cursor);

View File

@@ -57,7 +57,7 @@ void MediaLibrary::Init()
itsRightColWidth = COLS-COLS/3*2-1; itsRightColWidth = COLS-COLS/3*2-1;
itsRightColStartX = itsLeftColWidth+itsMiddleColWidth+2; 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->HighlightColor(Config.active_column_color);
Artists->CyclicScrolling(Config.use_cyclic_scrolling); Artists->CyclicScrolling(Config.use_cyclic_scrolling);
Artists->CenteredCursor(Config.centered_cursor); Artists->CenteredCursor(Config.centered_cursor);
@@ -65,7 +65,7 @@ void MediaLibrary::Init()
Artists->SetSelectSuffix(&Config.selected_item_suffix); Artists->SetSelectSuffix(&Config.selected_item_suffix);
Artists->SetItemDisplayer(DisplayPrimaryTags); 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->HighlightColor(Config.main_highlight_color);
Albums->CyclicScrolling(Config.use_cyclic_scrolling); Albums->CyclicScrolling(Config.use_cyclic_scrolling);
Albums->CenteredCursor(Config.centered_cursor); Albums->CenteredCursor(Config.centered_cursor);
@@ -77,7 +77,7 @@ void MediaLibrary::Init()
static Display::ScreenFormat sf = { this, &Config.song_library_format }; 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->HighlightColor(Config.main_highlight_color);
Songs->CyclicScrolling(Config.use_cyclic_scrolling); Songs->CyclicScrolling(Config.use_cyclic_scrolling);
Songs->CenteredCursor(Config.centered_cursor); Songs->CenteredCursor(Config.centered_cursor);
@@ -152,12 +152,17 @@ void MediaLibrary::SwitchTo()
{ {
if (w == Artists) if (w == Artists)
NextColumn(); NextColumn();
std::string item_type = IntoStr(Config.media_lib_primary_tag); if (Config.titles_visibility)
ToLower(item_type); {
Albums->SetTitle("Albums (sorted by " + item_type + ")"); std::string item_type = IntoStr(Config.media_lib_primary_tag);
ToLower(item_type);
Albums->SetTitle("Albums (sorted by " + item_type + ")");
}
else
Albums->SetTitle("");
} }
else 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) if (Config.columns_in_playlist)
{ {
myPlaylist->Items->SetItemDisplayer(Display::SongsInColumns); myPlaylist->Items->SetItemDisplayer(Display::SongsInColumns);
myPlaylist->Items->SetTitle(Display::Columns()); myPlaylist->Items->SetTitle(Config.titles_visibility ? Display::Columns() : "");
myPlaylist->Items->SetGetStringFunction(Playlist::SongInColumnsToString); myPlaylist->Items->SetGetStringFunction(Playlist::SongInColumnsToString);
} }
else else
@@ -1366,7 +1366,7 @@ int main(int argc, char *argv[])
{ {
Config.columns_in_browser = !Config.columns_in_browser; Config.columns_in_browser = !Config.columns_in_browser;
ShowMessage("Browser display mode: %s", Config.columns_in_browser ? "Columns" : "Classic"); 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) else if (myScreen == mySearcher)
@@ -1374,7 +1374,7 @@ int main(int argc, char *argv[])
Config.columns_in_search_engine = !Config.columns_in_search_engine; Config.columns_in_search_engine = !Config.columns_in_search_engine;
ShowMessage("Search engine display mode: %s", Config.columns_in_search_engine ? "Columns" : "Classic"); ShowMessage("Search engine display mode: %s", Config.columns_in_search_engine ? "Columns" : "Classic");
if (mySearcher->Main()->Size() > SearchEngine::StaticOptions) 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)) else if (Keypressed(input, Key.ToggleSeparatorsInPlaylist))
@@ -2102,7 +2102,7 @@ int main(int argc, char *argv[])
{ {
Config.media_lib_primary_tag = new_tagitem; Config.media_lib_primary_tag = new_tagitem;
std::string item_type = IntoStr(Config.media_lib_primary_tag); 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(); myLibrary->Artists->Reset();
ToLower(item_type); ToLower(item_type);
if (myLibrary->Columns() == 2) if (myLibrary->Columns() == 2)
@@ -2110,7 +2110,7 @@ int main(int argc, char *argv[])
myLibrary->Songs->Clear(); myLibrary->Songs->Clear();
myLibrary->Albums->Reset(); myLibrary->Albums->Reset();
myLibrary->Albums->Clear(); 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(); myLibrary->Albums->Display();
} }
else else

View File

@@ -49,7 +49,7 @@ void Playlist::Init()
{ {
static Display::ScreenFormat sf = { this, &Config.song_list_format }; 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->CyclicScrolling(Config.use_cyclic_scrolling);
Items->CenteredCursor(Config.centered_cursor); Items->CenteredCursor(Config.centered_cursor);
Items->HighlightColor(Config.main_highlight_color); Items->HighlightColor(Config.main_highlight_color);
@@ -118,7 +118,7 @@ void Playlist::Resize()
{ {
Items->Resize(COLS, MainHeight); Items->Resize(COLS, MainHeight);
Items->MoveTo(0, MainStartY); 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 if (w == SortDialog) // if sorting window is active, playlist needs refreshing
Items->Display(); Items->Display();

View File

@@ -45,7 +45,7 @@ void PlaylistEditor::Init()
RightColumnStartX = LeftColumnWidth+1; RightColumnStartX = LeftColumnWidth+1;
RightColumnWidth = COLS-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->HighlightColor(Config.active_column_color);
Playlists->CyclicScrolling(Config.use_cyclic_scrolling); Playlists->CyclicScrolling(Config.use_cyclic_scrolling);
Playlists->CenteredCursor(Config.centered_cursor); Playlists->CenteredCursor(Config.centered_cursor);
@@ -53,7 +53,7 @@ void PlaylistEditor::Init()
static Display::ScreenFormat sf = { this, &Config.song_list_format }; 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->HighlightColor(Config.main_highlight_color);
Content->CyclicScrolling(Config.use_cyclic_scrolling); Content->CyclicScrolling(Config.use_cyclic_scrolling);
Content->CenteredCursor(Config.centered_cursor); Content->CenteredCursor(Config.centered_cursor);
@@ -139,9 +139,9 @@ void PlaylistEditor::Update()
MPD::SongList list; MPD::SongList list;
Mpd.GetPlaylistContent(locale_to_utf_cpy(Playlists->Current()), list); Mpd.GetPlaylistContent(locale_to_utf_cpy(Playlists->Current()), list);
if (!list.empty()) 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 else
Content->SetTitle("Playlist's content"); Content->SetTitle(Config.titles_visibility ? "Playlist's content" : "");
bool bold = 0; bool bold = 0;
for (MPD::SongList::const_iterator it = list.begin(); it != list.end(); ++it) 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 (!w->Back().first)
{ {
if (Config.columns_in_search_engine) if (Config.columns_in_search_engine)
w->SetTitle(Display::Columns()); w->SetTitle(Config.titles_visibility ? Display::Columns() : "");
size_t found = w->Size()-SearchEngine::StaticOptions; size_t found = w->Size()-SearchEngine::StaticOptions;
found += 3; // don't count options inserted below found += 3; // don't count options inserted below
w->InsertSeparator(ResetButton+1); w->InsertSeparator(ResetButton+1);

View File

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

View File

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

View File

@@ -64,14 +64,14 @@ void TagEditor::Init()
{ {
SetDimensions(); 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->HighlightColor(Config.active_column_color);
Albums->CyclicScrolling(Config.use_cyclic_scrolling); Albums->CyclicScrolling(Config.use_cyclic_scrolling);
Albums->CenteredCursor(Config.centered_cursor); Albums->CenteredCursor(Config.centered_cursor);
Albums->SetItemDisplayer(Display::Pairs); Albums->SetItemDisplayer(Display::Pairs);
Albums->SetGetStringFunction(StringPairToString); 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->HighlightColor(Config.active_column_color);
Dirs->CyclicScrolling(Config.use_cyclic_scrolling); Dirs->CyclicScrolling(Config.use_cyclic_scrolling);
Dirs->CenteredCursor(Config.centered_cursor); Dirs->CenteredCursor(Config.centered_cursor);
@@ -80,7 +80,7 @@ void TagEditor::Init()
LeftColumn = Config.albums_in_tag_editor ? Albums : Dirs; 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->HighlightColor(Config.main_highlight_color);
TagTypes->CyclicScrolling(Config.use_cyclic_scrolling); TagTypes->CyclicScrolling(Config.use_cyclic_scrolling);
TagTypes->CenteredCursor(Config.centered_cursor); TagTypes->CenteredCursor(Config.centered_cursor);
@@ -91,7 +91,8 @@ void TagEditor::Init()
TagTypes->AddSeparator(); TagTypes->AddSeparator();
TagTypes->AddOption("Filename"); TagTypes->AddOption("Filename");
TagTypes->AddSeparator(); TagTypes->AddSeparator();
TagTypes->AddOption("Options", 1, 1); if (Config.titles_visibility)
TagTypes->AddOption("Options", 1, 1);
TagTypes->AddSeparator(); TagTypes->AddSeparator();
TagTypes->AddOption("Reset"); TagTypes->AddOption("Reset");
TagTypes->AddOption("Save"); TagTypes->AddOption("Save");
@@ -99,7 +100,7 @@ void TagEditor::Init()
TagTypes->AddOption("Capitalize First Letters"); TagTypes->AddOption("Capitalize First Letters");
TagTypes->AddOption("lower all 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->HighlightColor(Config.main_highlight_color);
Tags->CyclicScrolling(Config.use_cyclic_scrolling); Tags->CyclicScrolling(Config.use_cyclic_scrolling);
Tags->CenteredCursor(Config.centered_cursor); Tags->CenteredCursor(Config.centered_cursor);