diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 2 | ||||
-rw-r--r-- | src/main.c | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 8f88440..fbd184c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -2,5 +2,5 @@ bin_PROGRAMS = pianobar pianobar_SOURCES = main.c pianobar_CPPFLAGS = ${LIBCURL_CFLAGS} ${LIBAO_CFLAGS} -I../libpiano -pianobar_LDADD = ${LIBCURL_LIBS} ${LIBAO_LIBS} ${LIBFAAD_LIBS} -lpthread ../libpiano/libpiano.la +pianobar_LDADD = ${LIBCURL_LIBS} ${LIBAO_LIBS} ${LIBFAAD_LIBS} ${LIBREADLINE_LIBS} -lpthread ../libpiano/libpiano.la @@ -31,6 +31,7 @@ THE SOFTWARE. #include <unistd.h> #include <termios.h> #include <poll.h> +#include <readline/readline.h> struct aacPlayer { /* buffer */ @@ -274,6 +275,7 @@ int main (int argc, char **argv) { while (!player.finishedPlayback) { struct pollfd polls = {fileno (stdin), POLLIN, POLLIN}; char buf; + char *lineBuf; if (poll (&polls, 1, 1000) > 0) { read (fileno (stdin), &buf, sizeof (buf)); @@ -316,6 +318,21 @@ int main (int argc, char **argv) { player.doQuit = 1; break; + case 'r': + lineBuf = readline ("New name?\n"); + if (lineBuf != NULL && strlen (lineBuf) > 0) { + if (PianoRenameStation (&ph, curStation, lineBuf) == + PIANO_RET_OK) { + printf ("Renamed.\n"); + } else { + printf ("Error while renaming station.\n"); + } + } + if (lineBuf != NULL) { + free (lineBuf); + } + break; + case 's': player.doQuit = 1; PianoDestroyPlaylist (&ph); |