From d7fa91b54c7dcce8dedbe32f37cf849f530f8864 Mon Sep 17 00:00:00 2001 From: louie Date: Mon, 28 Dec 2020 12:47:47 -0800 Subject: Cleaned up ifdefs --- windows/draw.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 windows/draw.c (limited to 'windows/draw.c') diff --git a/windows/draw.c b/windows/draw.c new file mode 100644 index 0000000..5a69b09 --- /dev/null +++ b/windows/draw.c @@ -0,0 +1,43 @@ +#include +#include + +#include "../draw.h" +#include "../entry.h" +#include "../group.h" + +void launch(){ + char *program = get_gprog(g[g_hover]); + char *flags = get_gflags(g[g_hover]); + char *path = get_epath(e[e_hover]); + bool quotes = get_gquotes(g[g_hover]); + char file[BUF_LEN]; + char params[BUF_LEN]; + + file[0] = '\0'; + + if(!(strcmp(program, "./"))){ + strcat(file, "\""); + strcat(file, path); + strcat(file, "\""); + ShellExecute(NULL, NULL, file, NULL, NULL, SW_SHOW); + } + + else{ + if(quotes) strcat(file, "\""); + strcat(file, program); + if(quotes) strcat(file, "\""); + + params[0] = '\0'; + if(flags[0] != '\0'){ + strcat(params, flags); + strcat(params, " "); + } + strcat(params, "\""); + strcat(params, path); + strcat(params, "\""); + + ShellExecute(NULL, NULL, file, params, NULL, SW_SHOW); + } + + return; +} -- cgit