playlist editor: add support for columns display mode

master
Andrzej Rybczak 15 years ago
parent 4cd95d6c8d
commit 00a7743a34
  1. 2
      doc/config
  2. 3
      doc/ncmpcpp.1
  3. 15
      src/ncmpcpp.cpp
  4. 4
      src/playlist_editor.cpp
  5. 5
      src/settings.cpp
  6. 1
      src/settings.h

@ -258,6 +258,8 @@
# #
#search_engine_display_mode = "classic" (classic/columns) #search_engine_display_mode = "classic" (classic/columns)
# #
#playlist_editor_display_mode = "classic" (classic/columns)
#
#discard_colors_if_item_is_selected = "yes" #discard_colors_if_item_is_selected = "yes"
# #
#incremental_seeking = "yes" #incremental_seeking = "yes"

@ -192,6 +192,9 @@ Default display mode for Browser.
.B search_engine_display_mode = classic/columns .B search_engine_display_mode = classic/columns
Default display mode for Search engine. Default display mode for Search engine.
.TP .TP
.B playlist_editor_display_mode = classic/columns
Default display mode for Playlist editor.
.TP
.B discard_colors_if_item_is_selected = yes/no .B discard_colors_if_item_is_selected = yes/no
Indicates whether custom colors of tags have to be discarded if item is selected or not. Indicates whether custom colors of tags have to be discarded if item is selected or not.
.TP .TP

@ -1399,6 +1399,21 @@ int main(int argc, char *argv[])
if (mySearcher->Main()->Size() > SearchEngine::StaticOptions) if (mySearcher->Main()->Size() > SearchEngine::StaticOptions)
mySearcher->Main()->SetTitle(Config.columns_in_search_engine && Config.titles_visibility ? Display::Columns(mySearcher->Main()->GetWidth()) : ""); mySearcher->Main()->SetTitle(Config.columns_in_search_engine && Config.titles_visibility ? Display::Columns(mySearcher->Main()->GetWidth()) : "");
} }
else if (myScreen->ActiveWindow() == myPlaylistEditor->Content)
{
Config.columns_in_playlist_editor = !Config.columns_in_playlist_editor;
ShowMessage("Playlist editor display mode: %s", Config.columns_in_playlist_editor ? "Columns" : "Classic");
if (Config.columns_in_playlist_editor)
{
myPlaylistEditor->Content->SetItemDisplayer(Display::SongsInColumns);
myPlaylistEditor->Content->SetGetStringFunction(Playlist::SongInColumnsToString);
}
else
{
myPlaylistEditor->Content->SetItemDisplayer(Display::Songs);
myPlaylistEditor->Content->SetGetStringFunction(Playlist::SongToString);
}
}
} }
else if (Keypressed(input, Key.ToggleSeparatorsInPlaylist)) else if (Keypressed(input, Key.ToggleSeparatorsInPlaylist))
{ {

@ -60,9 +60,9 @@ void PlaylistEditor::Init()
Content->CenteredCursor(Config.centered_cursor); Content->CenteredCursor(Config.centered_cursor);
Content->SetSelectPrefix(&Config.selected_item_prefix); Content->SetSelectPrefix(&Config.selected_item_prefix);
Content->SetSelectSuffix(&Config.selected_item_suffix); Content->SetSelectSuffix(&Config.selected_item_suffix);
Content->SetItemDisplayer(Display::Songs); Content->SetItemDisplayer(Config.columns_in_playlist_editor ? Display::SongsInColumns : Display::Songs);
Content->SetItemDisplayerUserData(&sf); Content->SetItemDisplayerUserData(&sf);
Content->SetGetStringFunction(Playlist::SongToString); Content->SetGetStringFunction(Config.columns_in_playlist_editor ? Playlist::SongInColumnsToString : Playlist::SongToString);
Content->SetGetStringFunctionUserData(&Config.song_list_format_dollar_free); Content->SetGetStringFunctionUserData(&Config.song_list_format_dollar_free);
w = Playlists; w = Playlists;

@ -405,6 +405,7 @@ void NcmpcppConfig::SetDefaults()
columns_in_playlist = false; columns_in_playlist = false;
columns_in_browser = false; columns_in_browser = false;
columns_in_search_engine = false; columns_in_search_engine = false;
columns_in_playlist_editor = false;
header_visibility = true; header_visibility = true;
header_text_scrolling = true; header_text_scrolling = true;
statusbar_visibility = true; statusbar_visibility = true;
@ -932,6 +933,10 @@ void NcmpcppConfig::Read()
{ {
columns_in_search_engine = v == "columns"; columns_in_search_engine = v == "columns";
} }
else if (name == "playlist_editor_display_mode")
{
columns_in_playlist_editor = v == "columns";
}
else if (name == "header_visibility") else if (name == "header_visibility")
{ {
header_visibility = v == "yes"; header_visibility = v == "yes";

@ -215,6 +215,7 @@ struct NcmpcppConfig
bool columns_in_playlist; bool columns_in_playlist;
bool columns_in_browser; bool columns_in_browser;
bool columns_in_search_engine; bool columns_in_search_engine;
bool columns_in_playlist_editor;
bool set_window_title; bool set_window_title;
bool header_visibility; bool header_visibility;
bool header_text_scrolling; bool header_text_scrolling;

Loading…
Cancel
Save