package pasta.music.dialogs; import android.content.Context; import android.graphics.Color; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v4.graphics.drawable.DrawableCompat; import android.support.v7.app.AppCompatDialog; import android.support.v7.widget.Toolbar; import android.text.Editable; import android.text.TextWatcher; import android.view.View; import android.widget.EditText; import pasta.music.Pasta; import pasta.music.R; import pasta.music.data.PlaylistListData; import pasta.music.utils.ImageUtils; public class NewPlaylistDialog extends AppCompatDialog { Pasta pasta; PlaylistListData data; OnCreateListener listener; Toolbar toolbar; EditText titleView; public NewPlaylistDialog(Context context) { super(context, R.style.AppTheme_Dialog); pasta = (Pasta) context.getApplicationContext(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.dialog_new_playlist); toolbar = (Toolbar) findViewById(R.id.toolbar); Drawable close = ImageUtils.getVectorDrawable(getContext(), R.drawable.ic_close); DrawableCompat.setTint(close, Color.BLACK); toolbar.setNavigationIcon(close); toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (isShowing()) dismiss(); } }); toolbar.setTitle(data == null ? R.string.playlist_create : R.string.playlist_modify); titleView = (EditText) findViewById(R.id.playlistTitle); if (data != null) { titleView.setText(data.playlistName); ; } titleView.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { if (titleView.getText().length() < 1) titleView.setError(getContext().getString(R.string.no_playlist_text)); } @Override public void afterTextChanged(Editable s) { } }); findViewById(R.id.cancel).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (isShowing()) dismiss(); } }); findViewById(R.id.confirm).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (titleView.getText().length() < 1) { titleView.setError(getContext().getString(R.string.no_playlist_text)); return; } //TODO: do something } }); } public NewPlaylistDialog setPlaylist(@NonNull PlaylistListData data) { this.data = data; if (titleView != null) titleView.setText(data.playlistName); if (toolbar != null) toolbar.setTitle(R.string.playlist_modify); return this; } public NewPlaylistDialog setOnCreateListener(OnCreateListener listener) { this.listener = listener; return this; } public interface OnCreateListener { void onCreate(); } }