diff options
-rw-r--r-- | src/conf.c | 82 | ||||
-rw-r--r-- | src/conf.h | 44 | ||||
-rw-r--r-- | src/main.h | 8 |
3 files changed, 130 insertions, 4 deletions
@@ -1,3 +1,50 @@ +/******************************************************************************* + * Copyright (c) 2013-2017, Andrés Martinelli <andmarti@gmail.com * + * All rights reserved. * + * * + * This file is a part of SC-IM * + * * + * SC-IM is a spreadsheet program that is based on SC. The original authors * + * of SC are James Gosling and Mark Weiser, and mods were later added by * + * Chuck Martin. * + * * + * Redistribution and use in source and binary forms, with or without * + * modification, are permitted provided that the following conditions are met: * + * 1. Redistributions of source code must retain the above copyright * + * notice, this list of conditions and the following disclaimer. * + * 2. Redistributions in binary form must reproduce the above copyright * + * notice, this list of conditions and the following disclaimer in the * + * documentation and/or other materials provided with the distribution. * + * 3. All advertising materials mentioning features or use of this software * + * must display the following acknowledgement: * + * This product includes software developed by Andrés Martinelli * + * <andmarti@gmail.com>. * + * 4. Neither the name of the Andrés Martinelli nor the * + * names of other contributors may be used to endorse or promote products * + * derived from this software without specific prior written permission. * + * * + * THIS SOFTWARE IS PROVIDED BY ANDRES MARTINELLI ''AS IS'' AND ANY * + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * + * DISCLAIMED. IN NO EVENT SHALL ANDRES MARTINELLI 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 * + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * + *******************************************************************************/ + +/** + * \file conf.c + * \author Andrés Martinelli <andmarti@gmail.com> + * \date 2017-07-18 + * \brief Configuration functions + * + * \details This file contains functions that operate on the user's configuration + * dictionary (user_conf_d) and the predefined dictionary (predefined_conf_d). + */ + #include <stdlib.h> #include <stdio.h> #include <string.h> @@ -5,6 +52,17 @@ #include "conf.h" #include "utils/dictionary.h" +/** + * \brief Populates user_conf_d with default values + * + * \details Populates the user's configuration dictionary (user_conf_d) with + * default values. + * + * \return none + */ +// TODO Make this function take a pointer to a dictionary as an +// argument rather than using user_conf_d directly. + void store_default_config_values() { put(user_conf_d, "half_page_scroll", "0"); put(user_conf_d, "autocalc", "1"); @@ -53,6 +111,18 @@ void store_default_config_values() { } +/** + * \brief TODO Document get_conf_values() + * + * \param[in] salida TODO Document this parameter + * + * \return NULL if user_conf_d is NULL; salida if salida exists + */ + +// TODO Change 'salida' to a more descriptive variable name. +// TODO Make this function take a pointer to a dictionary as an +// argument rather than using user_conf_d directly. + char * get_conf_values(char * salida) { if (user_conf_d == NULL) return NULL; struct nlist * nl; @@ -69,6 +139,18 @@ char * get_conf_values(char * salida) { return salida; } +/** + * \brief Retreive teh value of a given key in user_conf_d + * + * \details This function will look for a given key in the user_conf_d + * dictionary. If the key is found it will return the value of that + * dictionary entry. + * + * \return key value + */ +// TODO Make this function take a pointer to a dictionary as an +// argument rather than using user_conf_d directly. + char * get_conf_value(char * key) { char * val = get(user_conf_d, key); @@ -1,3 +1,47 @@ +/******************************************************************************* + * Copyright (c) 2013-2017, Andrés Martinelli <andmarti@gmail.com * + * All rights reserved. * + * * + * This file is a part of SC-IM * + * * + * SC-IM is a spreadsheet program that is based on SC. The original authors * + * of SC are James Gosling and Mark Weiser, and mods were later added by * + * Chuck Martin. * + * * + * Redistribution and use in source and binary forms, with or without * + * modification, are permitted provided that the following conditions are met: * + * 1. Redistributions of source code must retain the above copyright * + * notice, this list of conditions and the following disclaimer. * + * 2. Redistributions in binary form must reproduce the above copyright * + * notice, this list of conditions and the following disclaimer in the * + * documentation and/or other materials provided with the distribution. * + * 3. All advertising materials mentioning features or use of this software * + * must display the following acknowledgement: * + * This product includes software developed by Andrés Martinelli * + * <andmarti@gmail.com>. * + * 4. Neither the name of the Andrés Martinelli nor the * + * names of other contributors may be used to endorse or promote products * + * derived from this software without specific prior written permission. * + * * + * THIS SOFTWARE IS PROVIDED BY ANDRES MARTINELLI ''AS IS'' AND ANY * + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * + * DISCLAIMED. IN NO EVENT SHALL ANDRES MARTINELLI 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 * + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * + *******************************************************************************/ + +/** + * @file conf.h + * @author Andrés Martinelli <andmarti@gmail.com> + * @date 2017-07-18 + * @brief Header file for conf.c + */ + extern struct dictionary * user_conf_d; extern struct dictionary * predefined_conf_d; @@ -36,10 +36,10 @@ *******************************************************************************/ /** - * @file main.h - * @author Andrés Martinelli <andmarti@gmail.com> - * @date 2017-07-18 - * @brief Header file for main.c + * \file main.h + * \author Andrés Martinelli <andmarti@gmail.com> + * \date 2017-07-18 + * \brief Header file for main.c * */ |