Remove imv_ prefix from struct imv_list
It's just bloat. No value.
This commit is contained in:
parent
9167c61b60
commit
57eb6a9168
|
@ -20,14 +20,14 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
|
||||||
struct command {
|
struct command {
|
||||||
char* command;
|
char* command;
|
||||||
void (*handler)(struct imv_list *args, const char *argstr, void *data);
|
void (*handler)(struct list *args, const char *argstr, void *data);
|
||||||
char* alias;
|
char* alias;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct imv_commands *imv_commands_create(void)
|
struct imv_commands *imv_commands_create(void)
|
||||||
{
|
{
|
||||||
struct imv_commands *cmds = malloc(sizeof(struct imv_commands));
|
struct imv_commands *cmds = malloc(sizeof(struct imv_commands));
|
||||||
cmds->command_list = imv_list_create();
|
cmds->command_list = list_create();
|
||||||
return cmds;
|
return cmds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,17 +41,17 @@ void imv_commands_free(struct imv_commands *cmds)
|
||||||
}
|
}
|
||||||
free(cmd);
|
free(cmd);
|
||||||
}
|
}
|
||||||
imv_list_free(cmds->command_list);
|
list_free(cmds->command_list);
|
||||||
free(cmds);
|
free(cmds);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_command_register(struct imv_commands *cmds, const char *command, void (*handler)(struct imv_list*, const char*, void*))
|
void imv_command_register(struct imv_commands *cmds, const char *command, void (*handler)(struct list*, const char*, void*))
|
||||||
{
|
{
|
||||||
struct command *cmd = malloc(sizeof(struct command));
|
struct command *cmd = malloc(sizeof(struct command));
|
||||||
cmd->command = strdup(command);
|
cmd->command = strdup(command);
|
||||||
cmd->handler = handler;
|
cmd->handler = handler;
|
||||||
cmd->alias = NULL;
|
cmd->alias = NULL;
|
||||||
imv_list_append(cmds->command_list, cmd);
|
list_append(cmds->command_list, cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_command_alias(struct imv_commands *cmds, const char *command, const char *alias)
|
void imv_command_alias(struct imv_commands *cmds, const char *command, const char *alias)
|
||||||
|
@ -60,12 +60,12 @@ void imv_command_alias(struct imv_commands *cmds, const char *command, const cha
|
||||||
cmd->command = strdup(command);
|
cmd->command = strdup(command);
|
||||||
cmd->handler = NULL;
|
cmd->handler = NULL;
|
||||||
cmd->alias = strdup(alias);
|
cmd->alias = strdup(alias);
|
||||||
imv_list_append(cmds->command_list, cmd);
|
list_append(cmds->command_list, cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
int imv_command_exec(struct imv_commands *cmds, const char *command, void *data)
|
int imv_command_exec(struct imv_commands *cmds, const char *command, void *data)
|
||||||
{
|
{
|
||||||
struct imv_list *args = imv_split_string(command, ' ');
|
struct list *args = list_from_string(command, ' ');
|
||||||
int ret = 1;
|
int ret = 1;
|
||||||
|
|
||||||
if(args->len > 0) {
|
if(args->len > 0) {
|
||||||
|
@ -85,7 +85,7 @@ int imv_command_exec(struct imv_commands *cmds, const char *command, void *data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
imv_list_deep_free(args);
|
list_deep_free(args);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -18,15 +18,15 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#ifndef COMMANDS_H
|
#ifndef COMMANDS_H
|
||||||
#define COMMANDS_H
|
#define COMMANDS_H
|
||||||
|
|
||||||
struct imv_list;
|
struct list;
|
||||||
|
|
||||||
struct imv_commands {
|
struct imv_commands {
|
||||||
struct imv_list *command_list;
|
struct list *command_list;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct imv_commands *imv_commands_create(void);
|
struct imv_commands *imv_commands_create(void);
|
||||||
void imv_commands_free(struct imv_commands *cmds);
|
void imv_commands_free(struct imv_commands *cmds);
|
||||||
void imv_command_register(struct imv_commands *cmds, const char *command, void (*handler)(struct imv_list*, const char*, void*));
|
void imv_command_register(struct imv_commands *cmds, const char *command, void (*handler)(struct list*, const char*, void*));
|
||||||
void imv_command_alias(struct imv_commands *cmds, const char *command, const char *alias);
|
void imv_command_alias(struct imv_commands *cmds, const char *command, const char *alias);
|
||||||
int imv_command_exec(struct imv_commands *cmds, const char *command, void *data);
|
int imv_command_exec(struct imv_commands *cmds, const char *command, void *data);
|
||||||
|
|
||||||
|
|
36
src/imv.c
36
src/imv.c
|
@ -98,15 +98,15 @@ enum config_section {
|
||||||
CFG_BINDS
|
CFG_BINDS
|
||||||
};
|
};
|
||||||
|
|
||||||
void command_quit(struct imv_list *args, const char *argstr, void *data);
|
void command_quit(struct list *args, const char *argstr, void *data);
|
||||||
void command_pan(struct imv_list *args, const char *argstr, void *data);
|
void command_pan(struct list *args, const char *argstr, void *data);
|
||||||
void command_select_rel(struct imv_list *args, const char *argstr, void *data);
|
void command_select_rel(struct list *args, const char *argstr, void *data);
|
||||||
void command_select_abs(struct imv_list *args, const char *argstr, void *data);
|
void command_select_abs(struct list *args, const char *argstr, void *data);
|
||||||
void command_zoom(struct imv_list *args, const char *argstr, void *data);
|
void command_zoom(struct list *args, const char *argstr, void *data);
|
||||||
void command_remove(struct imv_list *args, const char *argstr, void *data);
|
void command_remove(struct list *args, const char *argstr, void *data);
|
||||||
void command_fullscreen(struct imv_list *args, const char *argstr, void *data);
|
void command_fullscreen(struct list *args, const char *argstr, void *data);
|
||||||
void command_overlay(struct imv_list *args, const char *argstr, void *data);
|
void command_overlay(struct list *args, const char *argstr, void *data);
|
||||||
void command_exec(struct imv_list *args, const char *argstr, void *data);
|
void command_exec(struct list *args, const char *argstr, void *data);
|
||||||
|
|
||||||
static bool setup_window(struct imv *imv);
|
static bool setup_window(struct imv *imv);
|
||||||
static void handle_event(struct imv *imv, SDL_Event *event);
|
static void handle_event(struct imv *imv, SDL_Event *event);
|
||||||
|
@ -966,7 +966,7 @@ bool imv_load_config(struct imv *imv)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_quit(struct imv_list *args, const char *argstr, void *data)
|
void command_quit(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
|
@ -974,7 +974,7 @@ void command_quit(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv->quit = true;
|
imv->quit = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_pan(struct imv_list *args, const char *argstr, void *data)
|
void command_pan(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
struct imv *imv = data;
|
struct imv *imv = data;
|
||||||
|
@ -988,7 +988,7 @@ void command_pan(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv_viewport_move(imv->view, x, y, imv->texture);
|
imv_viewport_move(imv->view, x, y, imv->texture);
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_select_rel(struct imv_list *args, const char *argstr, void *data)
|
void command_select_rel(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
struct imv *imv = data;
|
struct imv *imv = data;
|
||||||
|
@ -1002,21 +1002,21 @@ void command_select_rel(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv->slideshow_time_elapsed = 0;
|
imv->slideshow_time_elapsed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_select_abs(struct imv_list *args, const char *argstr, void *data)
|
void command_select_abs(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
(void)data;
|
(void)data;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_zoom(struct imv_list *args, const char *argstr, void *data)
|
void command_zoom(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
(void)data;
|
(void)data;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_remove(struct imv_list *args, const char *argstr, void *data)
|
void command_remove(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
|
@ -1028,7 +1028,7 @@ void command_remove(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv->slideshow_time_elapsed = 0;
|
imv->slideshow_time_elapsed = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_fullscreen(struct imv_list *args, const char *argstr, void *data)
|
void command_fullscreen(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
|
@ -1036,7 +1036,7 @@ void command_fullscreen(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv_viewport_toggle_fullscreen(imv->view);
|
imv_viewport_toggle_fullscreen(imv->view);
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_overlay(struct imv_list *args, const char *argstr, void *data)
|
void command_overlay(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
(void)argstr;
|
(void)argstr;
|
||||||
|
@ -1045,7 +1045,7 @@ void command_overlay(struct imv_list *args, const char *argstr, void *data)
|
||||||
imv->need_redraw = true;
|
imv->need_redraw = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void command_exec(struct imv_list *args, const char *argstr, void *data)
|
void command_exec(struct list *args, const char *argstr, void *data)
|
||||||
{
|
{
|
||||||
(void)args;
|
(void)args;
|
||||||
struct imv *imv = data;
|
struct imv *imv = data;
|
||||||
|
|
28
src/list.c
28
src/list.c
|
@ -17,35 +17,35 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
|
||||||
#include "list.h"
|
#include "list.h"
|
||||||
|
|
||||||
struct imv_list *imv_list_create(void)
|
struct list *list_create(void)
|
||||||
{
|
{
|
||||||
struct imv_list *list = malloc(sizeof(struct imv_list));
|
struct list *list = malloc(sizeof(struct list));
|
||||||
list->len = 0;
|
list->len = 0;
|
||||||
list->cap = 64;
|
list->cap = 64;
|
||||||
list->items = malloc(sizeof(void*) * list->cap);
|
list->items = malloc(sizeof(void*) * list->cap);
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_free(struct imv_list *list)
|
void list_free(struct list *list)
|
||||||
{
|
{
|
||||||
free(list->items);
|
free(list->items);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_deep_free(struct imv_list *list)
|
void list_deep_free(struct list *list)
|
||||||
{
|
{
|
||||||
for(size_t i = 0; i < list->len; ++i) {
|
for(size_t i = 0; i < list->len; ++i) {
|
||||||
free(list->items[i]);
|
free(list->items[i]);
|
||||||
}
|
}
|
||||||
imv_list_free(list);
|
list_free(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_append(struct imv_list *list, void *item)
|
void list_append(struct list *list, void *item)
|
||||||
{
|
{
|
||||||
imv_list_grow(list, list->len + 1);
|
list_grow(list, list->len + 1);
|
||||||
list->items[list->len++] = item;
|
list->items[list->len++] = item;
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_grow(struct imv_list *list, size_t min_size)
|
void list_grow(struct list *list, size_t min_size)
|
||||||
{
|
{
|
||||||
if(list->cap >= min_size) {
|
if(list->cap >= min_size) {
|
||||||
return;
|
return;
|
||||||
|
@ -58,7 +58,7 @@ void imv_list_grow(struct imv_list *list, size_t min_size)
|
||||||
list->items = realloc(list->items, sizeof(void*) * list->cap);
|
list->items = realloc(list->items, sizeof(void*) * list->cap);
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_remove(struct imv_list *list, size_t index)
|
void list_remove(struct list *list, size_t index)
|
||||||
{
|
{
|
||||||
if(index >= list->len) {
|
if(index >= list->len) {
|
||||||
return;
|
return;
|
||||||
|
@ -69,9 +69,9 @@ void imv_list_remove(struct imv_list *list, size_t index)
|
||||||
list->len -= 1;
|
list->len -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void imv_list_insert(struct imv_list *list, size_t index, void *item)
|
void list_insert(struct list *list, size_t index, void *item)
|
||||||
{
|
{
|
||||||
imv_list_grow(list, list->len + 1);
|
list_grow(list, list->len + 1);
|
||||||
|
|
||||||
if(index > list->len) {
|
if(index > list->len) {
|
||||||
index = list->len;
|
index = list->len;
|
||||||
|
@ -82,9 +82,9 @@ void imv_list_insert(struct imv_list *list, size_t index, void *item)
|
||||||
list->len += 1;
|
list->len += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct imv_list *imv_split_string(const char *string, char delim)
|
struct list *list_from_string(const char *string, char delim)
|
||||||
{
|
{
|
||||||
struct imv_list *list = imv_list_create();
|
struct list *list = list_create();
|
||||||
|
|
||||||
const char *base = string;
|
const char *base = string;
|
||||||
|
|
||||||
|
@ -100,7 +100,7 @@ struct imv_list *imv_split_string(const char *string, char delim)
|
||||||
|
|
||||||
if(*base && base != end) {
|
if(*base && base != end) {
|
||||||
char *item = strndup(base, end - base);
|
char *item = strndup(base, end - base);
|
||||||
imv_list_append(list, item);
|
list_append(list, item);
|
||||||
base = end;
|
base = end;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
18
src/list.h
18
src/list.h
|
@ -21,27 +21,27 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
struct imv_list {
|
struct list {
|
||||||
size_t len;
|
size_t len;
|
||||||
size_t cap;
|
size_t cap;
|
||||||
void **items;
|
void **items;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct imv_list *imv_list_create(void);
|
struct list *list_create(void);
|
||||||
|
|
||||||
void imv_list_free(struct imv_list *list);
|
void list_free(struct list *list);
|
||||||
|
|
||||||
void imv_list_deep_free(struct imv_list *list);
|
void list_deep_free(struct list *list);
|
||||||
|
|
||||||
void imv_list_append(struct imv_list *list, void *item);
|
void list_append(struct list *list, void *item);
|
||||||
|
|
||||||
void imv_list_grow(struct imv_list *list, size_t min_size);
|
void list_grow(struct list *list, size_t min_size);
|
||||||
|
|
||||||
void imv_list_remove(struct imv_list *list, size_t index);
|
void list_remove(struct list *list, size_t index);
|
||||||
|
|
||||||
void imv_list_insert(struct imv_list *list, size_t index, void *item);
|
void list_insert(struct list *list, size_t index, void *item);
|
||||||
|
|
||||||
struct imv_list *imv_split_string(const char *string, char delim);
|
struct list *list_from_string(const char *string, char delim);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
14
test/list.c
14
test/list.c
|
@ -9,15 +9,15 @@ static void test_split_string(void **state)
|
||||||
{
|
{
|
||||||
(void)state;
|
(void)state;
|
||||||
|
|
||||||
struct imv_list *list;
|
struct list *list;
|
||||||
|
|
||||||
list = imv_split_string("word", ' ');
|
list = list_from_string("word", ' ');
|
||||||
assert_true(list);
|
assert_true(list);
|
||||||
assert_true(list->len == 1);
|
assert_true(list->len == 1);
|
||||||
assert_false(strcmp(list->items[0], "word"));
|
assert_false(strcmp(list->items[0], "word"));
|
||||||
imv_list_deep_free(list);
|
list_deep_free(list);
|
||||||
|
|
||||||
list = imv_split_string("hello world this is a test", ' ');
|
list = list_from_string("hello world this is a test", ' ');
|
||||||
assert_true(list);
|
assert_true(list);
|
||||||
assert_true(list->len == 6);
|
assert_true(list->len == 6);
|
||||||
assert_false(strcmp(list->items[0], "hello"));
|
assert_false(strcmp(list->items[0], "hello"));
|
||||||
|
@ -26,15 +26,15 @@ static void test_split_string(void **state)
|
||||||
assert_false(strcmp(list->items[3], "is"));
|
assert_false(strcmp(list->items[3], "is"));
|
||||||
assert_false(strcmp(list->items[4], "a"));
|
assert_false(strcmp(list->items[4], "a"));
|
||||||
assert_false(strcmp(list->items[5], "test"));
|
assert_false(strcmp(list->items[5], "test"));
|
||||||
imv_list_deep_free(list);
|
list_deep_free(list);
|
||||||
|
|
||||||
list = imv_split_string(" odd whitespace test ", ' ');
|
list = list_from_string(" odd whitespace test ", ' ');
|
||||||
assert_true(list);
|
assert_true(list);
|
||||||
assert_true(list->len == 3);
|
assert_true(list->len == 3);
|
||||||
assert_false(strcmp(list->items[0], "odd"));
|
assert_false(strcmp(list->items[0], "odd"));
|
||||||
assert_false(strcmp(list->items[1], "whitespace"));
|
assert_false(strcmp(list->items[1], "whitespace"));
|
||||||
assert_false(strcmp(list->items[2], "test"));
|
assert_false(strcmp(list->items[2], "test"));
|
||||||
imv_list_deep_free(list);
|
list_deep_free(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
|
|
Loading…
Reference in a new issue