#ifndef EDITORS_H
#define EDITORS_H
+#include <glib.h>
+#include <gtk/gtk.h>
+
+struct FileData;
enum EditorFlags {
EDITOR_KEEP_FS = 0x00000001,
EDITOR_ERROR_MASK = ~0xffff,
};
-struct _EditorDescription {
+struct EditorDescription {
gchar *key; /**< desktop file name, not including path, including extension */
gchar *name; /**< Name, localized name presented to user */
gchar *icon; /**< Icon */
gboolean disabled; /**< display disabled by user */
};
-#define EDITOR_ERRORS(flags) ((flags) & EDITOR_ERROR_MASK)
-#define EDITOR_ERRORS_BUT_SKIPPED(flags) (!!(((flags) & EDITOR_ERROR_MASK) && !((flags) & EDITOR_ERROR_SKIPPED)))
+inline gint editor_errors(EditorFlags flags) { return flags & EDITOR_ERROR_MASK; }
+inline gboolean editor_errors_but_skipped(EditorFlags flags) { return !!(editor_errors(flags) && !(flags & EDITOR_ERROR_SKIPPED)); }
/**
extern GHashTable *editors;
-void editor_table_finish(void);
-void editor_table_clear(void);
-GList *editor_get_desktop_files(void);
+void editor_table_finish();
+void editor_table_clear();
+GList *editor_get_desktop_files();
gboolean editor_read_desktop_file(const gchar *path);
-GList *editor_list_get(void);
+GList *editor_list_get();
/**
gboolean editor_no_param(const gchar *key);
const gchar *editor_get_error_str(EditorFlags flags);
-const gchar *editor_get_name(const gchar *key);
-
gboolean is_valid_editor_command(const gchar *key);
gboolean editor_blocks_file(const gchar *key);