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)
#
#playlist_editor_display_mode = "classic" (classic/columns)
#
#discard_colors_if_item_is_selected = "yes"
#
#incremental_seeking = "yes"

@ -192,6 +192,9 @@ Default display mode for Browser.
.B search_engine_display_mode = classic/columns
Default display mode for Search engine.
.TP
.B playlist_editor_display_mode = classic/columns
Default display mode for Playlist editor.
.TP
.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.
.TP

@ -1399,6 +1399,21 @@ int main(int argc, char *argv[])
if (mySearcher->Main()->Size() > SearchEngine::StaticOptions)
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))
{

@ -60,9 +60,9 @@ void PlaylistEditor::Init()
Content->CenteredCursor(Config.centered_cursor);
Content->SetSelectPrefix(&Config.selected_item_prefix);
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->SetGetStringFunction(Playlist::SongToString);
Content->SetGetStringFunction(Config.columns_in_playlist_editor ? Playlist::SongInColumnsToString : Playlist::SongToString);
Content->SetGetStringFunctionUserData(&Config.song_list_format_dollar_free);
w = Playlists;

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

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

Loading…
Cancel
Save