2020-06-23 01:45:51 -04:00
|
|
|
/*
|
2022-07-04 04:16:03 -04:00
|
|
|
* Copyright (C) 2020-2022 Scoopta
|
2020-06-23 01:45:51 -04:00
|
|
|
* This file is part of Wofi
|
|
|
|
* Wofi is free software: you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
|
|
|
Wofi 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 Wofi. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef WIDGET_BUILDER_API_H
|
|
|
|
#define WIDGET_BUILDER_API_H
|
|
|
|
|
|
|
|
#include <stddef.h>
|
|
|
|
|
|
|
|
#include <wofi_api.h>
|
|
|
|
|
|
|
|
#include <gdk-pixbuf/gdk-pixbuf.h>
|
|
|
|
|
2022-07-04 04:16:03 -04:00
|
|
|
struct css_class {
|
|
|
|
char* class;
|
|
|
|
struct wl_list link;
|
|
|
|
};
|
|
|
|
|
2020-07-11 19:39:09 -04:00
|
|
|
struct widget_builder* wofi_widget_builder_init(struct mode* mode, size_t actions);
|
2020-06-23 01:45:51 -04:00
|
|
|
|
|
|
|
void wofi_widget_builder_set_search_text(struct widget_builder* builder, char* search_text);
|
|
|
|
|
|
|
|
void wofi_widget_builder_set_action(struct widget_builder* builder, char* action);
|
|
|
|
|
2020-07-28 19:18:44 -04:00
|
|
|
__attribute__((sentinel)) void wofi_widget_builder_insert_text(struct widget_builder* builder, const char* text, ...);
|
2020-06-23 01:45:51 -04:00
|
|
|
|
2022-07-04 04:16:03 -04:00
|
|
|
void wofi_widget_builder_insert_text_with_list(struct widget_builder* builder, const char* text, struct wl_list* classes);
|
|
|
|
|
2020-07-28 19:18:44 -04:00
|
|
|
__attribute__((sentinel)) void wofi_widget_builder_insert_image(struct widget_builder* builder, GdkPixbuf* pixbuf, ...);
|
2020-06-23 01:45:51 -04:00
|
|
|
|
2022-07-04 04:16:03 -04:00
|
|
|
void wofi_widget_builder_insert_image_with_list(struct widget_builder* builder, GdkPixbuf* pixbuf, struct wl_list* classes);
|
|
|
|
|
2020-06-23 01:45:51 -04:00
|
|
|
struct widget_builder* wofi_widget_builder_get_idx(struct widget_builder* builder, size_t idx);
|
|
|
|
|
|
|
|
struct widget* wofi_widget_builder_get_widget(struct widget_builder* builder);
|
|
|
|
|
2020-07-11 19:39:09 -04:00
|
|
|
void wofi_widget_builder_free(struct widget_builder* builder);
|
2020-06-30 00:23:36 -04:00
|
|
|
|
2020-06-23 01:45:51 -04:00
|
|
|
#endif
|