summaryrefslogtreecommitdiffstats
path: root/usr.sbin/tzsetup/tzmenu.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/tzsetup/tzmenu.c')
-rw-r--r--usr.sbin/tzsetup/tzmenu.c186
1 files changed, 0 insertions, 186 deletions
diff --git a/usr.sbin/tzsetup/tzmenu.c b/usr.sbin/tzsetup/tzmenu.c
deleted file mode 100644
index dbcba71..0000000
--- a/usr.sbin/tzsetup/tzmenu.c
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Copyright 1995 Massachusetts Institute of Technology
- *
- * Permission to use, copy, modify, and distribute this software and
- * its documentation for any purpose and without fee is hereby
- * granted, provided that both the above copyright notice and this
- * permission notice appear in all copies, that both the above
- * copyright notice and this permission notice appear in all
- * supporting documentation, and that the name of M.I.T. not be used
- * in advertising or publicity pertaining to distribution of the
- * software without specific, written prior permission. M.I.T. makes
- * no representations about the suitability of this software for any
- * purpose. It is provided "as is" without express or implied
- * warranty.
- *
- * THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''. M.I.T. DISCLAIMS
- * ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
- * SHALL M.I.T. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-static const char rcsid[] =
- "$Id: tzmenu.c,v 1.4 1996/03/31 09:55:02 joerg Exp $";
-
-#include <stdio.h>
-#include <ncurses.h>
-#include <dialog.h>
-#include <limits.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <sys/ioctl.h>
-
-#include "tzsetup.h"
-
-static const char *regmenu[] = {
- "1", "Africa",
- "2", "Asia",
- "3", "Atlantic Ocean islands",
- "4", "Australia",
- "5", "Europe (including Russia)",
- "6", "Indian Ocean islands",
- "7", "North and South America",
- "8", "Pacific Ocean islands"
-};
-
-static struct region *regions[] = {
- &Africa,
- &Asia,
- &Atlantic,
- &Australia,
- &Europe,
- &Indian,
- &America,
- &Pacific
-};
-
-#define NREGIONS 8
-#define DEFAULT_NROWS 24 /* default height of tty */
-
-static const char *country_menu(const struct region *, const char *);
-
-const char *
-tzmenu(void)
-{
- unsigned char rbuf[_POSIX2_LINE_MAX];
- int rv;
- int item = 0;
- int sc = 0;
- const char *res;
-
- while(1) {
- dialog_clear();
- rv = dialog_menu("Timezone Selector",
- "Select a region",
- NREGIONS + 6,
- 78,
- NREGIONS,
- NREGIONS,
- (unsigned char **)regmenu,
- rbuf,
- &item,
- &sc);
-
-
- if (rv != 0) {
- return 0;
- }
-
- res = country_menu(regions[item],
- regmenu[2 * item + 1]);
-
- if (res)
- return res;
- }
-}
-
-static const char *location_menu(const struct country *, const char *);
-
-static const char *
-country_menu(const struct region *reg, const char *name)
-{
- unsigned char rbuf[_POSIX2_LINE_MAX];
- unsigned char title[_POSIX2_LINE_MAX];
- int rv;
- int item = 0;
- int sc = 0;
- const char *res;
-
- snprintf(title, sizeof title, "Timezone Selector - %s", name);
-
- while(1) {
- dialog_clear();
- rv = dialog_menu(title, "Select a country",
- reg->r_count > LINES - 6 ?
- LINES : reg->r_count + 6,
- 78,
- reg->r_count > LINES - 6 ?
- LINES - 6 : reg->r_count,
- reg->r_count,
- (unsigned char **)reg->r_menu,
- rbuf,
- &item,
- &sc);
-
-
- if (rv != 0) {
- return 0;
- }
-
- sscanf(rbuf, "%d", &rv);
-
- res = location_menu(reg->r_ctrylist[rv - 1],
- reg->r_menu[2 * (rv - 1) + 1]);
-
- if (res)
- return res;
- }
-}
-
-static const char *
-location_menu(const struct country *ctry, const char *name)
-{
- unsigned char rbuf[_POSIX2_LINE_MAX];
- unsigned char title[_POSIX2_LINE_MAX];
- int rv;
- int item = 0;
- int sc = 0;
-
- snprintf(title, sizeof title, "Timezone Selector - %s", name);
-
- while(1) {
- dialog_clear();
- rv = dialog_menu(title, "Select a location",
- ctry->c_count > LINES - 6?
- LINES : ctry->c_count + 6,
- 78,
- ctry->c_count > LINES - 6?
- LINES - 6 : ctry->c_count,
- ctry->c_count,
- (unsigned char **)ctry->c_menu,
- rbuf,
- &item,
- &sc);
-
-
- if (rv != 0) {
- return 0;
- }
-
- sscanf(rbuf, "%d", &rv);
-
- rv = setzone(ctry->c_filelist[rv - 1]);
-
- if (rv == 0)
- return ctry->c_filelist[rv - 1];
- }
-}
-
OpenPOWER on IntegriCloud