Port to xfconf

The internal XtmSettings object is retained so we don't have to refactor
everything, but the backend now uses Xfconf over the rc file.
This commit is contained in:
Simon Steinbeiss
2021-01-20 16:00:15 +01:00
committed by Simon Steinbeiß
parent 99c3deee8e
commit a5aeafc15f
7 changed files with 146 additions and 290 deletions

View File

@@ -16,6 +16,41 @@
#include <glib-object.h>
#include <xfconf/xfconf.h>
#define DEFAULT_WINDOW_HEIGHT 600
#define DEFAULT_WINDOW_WIDTH 400
#define CHANNEL "xfce4-taskmanager"
/* general settings */
#define SETTING_SHOW_STATUS_ICON "/show-status-icon"
#define SETTING_PROMPT_TERMINATE_TASK "/prompt-terminate-task"
#define SETTING_WINDOW_WIDTH "/window-width"
#define SETTING_WINDOW_HEIGHT "/window-height"
/* interface settings */
#define SETTING_SHOW_FILTER "/interface/show-filter"
#define SETTING_HANDLE_POSITION "/interface/handle-position"
#define SETTING_SHOW_LEGEND "/interface/show-legend"
#define SETTING_SHOW_ALL_PROCESSES "/interface/show-all-processes"
#define SETTING_SHOW_APPLICATION_ICONS "/interface/show-application-icons"
#define SETTING_FULL_COMMAND_LINE "/interface/full-command-line"
#define SETTING_MORE_PRECISION "/interface/more-precision"
#define SETTING_PROCESS_TREE "/interface/process-tree"
#define SETTING_REFRESH_RATE "/interface/refresh-rate"
/* column visibility */
#define SETTING_COLUMN_PID "/columns/column-pid"
#define SETTING_COLUMN_PPID "/columns/column-ppid"
#define SETTING_COLUMN_STATE "/columns/column-state"
#define SETTING_COLUMN_VSZ "/columns/column-vsz"
#define SETTING_COLUMN_RSS "/columns/column-rss"
#define SETTING_COLUMN_UID "/columns/column-uid"
#define SETTING_COLUMN_CPU "/columns/column-cpu"
#define SETTING_COLUMN_PRIORITY "/columns/column-priority"
#define XTM_TYPE_SETTINGS (xtm_settings_get_type ())
#define XTM_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XTM_TYPE_SETTINGS, XtmSettings))
#define XTM_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XTM_TYPE_SETTINGS, XtmSettingsClass))
@@ -25,7 +60,7 @@
typedef struct _XtmSettings XtmSettings;
void xtm_settings_save_settings (XtmSettings *settings);
void xtm_settings_bind_xfconf (XtmSettings *settings, XfconfChannel *channel);
GType xtm_settings_get_type (void);
XtmSettings * xtm_settings_get_default (void);