mirror of
https://github.com/Llewellynvdm/conky.git
synced 2024-12-25 12:10:03 +00:00
lua: outsource code
This commit is contained in:
parent
b6d1ff6c42
commit
9efa384bbc
32
src/conky.c
32
src/conky.c
@ -1278,42 +1278,20 @@ void generate_text_internal(char *p, int p_max_size,
|
|||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_LUA
|
#ifdef HAVE_LUA
|
||||||
OBJ(lua) {
|
OBJ(lua) {
|
||||||
char *str = llua_getstring(obj->data.s);
|
print_lua(obj, p, p_max_size);
|
||||||
if (str) {
|
|
||||||
snprintf(p, p_max_size, "%s", str);
|
|
||||||
free(str);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
OBJ(lua_parse) {
|
OBJ(lua_parse) {
|
||||||
char *str = llua_getstring(obj->data.s);
|
print_lua_parse(obj, p, p_max_size);
|
||||||
if (str) {
|
|
||||||
evaluate(str, p, p_max_size);
|
|
||||||
free(str);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
OBJ(lua_bar) {
|
OBJ(lua_bar) {
|
||||||
double per;
|
print_lua_bar(obj, p, p_max_size);
|
||||||
if (llua_getnumber(obj->data.s, &per)) {
|
|
||||||
#ifdef X11
|
|
||||||
if(output_methods & TO_X) {
|
|
||||||
new_bar(obj, p, (per/100.0 * 255));
|
|
||||||
} else
|
|
||||||
#endif /* X11 */
|
|
||||||
new_bar_in_shell(obj, p, p_max_size, per);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
#ifdef X11
|
#ifdef X11
|
||||||
OBJ(lua_graph) {
|
OBJ(lua_graph) {
|
||||||
double per;
|
print_lua_graph(obj, p, p_max_size);
|
||||||
if (llua_getnumber(obj->data.s, &per)) {
|
|
||||||
new_graph(obj, p, per);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
OBJ(lua_gauge) {
|
OBJ(lua_gauge) {
|
||||||
double per;
|
print_lua_gauge(obj, p, p_max_size);
|
||||||
if (llua_getnumber(obj->data.s, &per)) {
|
|
||||||
new_gauge(obj, p, (per/100.0 * 255));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
#endif /* X11 */
|
#endif /* X11 */
|
||||||
#endif /* HAVE_LUA */
|
#endif /* HAVE_LUA */
|
||||||
|
73
src/llua.c
73
src/llua.c
@ -158,7 +158,7 @@ void llua_load(const char *script)
|
|||||||
string: <function> [par1] [par2...]
|
string: <function> [par1] [par2...]
|
||||||
retc: the number of return values expected
|
retc: the number of return values expected
|
||||||
*/
|
*/
|
||||||
char *llua_do_call(const char *string, int retc)
|
static char *llua_do_call(const char *string, int retc)
|
||||||
{
|
{
|
||||||
static char func[64];
|
static char func[64];
|
||||||
int argc = 0;
|
int argc = 0;
|
||||||
@ -201,10 +201,11 @@ char *llua_do_call(const char *string, int retc)
|
|||||||
return func;
|
return func;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if 0
|
||||||
/*
|
/*
|
||||||
* same as llua_do_call() except passes everything after func as one arg.
|
* same as llua_do_call() except passes everything after func as one arg.
|
||||||
*/
|
*/
|
||||||
char *llua_do_read_call(const char *function, const char *arg, int retc)
|
static char *llua_do_read_call(const char *function, const char *arg, int retc)
|
||||||
{
|
{
|
||||||
static char func[64];
|
static char func[64];
|
||||||
snprintf(func, 64, "conky_%s", function);
|
snprintf(func, 64, "conky_%s", function);
|
||||||
@ -223,8 +224,10 @@ char *llua_do_read_call(const char *function, const char *arg, int retc)
|
|||||||
|
|
||||||
return func;
|
return func;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
char *llua_getstring(const char *args)
|
/* call a function with args, and return a string from it (must be free'd) */
|
||||||
|
static char *llua_getstring(const char *args)
|
||||||
{
|
{
|
||||||
char *func;
|
char *func;
|
||||||
char *ret = NULL;
|
char *ret = NULL;
|
||||||
@ -244,7 +247,9 @@ char *llua_getstring(const char *args)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *llua_getstring_read(const char *function, const char *arg)
|
#if 0
|
||||||
|
/* call a function with args, and return a string from it (must be free'd) */
|
||||||
|
static char *llua_getstring_read(const char *function, const char *arg)
|
||||||
{
|
{
|
||||||
char *func;
|
char *func;
|
||||||
char *ret = NULL;
|
char *ret = NULL;
|
||||||
@ -263,8 +268,10 @@ char *llua_getstring_read(const char *function, const char *arg)
|
|||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int llua_getnumber(const char *args, double *ret)
|
/* call a function with args, and put the result in ret */
|
||||||
|
static int llua_getnumber(const char *args, double *ret)
|
||||||
{
|
{
|
||||||
char *func;
|
char *func;
|
||||||
|
|
||||||
@ -521,3 +528,59 @@ void llua_update_info(struct information *i, double u_interval)
|
|||||||
lua_setglobal(lua_L, "conky_info");
|
lua_setglobal(lua_L, "conky_info");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void print_lua(struct text_object *obj, char *p, int p_max_size)
|
||||||
|
{
|
||||||
|
char *str = llua_getstring(obj->data.s);
|
||||||
|
if (str) {
|
||||||
|
snprintf(p, p_max_size, "%s", str);
|
||||||
|
free(str);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void print_lua_parse(struct text_object *obj, char *p, int p_max_size)
|
||||||
|
{
|
||||||
|
char *str = llua_getstring(obj->data.s);
|
||||||
|
if (str) {
|
||||||
|
evaluate(str, p, p_max_size);
|
||||||
|
free(str);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void print_lua_bar(struct text_object *obj, char *p, int p_max_size)
|
||||||
|
{
|
||||||
|
double per;
|
||||||
|
if (llua_getnumber(obj->data.s, &per)) {
|
||||||
|
#ifdef X11
|
||||||
|
if(output_methods & TO_X) {
|
||||||
|
new_bar(obj, p, (per/100.0 * 255));
|
||||||
|
} else
|
||||||
|
#endif /* X11 */
|
||||||
|
new_bar_in_shell(obj, p, p_max_size, per);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef X11
|
||||||
|
void print_lua_graph(struct text_object *obj, char *p, int p_max_size)
|
||||||
|
{
|
||||||
|
double per;
|
||||||
|
|
||||||
|
if (!p_max_size)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (llua_getnumber(obj->data.s, &per)) {
|
||||||
|
new_graph(obj, p, per);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void print_lua_gauge(struct text_object *obj, char *p, int p_max_size)
|
||||||
|
{
|
||||||
|
double per;
|
||||||
|
|
||||||
|
if (!p_max_size)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (llua_getnumber(obj->data.s, &per)) {
|
||||||
|
new_gauge(obj, p, (per/100.0 * 255));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* X11 */
|
||||||
|
14
src/llua.h
14
src/llua.h
@ -38,12 +38,6 @@
|
|||||||
|
|
||||||
/* load a lua script */
|
/* load a lua script */
|
||||||
void llua_load(const char *script);
|
void llua_load(const char *script);
|
||||||
/* call a function with args, and return a string from it (must be free'd) */
|
|
||||||
char *llua_getstring(const char *args);
|
|
||||||
/* call a function with args, and return a string from it (must be free'd) */
|
|
||||||
char *llua_getstring_read(const char *function, const char *arg);
|
|
||||||
/* call a function with args, and put the result in ret */
|
|
||||||
int llua_getnumber(const char *args, double *ret);
|
|
||||||
/* close lua stuff */
|
/* close lua stuff */
|
||||||
void llua_close(void);
|
void llua_close(void);
|
||||||
#ifdef HAVE_SYS_INOTIFY_H
|
#ifdef HAVE_SYS_INOTIFY_H
|
||||||
@ -71,4 +65,12 @@ void llua_update_window_table(int text_start_x, int text_start_y, int text_width
|
|||||||
void llua_setup_info(struct information *i, double u_interval);
|
void llua_setup_info(struct information *i, double u_interval);
|
||||||
void llua_update_info(struct information *i, double u_interval);
|
void llua_update_info(struct information *i, double u_interval);
|
||||||
|
|
||||||
|
void print_lua(struct text_object *, char *, int);
|
||||||
|
void print_lua_parse(struct text_object *, char *, int);
|
||||||
|
void print_lua_bar(struct text_object *, char *, int);
|
||||||
|
#ifdef X11
|
||||||
|
void print_lua_graph(struct text_object *, char *, int);
|
||||||
|
void print_lua_gauge(struct text_object *, char *, int);
|
||||||
|
#endif /* X11 */
|
||||||
|
|
||||||
#endif /* LUA_H_*/
|
#endif /* LUA_H_*/
|
||||||
|
Loading…
Reference in New Issue
Block a user