Code

removed the clock screen
authorMax Kellermann <max@duempel.org>
Thu, 18 Sep 2008 21:35:12 +0000 (23:35 +0200)
committerMax Kellermann <max@duempel.org>
Thu, 18 Sep 2008 21:35:12 +0000 (23:35 +0200)
Why should an audio player display a large clock?

configure.ac
src/Makefile.am
src/command.c
src/command.h
src/ncmpc.h
src/options.c
src/screen.c
src/screen_clock.c [deleted file]
src/screen_help.c

index 57e7bb5ea0c76dfaa8aa9f6d09328238341827d2..bf9b4e526439d69f8acf6e9bd00ae3c78f41b977 100644 (file)
@@ -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], 
index 55f42eb9ddf7cd90e49f71d575dc90619e6cb6ad..fc0160e65c54877c97e9f650e40b61a7cda9a71c 100644 (file)
@@ -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\
index 93afe42c1135d37390d85dfa1e4d147470f44482..afb7e42e41ea3a1a092859e0378a1b642c2cf73e 100644 (file)
@@ -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") },
index 4b20a592ce04a90b3e1daa0733961403ef3a653c..dab6c99cef93746921f2eaf643d2d26241da42d8 100644 (file)
@@ -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,
index 0d87ebaecd6a32f8b965442af42f98934575a67b..c87c84d88fe270777abde35b538854c15f2e3f48 100644 (file)
@@ -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
index 7426a55caed471dcc240973488f07074992fb4ae..34772460f2045041a531d9544890690b63dbf60d 100644 (file)
@@ -166,9 +166,6 @@ handle_option(int c, const char *arg)
 #endif
 #ifdef ENABLE_KEYDEF_SCREEN
       printf(" key-screen");
-#endif
-#ifdef ENABLE_CLOCK_SCREEN
-      printf(" clock-screen");
 #endif
       printf("\n");
       exit(EXIT_SUCCESS);
index 62781fb8a2bb7bb31f41d0969a7a75eeb41200e4..e510b168265ed7f3a3a3ea781890723a51507c7b 100644 (file)
@@ -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 (file)
index cba8acd..0000000
+++ /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
index 58ca6e13dd4e6f64627b3e318fe493231fdee0e1..07e3375fe5b4ffc4a272ff4aef773be9c468c114 100644 (file)
@@ -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