1
0
mirror of https://github.com/Llewellynvdm/conky.git synced 2024-11-17 02:25:09 +00:00
conky/src/llua.h
Tin Švagelj 6adf6b9dd4
Cleanup build flags, global namespace and includes (#1841)
- Separated displays so they don't have to all be included in build even when the features are disabled.
- Removed weird linker magic for display init and replaced it with straightforward (and faster) template functions that behave the same.
  - Replaced `disabled_display_output` classes with log messages.
- Add explicit compiler errors when feature dependent headers get included where they shouldn't (wl, x11).
- Switch BUILD_MOUSE_EVENTS dependency from OWN_WINDOW to BUILD_X11.
- Other minor improvements to some existing code which shouldn't affect behavior.
- Improve documentation.
- Remove X11 from unrelated headers.
  - This reaches 0% unneeded X11 polution in the sources.
  - Reenabled parts of window_type which would work in Wayland.
  - Remove unneeded guards.
- Display files are now no longer compiled if their features are disabled.

Signed-off-by: Tin Švagelj <tin.svagelj@live.com>
2024-04-23 21:15:37 +00:00

76 lines
2.1 KiB
C++

/*
*
* Conky, a system monitor, based on torsmo
*
* Copyright (c) 2009 Toni Spets
* Copyright (c) 2005-2024 Brenden Matthews, Philip Kovacs, et. al.
* (see AUTHORS)
* All rights reserved.
*
* This program 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.
*
* 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 <http://www.gnu.org/licenses/>.
*
*/
#ifndef LUA_H_
#define LUA_H_
extern "C" {
#include <lauxlib.h>
#include <lua.h>
#include <lualib.h>
}
#include <config.h>
#ifdef BUILD_MOUSE_EVENTS
#include "mouse-events.h"
#endif /* BUILD_MOUSE_EVENTS */
#define LUAPREFIX "conky_"
#ifdef HAVE_SYS_INOTIFY_H
/* check our lua inotify status */
void llua_inotify_query(int wd, int mask);
#endif /* HAVE_SYS_INOTIFY_H */
void llua_startup_hook(void);
void llua_shutdown_hook(void);
#ifdef BUILD_GUI
void llua_draw_pre_hook(void);
void llua_draw_post_hook(void);
#ifdef BUILD_MOUSE_EVENTS
/**
Takes a mouse_event as argument.
Returns true if event was properly consumed, false otherwise.
*/
template <typename EventT>
bool llua_mouse_hook(const EventT &ev);
#endif /* BUILD_MOUSE_EVENTS */
void llua_setup_window_table(int text_start_x, int text_start_y, int text_width,
int text_height);
void llua_update_window_table(int text_start_x, int text_start_y,
int text_width, int text_height);
#endif /* BUILD_GUI */
void llua_setup_info(struct information *i, double u_interval);
void llua_update_info(struct information *i, double u_interval);
void print_lua(struct text_object *, char *, unsigned int);
void print_lua_parse(struct text_object *, char *, unsigned int);
double lua_barval(struct text_object *);
#endif /* LUA_H_*/