source: appstream-generator/build/girepo/appstream/Category.d

Last change on this file was 4841, checked in by Juanma, 3 years ago

Initial release

File size: 5.5 KB
Line 
1/*
2 * Licensed under the GNU Lesser General Public License Version 3
3 *
4 * This library is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation, either version 3 of the license, or
7 * (at your option) any later version.
8 *
9 * This software is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with this library.  If not, see <http://www.gnu.org/licenses/>.
16 */
17
18// generated automatically - do not change
19
20
21module appstream.Category;
22
23private import appstream.Component;
24private import gi.appstream;
25public  import gi.appstreamtypes;
26private import glib.ConstructionException;
27private import glib.PtrArray;
28private import glib.Str;
29private import gobject.ObjectG;
30
31
32/** */
33public class Category : ObjectG
34{
35        /** the main Gtk struct */
36        protected AsCategory* asCategory;
37
38        /** Get the main Gtk struct */
39        public AsCategory* getCategoryStruct()
40        {
41                return asCategory;
42        }
43
44        /** the main Gtk struct as a void* */
45        protected override void* getStruct()
46        {
47                return cast(void*)asCategory;
48        }
49
50        protected override void setStruct(GObject* obj)
51        {
52                asCategory = cast(AsCategory*)obj;
53                super.setStruct(obj);
54        }
55
56        /**
57         * Sets our main struct and passes it to the parent class.
58         */
59        public this (AsCategory* asCategory, bool ownedRef = false)
60        {
61                this.asCategory = asCategory;
62                super(cast(GObject*)asCategory, ownedRef);
63        }
64
65
66        /** */
67        public static GType getType()
68        {
69                return as_category_get_type();
70        }
71
72        /**
73         * Creates a new #AsCategory.
74         *
75         * Returns: a new #AsCategory
76         *
77         * Throws: ConstructionException GTK+ fails to create the object.
78         */
79        public this()
80        {
81                auto p = as_category_new();
82               
83                if(p is null)
84                {
85                        throw new ConstructionException("null returned by new");
86                }
87               
88                this(cast(AsCategory*) p, true);
89        }
90
91        /**
92         * Add a subcategory to this category.
93         *
94         * Params:
95         *     subcat = A subcategory to add.
96         */
97        public void addChild(Category subcat)
98        {
99                as_category_add_child(asCategory, (subcat is null) ? null : subcat.getCategoryStruct());
100        }
101
102        /**
103         * Add a component to this category.
104         *
105         * Params:
106         *     cpt = The #AsComponent to add.
107         */
108        public void addComponent(Component cpt)
109        {
110                as_category_add_component(asCategory, (cpt is null) ? null : cpt.getComponentStruct());
111        }
112
113        /**
114         * Add a desktop-file category to this #AsCategory.
115         *
116         * Params:
117         *     groupName = A subcategory to add.
118         */
119        public void addDesktopGroup(string groupName)
120        {
121                as_category_add_desktop_group(asCategory, Str.toStringz(groupName));
122        }
123
124        /**
125         * Returns: A list of subcategories.
126         */
127        public PtrArray getChildren()
128        {
129                auto p = as_category_get_children(asCategory);
130               
131                if(p is null)
132                {
133                        return null;
134                }
135               
136                return new PtrArray(cast(GPtrArray*) p);
137        }
138
139        /**
140         * Get list of components which have been sorted into this category.
141         *
142         * Returns: List of #AsCategory
143         */
144        public PtrArray getComponents()
145        {
146                auto p = as_category_get_components(asCategory);
147               
148                if(p is null)
149                {
150                        return null;
151                }
152               
153                return new PtrArray(cast(GPtrArray*) p);
154        }
155
156        /**
157         * Returns: A list of desktop-file categories.
158         */
159        public PtrArray getDesktopGroups()
160        {
161                auto p = as_category_get_desktop_groups(asCategory);
162               
163                if(p is null)
164                {
165                        return null;
166                }
167               
168                return new PtrArray(cast(GPtrArray*) p);
169        }
170
171        /**
172         * Get the stock icon name for this category.
173         */
174        public string getIcon()
175        {
176                return Str.toString(as_category_get_icon(asCategory));
177        }
178
179        /**
180         * Get the ID of this category.
181         */
182        public string getId()
183        {
184                return Str.toString(as_category_get_id(asCategory));
185        }
186
187        /**
188         * Get the name of this category.
189         */
190        public string getName()
191        {
192                return Str.toString(as_category_get_name(asCategory));
193        }
194
195        /**
196         * Get the summary (short description) of this category.
197         */
198        public string getSummary()
199        {
200                return Str.toString(as_category_get_summary(asCategory));
201        }
202
203        /**
204         * Test for sub-categories.
205         *
206         * Returns: %TRUE if this category has any subcategory
207         */
208        public bool hasChildren()
209        {
210                return as_category_has_children(asCategory) != 0;
211        }
212
213        /**
214         * Check if the exact #AsComponent @cpt is a member of this
215         * category already.
216         *
217         * Params:
218         *     cpt = The #AsComponent to look for.
219         *
220         * Returns: %TRUE if the component is present.
221         */
222        public bool hasComponent(Component cpt)
223        {
224                return as_category_has_component(asCategory, (cpt is null) ? null : cpt.getComponentStruct()) != 0;
225        }
226
227        /**
228         * Drop a subcategory from this #AsCategory.
229         *
230         * Params:
231         *     subcat = A subcategory to remove.
232         */
233        public void removeChild(Category subcat)
234        {
235                as_category_remove_child(asCategory, (subcat is null) ? null : subcat.getCategoryStruct());
236        }
237
238        /**
239         * Set the stock icon name for this category.
240         */
241        public void setIcon(string value)
242        {
243                as_category_set_icon(asCategory, Str.toStringz(value));
244        }
245
246        /**
247         * Set the ID of this category.
248         */
249        public void setId(string id)
250        {
251                as_category_set_id(asCategory, Str.toStringz(id));
252        }
253
254        /**
255         * Set the name of this category.
256         */
257        public void setName(string value)
258        {
259                as_category_set_name(asCategory, Str.toStringz(value));
260        }
261
262        /**
263         * Get the summary (short description) of this category.
264         *
265         * Params:
266         *     value = A new short summary of this category.
267         */
268        public void setSummary(string value)
269        {
270                as_category_set_summary(asCategory, Str.toStringz(value));
271        }
272}
Note: See TracBrowser for help on using the repository browser.