diff options
author | Charles Edward Pax <charles.pax@gmail.com> | 2017-07-29 05:25:39 -0400 |
---|---|---|
committer | Charles Edward Pax <charles.pax@gmail.com> | 2017-07-29 05:25:39 -0400 |
commit | 3d9034c47495f108969c5b2cb40ee1f96666b874 (patch) | |
tree | ccaeb4e7014a11e528daa24dc2bff0a737ef7c0e /src | |
parent | aff99ffb18e9235ae5738a4d1ac3293ace49842a (diff) |
Doxygen comments.
Diffstat (limited to 'src')
-rw-r--r-- | src/maps.c | 131 | ||||
-rw-r--r-- | src/marks.c | 94 |
2 files changed, 214 insertions, 11 deletions
@@ -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 maps.c + * \author Andrés Martinelli <andmarti@gmail.com> + * \date 2017-07-18 + * \brief TODO Write a tbrief file description. + */ + #include <stdlib.h> #include <ctype.h> #include <string.h> @@ -14,6 +58,14 @@ static map * maps; static int mapdepth = 0; int len_maps = 0; +/** + * \brief TODO Document replace_maps() + * + * \param[in] b + * + * \return r + */ + int replace_maps (struct block * b) { int r = 0; @@ -46,7 +98,14 @@ int replace_maps (struct block * b) { return r; } -// create list of blocks based on map strings +/** + * \brief Create list of blocks based on map strings + * + * \param[in] str + * + * \return buffer + */ + struct block * get_mapbuf_str (char * str) { struct block * buffer = create_buf(); unsigned short l = strlen(str); @@ -111,7 +170,12 @@ struct block * get_mapbuf_str (char * str) { return buffer; } -// Remove mappings and free corresponding memory +/** + * \brief Remove mappings and free corresponding memory + * + * \return none + */ + void del_maps () { map * m = maps; map * e = m; @@ -125,7 +189,12 @@ void del_maps () { return; } -// Returns the las mapping of the current session +/** + * \brief Removes the last mapping of the current session + * + * \return none + */ + map * get_last_map() { map * m = maps; map * e = m; @@ -137,8 +206,15 @@ map * get_last_map() { return e; } -// Returns the position of a mapping for some mode if it already exists, -1 -// otherwise +/** + * \brief Returns the position of a mapping for some mode if it already exists, -1 otherwise + * + * \param[in] in + * \param[in] mode + * + * \return position of a mapping for some mode if it already exists; -1 otherwise + */ + int exists_map(char * in, int mode) { map * m = maps; char str_in[MAXMAPITEM] = ""; @@ -154,7 +230,18 @@ int exists_map(char * in, int mode) { } return -1; } -// Append a mapping to the current session + +/** + * \brief Ammend a mapping to the curren session + * + * \param[in] in + * \param[in] out + * \param[in] mode + * \param[in] recursive + * + * \return none + */ + void add_map(char * in, char * out, int mode, short recursive) { map * m; @@ -193,7 +280,15 @@ void add_map(char * in, char * out, int mode, short recursive) { return; } -// Remove a mapping from a specific MODE +/** + * \brief Remove a mapping from a specific MODE + * + * \param[in] in + * \param[in] mode + * + * \return none + */ + void del_map(char * in, int mode) { map * ant; map * m = maps; @@ -233,10 +328,18 @@ void del_map(char * in, int mode) { return; } -/* - * Translate a block into a string - * special characters are in the <CR> form +/** + * \brief Translate a block into a string + * + * \details Translate a block in to a string. Special characters + * are in the <CR> form. + * + * \param[in] b + * \param[in] str + * + * \return none */ + void get_mapstr_buf (struct block * b, char * str) { struct block * a = b; int i, len = get_bufsize(a); @@ -278,6 +381,14 @@ void get_mapstr_buf (struct block * b, char * str) { } // Save mapping's details in a char* +/** + * \brief Save mapping's details in a char* + * + * \param[in] salida + * + * \return none + */ + void get_mappings(char * salida) { salida[0]='\0'; if (maps == NULL) return; diff --git a/src/marks.c b/src/marks.c index e3c2063..075ebdf 100644 --- a/src/marks.c +++ b/src/marks.c @@ -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 marks.c + * \author Andrés Martinelli <andmarti@gmail.com> + * \date 2017-07-18 + * \brief TODO Write a tbrief file description. + */ + #include <stdlib.h> #include "marks.h" #include "macros.h" @@ -7,21 +51,50 @@ static struct mark * marks; // 'a' - 'z' = 26 // '0' - '1' = 10 +/** + * \brief TODO Document create_mark_array() + * + * \return none + */ + void create_mark_array() { marks = (struct mark *) calloc(NUM_MARKS, sizeof(struct mark) ); return; } +/** + * \brief TODO Document free_marks_array() + * + * \return none + */ + void free_marks_array() { free(marks); return; } -// 'a' = 97 +/** + * \brief TODO Document get_mark() + * + * \details 'a' = 97 + * \param[in] c + * + * \return none + */ + struct mark * get_mark(char c) { return (marks + c); } +/** + * \brief TODO Document set_range_mark() + * + * \param[in] c + * \param[in] s + * + * \return none + */ + void set_range_mark(char c, struct srange * s) { // Delete marked ranges when recording a new one with same char del_ranges_by_mark(c); @@ -32,6 +105,12 @@ void set_range_mark(char c, struct srange * s) { return; } +/** + * \brief TODO Document set_cell_mark() + * + * \return none + */ + void set_cell_mark(char c, int row, int col) { // Delete marked ranges when recording a new one with same char del_ranges_by_mark(c); @@ -42,6 +121,19 @@ void set_cell_mark(char c, int row, int col) { return; } +/** + * \brief TODO Document fix_marks() + * + * \param[in] deltar + * \param[in] deltac + * \param[in] row_desde + * \param[in] row_hasta + * \param[in] coldesde + * \param[in] col_hasta + * + * \return none + */ + void fix_marks(int deltar, int deltac, int row_desde, int row_hasta, int col_desde, int col_hasta) { int i; for (i = 0; i < NUM_MARKS-1; i++) { |