GDS-Render v1.2.1
layer-selector.h
Go to the documentation of this file.
1/*
2 * GDSII-Converter
3 * Copyright (C) 2018 Mario Hüttel <mario.huettel@gmx.net>
4 *
5 * This file is part of GDSII-Converter.
6 *
7 * GDSII-Converter is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 *
11 * GDSII-Converter is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with GDSII-Converter. If not, see <http://www.gnu.org/licenses/>.
18 */
19
31#ifndef __LAYER_SELECTOR_H__
32#define __LAYER_SELECTOR_H__
33
34#include <gtk/gtk.h>
35#include <glib.h>
38
39G_BEGIN_DECLS
40
41G_DECLARE_FINAL_TYPE(LayerSelector, layer_selector, LAYER, SELECTOR, GObject);
42
43#define TYPE_LAYER_SELECTOR (layer_selector_get_type())
44
49
55LayerSelector *layer_selector_new(GtkListBox *list_box);
56
63void layer_selector_generate_layer_widgets(LayerSelector *selector, GList *libs);
64
71void layer_selector_set_load_mapping_button(LayerSelector *selector, GtkWidget *button, GtkWindow *main_window);
72
79void layer_selector_set_save_mapping_button(LayerSelector *selector, GtkWidget *button, GtkWindow *main_window);
80
86LayerSettings *layer_selector_export_rendered_layer_info(LayerSelector *selector);
87
93void layer_selector_force_sort(LayerSelector *selector, enum layer_selector_sort_algo sort_function);
94
100void layer_selector_select_all_layers(LayerSelector *layer_selector, gboolean select);
101
108void layer_selector_auto_color_layers(LayerSelector *layer_selector, ColorPalette *palette, double global_alpha);
109
119void layer_selector_auto_name_layers(LayerSelector *layer_selector, gboolean overwrite);
120
131gboolean layer_selector_contains_elements(LayerSelector *layer_selector);
132
138size_t layer_selector_num_of_named_elements(LayerSelector *layer_selector);
139
140G_END_DECLS
141
142#endif /* __LAYER_SELECTOR_H__ */
143
Class representing a color palette.
@ LAYER
Definition: gds-parser.c:82
G_BEGIN_DECLS G_DECLARE_FINAL_TYPE(LayerSelector, layer_selector, LAYER, SELECTOR, GObject)
void layer_selector_force_sort(LayerSelector *selector, enum layer_selector_sort_algo sort_function)
Force the layer selector list to be sorted according to sort_function.
void layer_selector_generate_layer_widgets(LayerSelector *selector, GList *libs)
Generate layer widgets in in the LayerSelector instance.
void layer_selector_set_load_mapping_button(LayerSelector *selector, GtkWidget *button, GtkWindow *main_window)
Supply button for loading the layer mapping.
void layer_selector_select_all_layers(LayerSelector *layer_selector, gboolean select)
Set 'export' value of all layers in the LayerSelector to the supplied select value.
LayerSettings * layer_selector_export_rendered_layer_info(LayerSelector *selector)
Get a list of all layers that shall be exported when rendering the cells.
void layer_selector_auto_name_layers(LayerSelector *layer_selector, gboolean overwrite)
Auto name all layers in the layer selector.
layer_selector_sort_algo
Defines how to sort the layer selector list box.
void layer_selector_set_save_mapping_button(LayerSelector *selector, GtkWidget *button, GtkWindow *main_window)
Supply button for saving the layer mapping.
LayerSelector * layer_selector_new(GtkListBox *list_box)
layer_selector_new
gboolean layer_selector_contains_elements(LayerSelector *layer_selector)
Check if the given layer selector contains layer elements.
size_t layer_selector_num_of_named_elements(LayerSelector *layer_selector)
Get number of layer elements that are named.
void layer_selector_auto_color_layers(LayerSelector *layer_selector, ColorPalette *palette, double global_alpha)
Apply colors from palette to all layers. Aditionally set alpha.
@ LAYER_SELECTOR_SORT_DOWN
@ LAYER_SELECTOR_SORT_UP
LayerSettings class header file.