GRASS Programmer's Manual  6.4.1(2011)
ask_cell.c
Go to the documentation of this file.
00001 /*
00002  *************************************************************************
00003  *   char *
00004  *   G_ask_cell_new(prompt, name)) 
00005  *       asks user to input name of a new cell file
00006  *
00007  *   char *
00008  *   G_ask_cell_old(prompt, name) 
00009  *       asks user to input name of an existing cell file
00010  *
00011  *   char *
00012  *   G_ask_cell_in_mapset(prompt, name)
00013  *       asks user to input name of an existing cell file in current mapset
00014  *
00015  *   char *
00016  *   G_ask_cell_any(prompt, name)
00017  *       asks user to input name of a new or existing cell file in
00018  *       the current mapset. Warns user about (possible) overwrite
00019  *       if cell file already exists
00020  *
00021  *   parms:
00022  *      const char *prompt    optional prompt for user
00023  *      char *name            buffer to hold name of map found
00024  *
00025  *   returns:
00026  *      char *pointer to a string with name of mapset
00027  *       where file was found, or NULL if not found
00028  *
00029  *   note:
00030  *      rejects all names that begin with .
00031  **********************************************************************/
00032 #include <stdlib.h>
00033 #include <string.h>
00034 #include <grass/gis.h>
00035 #include <grass/glocale.h>
00036 
00037 static int lister(char *, char *, char *);
00038 
00039 
00051 char *G_ask_cell_new(const char *prompt, char *name)
00052 {
00053 
00054     return G_ask_new_ext(prompt, name, "cell", "raster", _("with titles"),
00055                          lister);
00056 }
00057 
00058 
00070 char *G_ask_cell_old(const char *prompt, char *name)
00071 {
00072     return G_ask_old_ext(prompt, name, "cell", "raster", _("with titles"),
00073                          lister);
00074 }
00075 
00076 
00088 char *G_ask_cell_in_mapset(const char *prompt, char *name)
00089 {
00090     return G_ask_in_mapset_ext(prompt, name, "cell", "raster",
00091                                _("with titles"), lister);
00092 }
00093 
00094 char *G_ask_cell_any(const char *prompt, char *name)
00095 {
00096     return G_ask_any_ext(prompt, name, "cell", "raster", 1, _("with titles"),
00097                          lister);
00098 }
00099 
00100 static int lister(char *name, char *mapset, char *buf)
00101 {
00102     char *title;
00103 
00104     *buf = 0;
00105     if (*name == 0)
00106         return 0;
00107 
00108     strcpy(buf, title = G_get_cell_title(name, mapset));
00109     if (*buf == 0)
00110         strcpy(buf, _("(no title)"));
00111     G_free(title);
00112 
00113     return 0;
00114 }
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines