/*
 * boxes - Command line filter to draw/remove ASCII boxes around text
 * Copyright (c) 1999-2024 Thomas Jensen and the boxes contributors
 *
 * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public
 * License, version 3, as published by the Free Software Foundation.
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
 * details.
 * You should have received a copy of the GNU General Public License along with this program.
 * If not, see <https://www.gnu.org/licenses/>.
 *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 */

/*
 * List design information about a single design or about all designs.
 */

#ifndef LIST_H
#define LIST_H


/**
 * Create a sorted shallow copy of the global design array.
 * @returns a new array, for which memory was allocated. All pointers in the array point to the original data.
 *      Returns `NULL` when out of memory.
 */
design_t **sort_designs_by_name();


/**
 * Print a sorted listing of available box designs.
 * Uses design name from BOX spec and sample picture plus author.
 * @returns != 0   on error (out of memory);
 *          == 0   on success
 */
int list_designs();


#endif

/* vim: set cindent sw=4: */
