Everything is prepared to add smart playlists

This commit is contained in:
Karim Abou Zeid 2015-06-21 14:14:37 +02:00
commit 92441128df
7 changed files with 85 additions and 7 deletions

View file

@ -0,0 +1,51 @@
package com.kabouzeid.gramophone.dialogs;
import android.app.Dialog;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.DialogFragment;
import android.text.Html;
import com.afollestad.materialdialogs.MaterialDialog;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.model.smartplaylist.SmartPlaylist;
/**
* @author Karim Abou Zeid (kabouzeid)
*/
public class ClearSmartPlaylistDialog extends DialogFragment {
public static ClearSmartPlaylistDialog create(SmartPlaylist playlist) {
ClearSmartPlaylistDialog dialog = new ClearSmartPlaylistDialog();
Bundle args = new Bundle();
args.putSerializable("playlist", playlist);
dialog.setArguments(args);
return dialog;
}
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
//noinspection unchecked
final SmartPlaylist playlist = (SmartPlaylist) getArguments().getSerializable("playlist");
int title = R.string.clear_playlist_title;
//noinspection ConstantConditions
CharSequence content = Html.fromHtml(getString(R.string.clear_playlist_x, playlist.name));
return new MaterialDialog.Builder(getActivity())
.title(title)
.content(content)
.positiveText(R.string.clear_action)
.negativeText(android.R.string.cancel)
.callback(new MaterialDialog.ButtonCallback() {
@Override
public void onPositive(MaterialDialog dialog) {
super.onPositive(dialog);
if (getActivity() == null) {
return;
}
playlist.clear(getActivity());
}
}).build();
}
}

View file

@ -39,6 +39,7 @@ public class DeletePlaylistDialog extends DialogFragment {
final ArrayList<Playlist> playlists = (ArrayList<Playlist>) getArguments().getSerializable("playlists");
int title;
CharSequence content;
//noinspection ConstantConditions
if (playlists.size() > 1) {
title = R.string.delete_playlists_title;
content = Html.fromHtml(getString(R.string.delete_x_playlists, playlists.size()));