aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2008-09-18 23:35:12 +0200
committerMax Kellermann <max@duempel.org>2008-09-18 23:35:12 +0200
commit5fa6d11cc8b1a22456ec90416089e2f40a9f1763 (patch)
treeedd75a1554908b4618073ed4a196b6148ab2b11b
parent479c19084abdafb4fbc4217c5664f6d1ab65e12e (diff)
downloadmpd-5fa6d11cc8b1a22456ec90416089e2f40a9f1763.tar.gz
mpd-5fa6d11cc8b1a22456ec90416089e2f40a9f1763.tar.xz
mpd-5fa6d11cc8b1a22456ec90416089e2f40a9f1763.zip
removed the clock screen
Why should an audio player display a large clock?
-rw-r--r--configure.ac12
-rw-r--r--src/Makefile.am1
-rw-r--r--src/command.c4
-rw-r--r--src/command.h1
-rw-r--r--src/ncmpc.h3
-rw-r--r--src/options.c3
-rw-r--r--src/screen.c10
-rw-r--r--src/screen_clock.c225
-rw-r--r--src/screen_help.c3
9 files changed, 0 insertions, 262 deletions
diff --git a/configure.ac b/configure.ac
index 57e7bb5ea..bf9b4e526 100644
--- a/configure.ac
+++ b/configure.ac
@@ -257,18 +257,6 @@ if test "x$keydef_screen" != "xyes" ; then
AC_DEFINE(DISABLE_KEYDEF_SCREEN, 1, [Disable key editor screen])
fi
-dnl Optional screen - clock
-AC_MSG_CHECKING([whether to include the clock screen])
-AC_ARG_ENABLE([clock-screen],
- AC_HELP_STRING([--enable-clock-screen],
- [Enable clock screen @<:@default=yes@:>@]),
- [clock_screen="$enableval"],
- [clock_screen=yes])
-AC_MSG_RESULT([$clock_screen])
-if test "x$clock_screen" != "xyes" ; then
- AC_DEFINE(DISABLE_CLOCK_SCREEN, 1, [Disable clock screen])
-fi
-
dnl Optional screen - lyrics
AC_MSG_CHECKING([whether to include the lyrics screen])
AC_ARG_ENABLE([lyrics-screen],
diff --git a/src/Makefile.am b/src/Makefile.am
index 55f42eb9d..fc0160e65 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -59,7 +59,6 @@ ncmpc_SOURCES = \
screen_help.c\
screen_lyrics.c\
screen_keydef.c\
- screen_clock.c\
list_window.c\
colors.c\
support.c\
diff --git a/src/command.c b/src/command.c
index 93afe42c1..afb7e42e4 100644
--- a/src/command.c
+++ b/src/command.c
@@ -188,10 +188,6 @@ static command_definition_t cmds[] =
N_("Change search mode") },
#endif
-#ifdef ENABLE_CLOCK_SCREEN
- { {'6', F6, 0 }, 0, CMD_SCREEN_CLOCK, "screen-clock",
- N_("Clock screen") },
-#endif
#ifdef ENABLE_LYRICS_SCREEN
{ {'7', F7, 0 }, 0, CMD_SCREEN_LYRICS, "screen-lyrics",
N_("Lyrics screen") },
diff --git a/src/command.h b/src/command.h
index 4b20a592c..dab6c99ce 100644
--- a/src/command.h
+++ b/src/command.h
@@ -55,7 +55,6 @@ typedef enum
CMD_SCREEN_ARTIST,
CMD_SCREEN_SEARCH,
CMD_SCREEN_KEYDEF,
- CMD_SCREEN_CLOCK,
CMD_SCREEN_HELP,
CMD_SCREEN_LYRICS,
CMD_LYRICS_UPDATE,
diff --git a/src/ncmpc.h b/src/ncmpc.h
index 0d87ebaec..c87c84d88 100644
--- a/src/ncmpc.h
+++ b/src/ncmpc.h
@@ -14,9 +14,6 @@
#ifndef DISABLE_KEYDEF_SCREEN
#define ENABLE_KEYDEF_SCREEN 1
#endif
-#ifndef DISABLE_CLOCK_SCREEN
-#define ENABLE_CLOCK_SCREEN 1
-#endif
#ifndef DISABLE_LYRICS_SCREEN
#define ENABLE_LYRICS_SCREEN 1
#endif
diff --git a/src/options.c b/src/options.c
index 7426a55ca..34772460f 100644
--- a/src/options.c
+++ b/src/options.c
@@ -167,9 +167,6 @@ handle_option(int c, const char *arg)
#ifdef ENABLE_KEYDEF_SCREEN
printf(" key-screen");
#endif
-#ifdef ENABLE_CLOCK_SCREEN
- printf(" clock-screen");
-#endif
printf("\n");
exit(EXIT_SUCCESS);
case 'c': /* --colors */
diff --git a/src/screen.c b/src/screen.c
index 62781fb8a..e510b1682 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -43,7 +43,6 @@
#define SCREEN_ARTIST_ID 2
#define SCREEN_HELP_ID 100
#define SCREEN_KEYDEF_ID 101
-#define SCREEN_CLOCK_ID 102
#define SCREEN_SEARCH_ID 103
#define SCREEN_LYRICS_ID 104
@@ -62,9 +61,6 @@ extern const struct screen_functions screen_search;
#ifdef ENABLE_KEYDEF_SCREEN
extern const struct screen_functions screen_keydef;
#endif
-#ifdef ENABLE_CLOCK_SCREEN
-extern const struct screen_functions screen_clock;
-#endif
extern const struct screen_functions screen_lyrics;
typedef struct screen_functions * (*screen_get_mode_functions_fn_t) (void);
@@ -87,9 +83,6 @@ static const struct
#ifdef ENABLE_KEYDEF_SCREEN
{ SCREEN_KEYDEF_ID, "keydef", &screen_keydef },
#endif
-#ifdef ENABLE_CLOCK_SCREEN
- { SCREEN_CLOCK_ID, "clock", &screen_clock },
-#endif
#ifdef ENABLE_LYRICS_SCREEN
{ SCREEN_LYRICS_ID, "lyrics", &screen_lyrics },
#endif
@@ -950,9 +943,6 @@ screen_cmd(mpdclient_t *c, command_t cmd)
case CMD_SCREEN_KEYDEF:
switch_screen_mode(SCREEN_KEYDEF_ID, c);
break;
- case CMD_SCREEN_CLOCK:
- switch_screen_mode(SCREEN_CLOCK_ID, c);
- break;
case CMD_SCREEN_LYRICS:
switch_screen_mode(SCREEN_LYRICS_ID, c);
break;
diff --git a/src/screen_clock.c b/src/screen_clock.c
deleted file mode 100644
index cba8acdb5..000000000
--- a/src/screen_clock.c
+++ /dev/null
@@ -1,225 +0,0 @@
-/*
- * $Id$
- *
- * This file is based on the 'Grand digital clock' (gdc.c) shipped with
- * ncurses.
- */
-
-#include "config.h"
-
-#ifndef DISABLE_CLOCK_SCREEN
-#include "ncmpc.h"
-#include "mpdclient.h"
-#include "options.h"
-#include "command.h"
-#include "screen.h"
-#include "screen_utils.h"
-#include "gcc.h"
-
-#include <time.h>
-#include <stdlib.h>
-#include <string.h>
-#include <glib.h>
-#include <ncurses.h>
-
-
-#define YDEPTH 5
-#define BUFSIZE 64
-
-#define ENABLE_SECONDS 0
-
-static struct window win;
-static gboolean enable_seconds = ENABLE_SECONDS;
-
-/* orginal variables from gdc.c */
-static short disp[11] =
- {
- 075557, 011111, 071747, 071717, 055711,
- 074717, 074757, 071111, 075757, 075717, 002020
- };
-
-static long older[6], next[6], newer[6], mask;
-
-static int YBASE = 10;
-static int XBASE = 10;
-static int XLENGTH = 54;
-
-/* orginal functions */
-static void
-set(int t, int n)
-{
- int i, m;
-
- m = 7 << n;
- for (i = 0; i < 5; i++) {
- next[i] |= ((disp[t] >> ((4 - i) * 3)) & 07) << n;
- mask |= (next[i] ^ older[i]) & m;
- }
- if (mask & m)
- mask |= m;
-}
-
-static void
-drawbox(void)
-{
- chtype bottom[XLENGTH + 1];
- int n;
-
- mvwaddch(win.w, YBASE - 1, XBASE - 1, ACS_ULCORNER);
- whline(win.w, ACS_HLINE, XLENGTH);
- mvwaddch(win.w, YBASE - 1, XBASE + XLENGTH, ACS_URCORNER);
-
- mvwaddch(win.w, YBASE + YDEPTH, XBASE - 1, ACS_LLCORNER);
- mvwinchnstr(win.w, YBASE + YDEPTH, XBASE, bottom, XLENGTH);
- for (n = 0; n < XLENGTH; n++)
- bottom[n] = ACS_HLINE | (bottom[n] & (A_ATTRIBUTES | A_COLOR));
- mvwaddchnstr(win.w, YBASE + YDEPTH, XBASE, bottom, XLENGTH);
- mvwaddch(win.w, YBASE + YDEPTH, XBASE + XLENGTH, ACS_LRCORNER);
-
- wmove(win.w, YBASE, XBASE - 1);
- wvline(win.w, ACS_VLINE, YDEPTH);
-
- wmove(win.w, YBASE, XBASE + XLENGTH);
- wvline(win.w, ACS_VLINE, YDEPTH);
-}
-
-
-static void
-standt(int on)
-{
- if (on)
- wattron(win.w, A_REVERSE);
- else
- wattroff(win.w, A_REVERSE);
-}
-
-/* ncmpc screen functions */
-
-static void
-clock_resize(int cols, int rows)
-{
- int j;
-
- for (j = 0; j < 5; j++)
- older[j] = newer[j] = next[j] = 0;
-
- win.cols = cols;
- win.rows = rows;
-
- if (cols < 60)
- enable_seconds = FALSE;
- else
- enable_seconds = ENABLE_SECONDS;
-
- if (enable_seconds)
- XLENGTH = 54;
- else
- XLENGTH = 54-18;
-
-
- XBASE = (cols-XLENGTH)/2;
- YBASE = (rows-YDEPTH)/2-(YDEPTH/2)+2;
-}
-
-static void
-clock_init(WINDOW *w, int cols, int rows)
-{
- win.w = w;
- clock_resize(cols, rows);
-}
-
-static const char *
-clock_title(mpd_unused char *str, mpd_unused size_t size)
-{
- return _("Clock");
-}
-
-static void
-clock_update(mpd_unused screen_t *screen, mpd_unused mpdclient_t *c)
-{
- time_t now;
- struct tm *tm;
- long t, a;
- int i, j, s, k;
- char buf[BUFSIZE];
-
- time(&now);
- tm = localtime(&now);
-
- if (win.rows<=YDEPTH+1 || win.cols<=XLENGTH+1) {
- strftime(buf, BUFSIZE, "%X ",tm);
- mvwaddstr(win.w, win.rows ? win.rows/2:0, (win.cols-strlen(buf))/2, buf);
- wrefresh(win.w);
- return;
- }
-
- mask = 0;
- set(tm->tm_sec % 10, 0);
- set(tm->tm_sec / 10, 4);
- set(tm->tm_min % 10, 10);
- set(tm->tm_min / 10, 14);
- set(tm->tm_hour % 10, 20);
- set(tm->tm_hour / 10, 24);
- set(10, 7);
- set(10, 17);
-
- for (k = 0; k < 6; k++) {
- newer[k] = (newer[k] & ~mask) | (next[k] & mask);
- next[k] = 0;
- for (s = 1; s >= 0; s--) {
- standt(s);
- for (i = 0; i < 6; i++) {
- if ((a = (newer[i] ^ older[i]) & (s ? newer : older)[i])
- != 0) {
- for (j = 0, t = 1 << 26; t; t >>= 1, j++) {
- if (a & t) {
- if (!(a & (t << 1))) {
- wmove(win.w, YBASE + i, XBASE + 2 * j);
- }
- if( enable_seconds || j<18 )
- waddstr(win.w, " ");
- }
- }
- }
- if (!s) {
- older[i] = newer[i];
- }
- }
- if (!s) {
- wrefresh(win.w);
- }
- }
- }
-
-#ifdef HAVE_LOCALE_H
- strftime(buf, BUFSIZE, "%x", tm);
-# else
- /* this depends on the detailed format of ctime(3) */
- strcpy(buf, ctime(&now));
- strcpy(buf + 10, buf + 19);
-#endif
- mvwaddstr(win.w, YBASE+YDEPTH+1, (win.cols-strlen(buf))/2, buf);
-
- wmove(win.w, 6, 0);
- drawbox();
- wrefresh(win.w);
-}
-
-static void
-clock_paint(screen_t *screen, mpdclient_t *c)
-{
- /* this seems to be a better way to clear the window than wclear() ?! */
- wmove(win.w, 0, 0);
- wclrtobot(win.w);
- clock_update(screen, c);
-}
-
-const struct screen_functions screen_clock = {
- .init = clock_init,
- .resize = clock_resize,
- .paint = clock_paint,
- .update = clock_update,
- .get_title = clock_title,
-};
-
-#endif
diff --git a/src/screen_help.c b/src/screen_help.c
index 58ca6e13d..07e3375fe 100644
--- a/src/screen_help.c
+++ b/src/screen_help.c
@@ -57,9 +57,6 @@ static help_text_row_t help_text[] =
#ifdef ENABLE_SEARCH_SCREEN
{ 0, CMD_SCREEN_SEARCH, NULL },
#endif
-#ifdef ENABLE_CLOCK_SCREEN
- { 0, CMD_SCREEN_CLOCK, NULL },
-#endif
#ifdef ENABLE_KEYDEF_SCREEN
{ 0, CMD_SCREEN_KEYDEF, NULL },
#endif