aboutsummaryrefslogtreecommitdiffstats
path: root/include/commands.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/commands.h')
-rw-r--r--include/commands.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/include/commands.h b/include/commands.h
index 1b4cd9ca..1e0a1452 100644
--- a/include/commands.h
+++ b/include/commands.h
@@ -1,22 +1,34 @@
1#ifndef _SWAY_COMMANDS_H 1#ifndef _SWAY_COMMANDS_H
2#define _SWAY_COMMANDS_H 2#define _SWAY_COMMANDS_H
3#include <stdbool.h> 3#include <stdbool.h>
4#include <json-c/json.h>
4#include "config.h" 5#include "config.h"
5 6
6 7
7enum cmd_status { 8enum cmd_status {
8 CMD_SUCCESS, 9 CMD_SUCCESS,
9 CMD_FAILURE, 10 CMD_FAILURE, // was or at least could be executed
10 CMD_INVALID, 11 CMD_INVALID, // unknown or parse error
11 CMD_DEFER, 12 CMD_DEFER,
12 // Config Blocks 13 // Config Blocks
13 CMD_BLOCK_END, 14 CMD_BLOCK_END,
14 CMD_BLOCK_MODE, 15 CMD_BLOCK_MODE,
15}; 16};
16 17
17enum cmd_status handle_command(char *command); 18struct cmd_results {
19 enum cmd_status status;
20
21 const char *input;
22 char *error;
23};
24
25struct cmd_results *handle_command(char *command);
18// Handles commands during config 26// Handles commands during config
19enum cmd_status config_command(char *command); 27struct cmd_results *config_command(char *command);
28
29struct cmd_results *cmd_results_new(enum cmd_status status, const char* input, const char *error, ...);
30void free_cmd_results(struct cmd_results *results);
31const char *cmd_results_to_json(struct cmd_results *results);
20 32
21void remove_view_from_scratchpad(); 33void remove_view_from_scratchpad();
22 34