summaryrefslogtreecommitdiff
path: root/src/ui_act.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui_act.c')
-rw-r--r--src/ui_act.c300
1 files changed, 153 insertions, 147 deletions
diff --git a/src/ui_act.c b/src/ui_act.c
index d907304..d411474 100644
--- a/src/ui_act.c
+++ b/src/ui_act.c
@@ -31,11 +31,11 @@ THE SOFTWARE.
#include "ui_act.h"
#include "ui_readline.h"
-#define RETURN_IF_NO_STATION if (*curStation == NULL) { \
+#define RETURN_IF_NO_STATION if (app->curStation == NULL) { \
BarUiMsg (MSG_ERR, "No station selected.\n"); \
return; }
-#define RETURN_IF_NO_SONG if (*curStation == NULL || *curSong == NULL) { \
+#define RETURN_IF_NO_SONG if (app->curStation == NULL || app->playlist == NULL) { \
BarUiMsg (MSG_ERR, "No song playing.\n"); \
return; }
@@ -70,7 +70,7 @@ static int BarTransformIfShared (PianoHandle_t *ph, WaitressHandle_t *waith,
/* print current shortcut configuration
*/
-void BarUiActHelp (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActHelp) {
static const char *idToDesc[] = {
NULL,
"love current song",
@@ -100,85 +100,86 @@ void BarUiActHelp (BAR_KS_ARGS) {
BarUiMsg (MSG_NONE, "\r");
for (i = 0; i < BAR_KS_COUNT; i++) {
if (idToDesc[i] != NULL) {
- BarUiMsg (MSG_LIST, "%c %s\n", settings->keys[i], idToDesc[i]);
+ BarUiMsg (MSG_LIST, "%c %s\n", app->settings.keys[i], idToDesc[i]);
}
}
}
/* add more music to current station
*/
-void BarUiActAddMusic (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActAddMusic) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
PianoRequestDataAddSeed_t reqData;
RETURN_IF_NO_STATION;
- reqData.musicId = BarUiSelectMusicId (ph, waith, curFd, (*curSong)->musicId);
+ reqData.musicId = BarUiSelectMusicId (&app->ph, &app->waith, curFd,
+ app->playlist->musicId);
if (reqData.musicId != NULL) {
- if (!BarTransformIfShared (ph, waith, *curStation)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, app->curStation)) {
return;
}
- reqData.station = *curStation;
+ reqData.station = app->curStation;
BarUiMsg (MSG_INFO, "Adding music to station... ");
- BarUiPianoCall (ph, PIANO_REQUEST_ADD_SEED, waith, &reqData, &pRet,
- &wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_ADD_SEED, &app->waith, &reqData,
+ &pRet, &wRet);
free (reqData.musicId);
- BarUiStartEventCmd (settings, "stationaddmusic", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "stationaddmusic", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}
/* ban song
*/
-void BarUiActBanSong (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActBanSong) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
RETURN_IF_NO_SONG;
- if (!BarTransformIfShared (ph, waith, *curStation)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, app->curStation)) {
return;
}
PianoRequestDataRateSong_t reqData;
- reqData.song = *curSong;
+ reqData.song = app->playlist;
reqData.rating = PIANO_RATE_BAN;
BarUiMsg (MSG_INFO, "Banning song... ");
- if (BarUiPianoCall (ph, PIANO_REQUEST_RATE_SONG, waith, &reqData, &pRet,
- &wRet)) {
- BarUiDoSkipSong (player);
+ if (BarUiPianoCall (&app->ph, PIANO_REQUEST_RATE_SONG, &app->waith, &reqData,
+ &pRet, &wRet)) {
+ BarUiDoSkipSong (&app->player);
}
- BarUiStartEventCmd (settings, "songban", *curStation, *curSong, player,
- pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "songban", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
/* create new station
*/
-void BarUiActCreateStation (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActCreateStation) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
PianoRequestDataCreateStation_t reqData;
- reqData.id = BarUiSelectMusicId (ph, waith, curFd, NULL);
+ reqData.id = BarUiSelectMusicId (&app->ph, &app->waith, curFd, NULL);
if (reqData.id != NULL) {
reqData.type = "mi";
BarUiMsg (MSG_INFO, "Creating station... ");
- BarUiPianoCall (ph, PIANO_REQUEST_CREATE_STATION, waith, &reqData,
- &pRet, &wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_CREATE_STATION, &app->waith,
+ &reqData, &pRet, &wRet);
free (reqData.id);
- BarUiStartEventCmd (settings, "stationcreate", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "stationcreate", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}
/* add shared station by id
*/
-void BarUiActAddSharedStation (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActAddSharedStation) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
PianoRequestDataCreateStation_t reqData;
@@ -190,79 +191,80 @@ void BarUiActAddSharedStation (BAR_KS_ARGS) {
reqData.id = stationId;
reqData.type = "sh";
BarUiMsg (MSG_INFO, "Adding shared station... ");
- BarUiPianoCall (ph, PIANO_REQUEST_CREATE_STATION, waith, &reqData,
- &pRet, &wRet);
- BarUiStartEventCmd (settings, "stationaddshared", *curStation,
- *curSong, player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_CREATE_STATION, &app->waith,
+ &reqData, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "stationaddshared",
+ app->curStation, app->playlist, &app->player, pRet, wRet);
}
}
/* delete current station
*/
-void BarUiActDeleteStation (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActDeleteStation) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
RETURN_IF_NO_STATION;
BarUiMsg (MSG_QUESTION, "Really delete \"%s\"? [yN] ",
- (*curStation)->name);
+ app->curStation->name);
if (BarReadlineYesNo (0, curFd)) {
BarUiMsg (MSG_INFO, "Deleting station... ");
- if (BarUiPianoCall (ph, PIANO_REQUEST_DELETE_STATION, waith,
- *curStation, &pRet, &wRet)) {
- BarUiDoSkipSong (player);
- PianoDestroyPlaylist (*curSong);
- *curSong = NULL;
- *curStation = NULL;
+ if (BarUiPianoCall (&app->ph, PIANO_REQUEST_DELETE_STATION,
+ &app->waith, app->curStation, &pRet, &wRet)) {
+ BarUiDoSkipSong (&app->player);
+ PianoDestroyPlaylist (app->playlist);
+ app->playlist = NULL;
+ app->curStation = NULL;
}
- BarUiStartEventCmd (settings, "stationdelete", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "stationdelete", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}
/* explain pandora's song choice
*/
-void BarUiActExplain (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActExplain) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
PianoRequestDataExplain_t reqData;
RETURN_IF_NO_STATION;
- reqData.song = *curSong;
+ reqData.song = app->playlist;
BarUiMsg (MSG_INFO, "Receiving explanation... ");
- if (BarUiPianoCall (ph, PIANO_REQUEST_EXPLAIN, waith, &reqData, &pRet,
- &wRet)) {
+ if (BarUiPianoCall (&app->ph, PIANO_REQUEST_EXPLAIN, &app->waith, &reqData,
+ &pRet, &wRet)) {
BarUiMsg (MSG_INFO, "%s\n", reqData.retExplain);
free (reqData.retExplain);
}
- BarUiStartEventCmd (settings, "songexplain", *curStation, *curSong, player,
- pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "songexplain", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
/* choose genre station and add it as shared station
*/
-void BarUiActStationFromGenre (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActStationFromGenre) {
/* use genre station */
- BarStationFromGenre (ph, waith, curFd);
+ BarStationFromGenre (&app->ph, &app->waith, curFd);
}
/* print verbose song information
*/
-void BarUiActSongInfo (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActSongInfo) {
RETURN_IF_NO_SONG;
- BarUiPrintStation ((*curStation));
+ BarUiPrintStation (app->curStation);
/* print real station if quickmix */
- BarUiPrintSong ((*curSong), (*curStation)->isQuickMix ?
- PianoFindStationById (ph->stations, (*curSong)->stationId) : NULL);
+ BarUiPrintSong (app->playlist, app->curStation->isQuickMix ?
+ PianoFindStationById (app->ph.stations, app->playlist->stationId) :
+ NULL);
}
/* print some debugging information
*/
-void BarUiActDebug (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActDebug) {
RETURN_IF_NO_SONG;
/* print debug-alike infos */
@@ -280,45 +282,47 @@ void BarUiActDebug (BAR_KS_ARGS) {
"stationId:\t%s\n"
"title:\t%s\n"
"userSeed:\t%s\n",
- (*curSong)->album, (*curSong)->artist, (*curSong)->audioFormat,
- (*curSong)->audioUrl, (*curSong)->fileGain,
- (*curSong)->focusTraitId, (*curSong)->identity,
- (*curSong)->matchingSeed, (*curSong)->musicId, (*curSong)->rating,
- (*curSong)->stationId, (*curSong)->title, (*curSong)->userSeed);
+ app->playlist->album, app->playlist->artist,
+ app->playlist->audioFormat, app->playlist->audioUrl,
+ app->playlist->fileGain, app->playlist->focusTraitId,
+ app->playlist->identity, app->playlist->matchingSeed,
+ app->playlist->musicId, app->playlist->rating,
+ app->playlist->stationId, app->playlist->title,
+ app->playlist->userSeed);
}
/* rate current song
*/
-void BarUiActLoveSong (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActLoveSong) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
RETURN_IF_NO_SONG;
- if (!BarTransformIfShared (ph, waith, *curStation)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, app->curStation)) {
return;
}
PianoRequestDataRateSong_t reqData;
- reqData.song = *curSong;
+ reqData.song = app->playlist;
reqData.rating = PIANO_RATE_LOVE;
BarUiMsg (MSG_INFO, "Loving song... ");
- BarUiPianoCall (ph, PIANO_REQUEST_RATE_SONG, waith, &reqData, &pRet,
- &wRet);
- BarUiStartEventCmd (settings, "songlove", *curStation, *curSong, player,
- pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_RATE_SONG, &app->waith, &reqData,
+ &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "songlove", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
/* skip song
*/
-void BarUiActSkipSong (BAR_KS_ARGS) {
- BarUiDoSkipSong (player);
+BarUiActCallback(BarUiActSkipSong) {
+ BarUiDoSkipSong (&app->player);
}
/* move song to different station
*/
-void BarUiActMoveSong (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActMoveSong) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
PianoRequestDataMoveSong_t reqData;
@@ -327,44 +331,45 @@ void BarUiActMoveSong (BAR_KS_ARGS) {
RETURN_IF_NO_SONG;
- reqData.to = BarUiSelectStation (ph, "Move song to station: ",
- settings->sortOrder, curFd);
+ reqData.to = BarUiSelectStation (&app->ph, "Move song to station: ",
+ app->settings.sortOrder, curFd);
if (reqData.to != NULL) {
/* find original station (just is case we're playing a quickmix
* station) */
- reqData.from = PianoFindStationById (ph->stations, (*curSong)->stationId);
+ reqData.from = PianoFindStationById (app->ph.stations,
+ app->playlist->stationId);
if (reqData.from == NULL) {
BarUiMsg (MSG_ERR, "Station not found\n");
return;
}
- if (!BarTransformIfShared (ph, waith, reqData.from) ||
- !BarTransformIfShared (ph, waith, reqData.to)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, reqData.from) ||
+ !BarTransformIfShared (&app->ph, &app->waith, reqData.to)) {
return;
}
BarUiMsg (MSG_INFO, "Moving song to \"%s\"... ", reqData.to->name);
- reqData.song = *curSong;
- if (BarUiPianoCall (ph, PIANO_REQUEST_MOVE_SONG, waith, &reqData,
- &pRet, &wRet)) {
- BarUiDoSkipSong (player);
+ reqData.song = app->playlist;
+ if (BarUiPianoCall (&app->ph, PIANO_REQUEST_MOVE_SONG, &app->waith,
+ &reqData, &pRet, &wRet)) {
+ BarUiDoSkipSong (&app->player);
}
- BarUiStartEventCmd (settings, "songmove", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "songmove", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}
/* pause
*/
-void BarUiActPause (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActPause) {
/* already locked => unlock/unpause */
- if (pthread_mutex_trylock (&player->pauseMutex) == EBUSY) {
- pthread_mutex_unlock (&player->pauseMutex);
+ if (pthread_mutex_trylock (&app->player.pauseMutex) == EBUSY) {
+ pthread_mutex_unlock (&app->player.pauseMutex);
}
}
/* rename current station
*/
-void BarUiActRenameStation (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActRenameStation) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
char lineBuf[100];
@@ -374,58 +379,58 @@ void BarUiActRenameStation (BAR_KS_ARGS) {
BarUiMsg (MSG_QUESTION, "New name: ");
if (BarReadlineStr (lineBuf, sizeof (lineBuf), 0, curFd) > 0) {
PianoRequestDataRenameStation_t reqData;
- if (!BarTransformIfShared (ph, waith, *curStation)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, app->curStation)) {
return;
}
- reqData.station = *curStation;
+ reqData.station = app->curStation;
reqData.newName = lineBuf;
BarUiMsg (MSG_INFO, "Renaming station... ");
- BarUiPianoCall (ph, PIANO_REQUEST_RENAME_STATION, waith, &reqData,
- &pRet, &wRet);
- BarUiStartEventCmd (settings, "stationrename", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_RENAME_STATION, &app->waith,
+ &reqData, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "stationrename", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}
/* play another station
*/
-void BarUiActSelectStation (BAR_KS_ARGS) {
- PianoStation_t *newStation = BarUiSelectStation (ph, "Select station: ",
- settings->sortOrder, curFd);
+BarUiActCallback(BarUiActSelectStation) {
+ PianoStation_t *newStation = BarUiSelectStation (&app->ph, "Select station: ",
+ app->settings.sortOrder, curFd);
if (newStation != NULL) {
- *curStation = newStation;
- BarUiPrintStation ((*curStation));
- BarUiDoSkipSong (player);
- PianoDestroyPlaylist (*curSong);
- *curSong = NULL;
+ app->curStation = newStation;
+ BarUiPrintStation (app->curStation);
+ BarUiDoSkipSong (&app->player);
+ PianoDestroyPlaylist (app->playlist);
+ app->playlist = NULL;
}
}
/* ban song for 1 month
*/
-void BarUiActTempBanSong (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActTempBanSong) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
RETURN_IF_NO_SONG;
BarUiMsg (MSG_INFO, "Putting song on shelf... ");
- if (BarUiPianoCall (ph, PIANO_REQUEST_ADD_TIRED_SONG, waith, *curSong,
- &pRet, &wRet)) {
- BarUiDoSkipSong (player);
+ if (BarUiPianoCall (&app->ph, PIANO_REQUEST_ADD_TIRED_SONG, &app->waith,
+ app->playlist, &pRet, &wRet)) {
+ BarUiDoSkipSong (&app->player);
}
- BarUiStartEventCmd (settings, "songshelf", *curStation, *curSong, player,
- pRet, wRet);
+ BarUiStartEventCmd (&app->settings, "songshelf", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
/* print upcoming songs
*/
-void BarUiActPrintUpcoming (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActPrintUpcoming) {
RETURN_IF_NO_SONG;
- PianoSong_t *nextSong = (*curSong)->next;
+ PianoSong_t *nextSong = app->playlist->next;
if (nextSong != NULL) {
int i = 0;
while (nextSong != NULL) {
@@ -442,24 +447,24 @@ void BarUiActPrintUpcoming (BAR_KS_ARGS) {
/* if current station is a quickmix: select stations that are played in
* quickmix
*/
-void BarUiActSelectQuickMix (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActSelectQuickMix) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
RETURN_IF_NO_STATION;
- if ((*curStation)->isQuickMix) {
+ if (app->curStation->isQuickMix) {
PianoStation_t *selStation;
- while ((selStation = BarUiSelectStation (ph,
- "Toggle quickmix for station: ", settings->sortOrder,
+ while ((selStation = BarUiSelectStation (&app->ph,
+ "Toggle quickmix for station: ", app->settings.sortOrder,
curFd)) != NULL) {
selStation->useQuickMix = !selStation->useQuickMix;
}
BarUiMsg (MSG_INFO, "Setting quickmix stations... ");
- BarUiPianoCall (ph, PIANO_REQUEST_SET_QUICKMIX, waith, NULL, &pRet,
- &wRet);
- BarUiStartEventCmd (settings, "stationquickmixtoggle", *curStation,
- *curSong, player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_SET_QUICKMIX, &app->waith,
+ NULL, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "stationquickmixtoggle", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
} else {
BarUiMsg (MSG_ERR, "Not a QuickMix station.\n");
}
@@ -467,38 +472,39 @@ void BarUiActSelectQuickMix (BAR_KS_ARGS) {
/* quit
*/
-void BarUiActQuit (BAR_KS_ARGS) {
- *doQuit = 1;
- BarUiDoSkipSong (player);
+BarUiActCallback(BarUiActQuit) {
+ app->doQuit = 1;
+ BarUiDoSkipSong (&app->player);
}
/* song history
*/
-void BarUiActHistory (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActHistory) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
char selectBuf[2], allowedBuf[3];
PianoSong_t *selectedSong;
- if (*songHistory != NULL) {
- selectedSong = BarUiSelectSong (*songHistory, curFd);
+ if (app->songHistory != NULL) {
+ selectedSong = BarUiSelectSong (app->songHistory, curFd);
if (selectedSong != NULL) {
/* use user-defined keybindings */
- allowedBuf[0] = settings->keys[BAR_KS_LOVE];
- allowedBuf[1] = settings->keys[BAR_KS_BAN];
+ allowedBuf[0] = app->settings.keys[BAR_KS_LOVE];
+ allowedBuf[1] = app->settings.keys[BAR_KS_BAN];
allowedBuf[2] = '\0';
BarUiMsg (MSG_QUESTION, "%s - %s: love[%c] or ban[%c]? ",
selectedSong->artist, selectedSong->title,
- settings->keys[BAR_KS_LOVE], settings->keys[BAR_KS_BAN]);
+ app->settings.keys[BAR_KS_LOVE],
+ app->settings.keys[BAR_KS_BAN]);
BarReadline (selectBuf, sizeof (selectBuf), allowedBuf, 1, 0, curFd);
- if (selectBuf[0] == settings->keys[BAR_KS_LOVE] ||
- selectBuf[0] == settings->keys[BAR_KS_BAN]) {
+ if (selectBuf[0] == app->settings.keys[BAR_KS_LOVE] ||
+ selectBuf[0] == app->settings.keys[BAR_KS_BAN]) {
/* make sure we're transforming the _original_ station (not
* curStation) */
PianoStation_t *songStation =
- PianoFindStationById (ph->stations,
+ PianoFindStationById (app->ph.stations,
selectedSong->stationId);
if (songStation == NULL) {
@@ -506,44 +512,44 @@ void BarUiActHistory (BAR_KS_ARGS) {
return;
}
- if (!BarTransformIfShared (ph, waith, songStation)) {
+ if (!BarTransformIfShared (&app->ph, &app->waith, songStation)) {
return;
}
- if (selectBuf[0] == settings->keys[BAR_KS_LOVE]) {
+ if (selectBuf[0] == app->settings.keys[BAR_KS_LOVE]) {
/* FIXME: copy&waste */
PianoRequestDataRateSong_t reqData;
reqData.song = selectedSong;
reqData.rating = PIANO_RATE_LOVE;
BarUiMsg (MSG_INFO, "Loving song... ");
- BarUiPianoCall (ph, PIANO_REQUEST_RATE_SONG, waith,
- &reqData, &pRet, &wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_RATE_SONG,
+ &app->waith, &reqData, &pRet, &wRet);
- BarUiStartEventCmd (settings, "songlove", songStation,
- selectedSong, player, pRet, wRet);
- } else if (selectBuf[0] == settings->keys[BAR_KS_BAN]) {
+ BarUiStartEventCmd (&app->settings, "songlove", songStation,
+ selectedSong, &app->player, pRet, wRet);
+ } else if (selectBuf[0] == app->settings.keys[BAR_KS_BAN]) {
PianoRequestDataRateSong_t reqData;
reqData.song = selectedSong;
reqData.rating = PIANO_RATE_BAN;
BarUiMsg (MSG_INFO, "Banning song... ");
- BarUiPianoCall (ph, PIANO_REQUEST_RATE_SONG, waith,
- &reqData, &pRet, &wRet);
- BarUiStartEventCmd (settings, "songban", songStation,
- selectedSong, player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_RATE_SONG,
+ &app->waith, &reqData, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "songban", songStation,
+ selectedSong, &app->player, pRet, wRet);
} /* end if */
} /* end if selectBuf[0] */
} /* end if selectedSong != NULL */
} else {
- BarUiMsg (MSG_INFO, (settings->history == 0) ? "History disabled.\n" :
+ BarUiMsg (MSG_INFO, (app->settings.history == 0) ? "History disabled.\n" :
"No history yet.\n");
}
}
/* create song bookmark
*/
-void BarUiActBookmark (BAR_KS_ARGS) {
+BarUiActCallback(BarUiActBookmark) {
PianoReturn_t pRet;
WaitressReturn_t wRet;
char selectBuf[2];
@@ -554,16 +560,16 @@ void BarUiActBookmark (BAR_KS_ARGS) {
BarReadline (selectBuf, sizeof (selectBuf), "sa", 1, 0, curFd);
if (selectBuf[0] == 's') {
BarUiMsg (MSG_INFO, "Bookmarking song... ");
- BarUiPianoCall (ph, PIANO_REQUEST_BOOKMARK_SONG, waith, *curSong,
- &pRet, &wRet);
- BarUiStartEventCmd (settings, "songbookmark", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_BOOKMARK_SONG, &app->waith,
+ app->playlist, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "songbookmark", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
} else if (selectBuf[0] == 'a') {
BarUiMsg (MSG_INFO, "Bookmarking artist... ");
- BarUiPianoCall (ph, PIANO_REQUEST_BOOKMARK_ARTIST, waith, *curSong,
- &pRet, &wRet);
- BarUiStartEventCmd (settings, "artistbookmark", *curStation, *curSong,
- player, pRet, wRet);
+ BarUiPianoCall (&app->ph, PIANO_REQUEST_BOOKMARK_ARTIST, &app->waith,
+ app->playlist, &pRet, &wRet);
+ BarUiStartEventCmd (&app->settings, "artistbookmark", app->curStation,
+ app->playlist, &app->player, pRet, wRet);
}
}