edelib
2.1.0
|
Classes | |
class | AnimateBox |
Animate list of images inside box. More... | |
class | ColorDb |
X11 color database. More... | |
class | Config |
A config file reader. More... | |
class | TimeZone |
A class for getting time from desired time zone. More... | |
class | Date |
A class for date manipulation. More... | |
class | Time |
A class for time manipulation. More... | |
class | DesktopFile |
.desktop file reader and writer More... | |
class | DirWatch |
Directory changes notifier. More... | |
class | EdbusConnection |
D-Bus connection and data sender. More... | |
class | EdbusContainer |
Abstract container for D-Bus containers. More... | |
class | EdbusData |
Class for representing D-Bus data types. More... | |
class | EdbusVariant |
Represents D-Bus variant. More... | |
class | EdbusDictEntry |
An entry in EdbusDict. More... | |
class | EdbusDict |
Dictionary container for D-Bus types. More... | |
class | EdbusError |
A class representing D-Bus error. More... | |
class | EdbusList |
A class representing D-Bus struct and array. More... | |
class | EdbusMessage |
Data transporter for D-Bus. More... | |
class | EdbusObjectPath |
Represents D-Bus object path. More... | |
class | ApplicationBootstrap |
EDE application bootstrapper. More... | |
class | ExpandableGroup |
A group with applied layout on childs. More... | |
class | File |
A system file io stream. More... | |
class | FontInfo |
Base structure for storing font information; used by FontCache. More... | |
class | FontCache |
Allow readable font names and cache their access. More... | |
class | IconLoader |
Loads icons with IconTheme. More... | |
class | IconTheme |
Finds named icon according to the given theme. More... | |
class | list |
Linked list class. More... | |
class | MenuBar |
Menu bar. More... | |
class | MenuBase |
Menu base class. More... | |
class | MenuButton |
Button with attached menu. More... | |
class | MenuItem |
The item in menu list. More... | |
class | MenuTooltip |
Tooltip support inside menus. More... | |
class | MessageBox |
Standard dialog. More... | |
class | MimeType |
Mime handling class. More... | |
class | PTY |
emulate pty api More... | |
class | PtyProcess |
Synchronous communication with tty programs. More... | |
class | RegexMatch |
RegexMatch class. More... | |
class | Regex |
Regex class. More... | |
class | Resource |
Resource loader and saver. More... | |
class | SchemeEditor |
Editing component for Scheme language. More... | |
class | SevenSeg |
Digital number widget. More... | |
class | SipcServer |
Simple IPC server. More... | |
class | SipcClient |
Simple IPC client. More... | |
class | String |
A (relatively simple) string implementation. More... | |
class | TableBase |
A base class for table widgets. More... | |
class | TempFile |
Temporary file class. More... | |
class | Theme |
Theming engine for widgets. More... | |
class | ThemeLoader |
Themes loader. More... | |
class | Window |
Window class. More... | |
class | XSettingsClient |
Client part of XSETTINGS protocol. More... | |
class | XSettingsColor |
Color data for XSETTINGS. More... | |
class | XSettingsSetting |
Structure for tracking XSETTINGS values. More... | |
class | XSettingsList |
List internaly used by XSETTINGS classes. More... | |
class | XSettingsData |
Main data shared between client and manager. More... | |
class | XSettingsManager |
Manager part of XSETTINGS protocol. More... | |
Typedefs | |
typedef int(* | EdbusCallback )(const EdbusMessage *, void *) |
typedef void(* | NetwmCallback )(int action, Window xid, void *data) |
typedef void(* | SipcCallback )(const char *, void *) |
Functions | |
unsigned int | color_rgb_to_fltk (unsigned char r, unsigned char g, unsigned char b) |
void | color_fltk_to_rgb (unsigned int color, unsigned char &r, unsigned char &g, unsigned char &b) |
unsigned int | color_html_to_fltk (const char *col) |
void | color_fltk_to_html (unsigned int color, char *buf) |
void | color_rgb_to_html (unsigned char r, unsigned char g, unsigned char b, char *buf) |
void | color_html_to_rgb (const char *buf, unsigned char &r, unsigned char &g, unsigned char &b) |
bool | dir_exists (const char *name) |
bool | dir_readable (const char *name) |
bool | dir_writeable (const char *name) |
bool | dir_create (const char *name, int perm=0777) |
bool | dir_create_with_parents (const char *name, int perm=0777) |
bool | dir_remove (const char *name) |
bool | dir_rename (const char *from, const char *to) |
bool | dir_empty (const char *name) |
String | dir_home (void) |
String | dir_current (void) |
bool | dir_list (const char *dir, list< String > &lst, bool full_path=false, bool show_hidden=false, bool show_dots=false) |
EdbusList & | operator<< (EdbusList &lst, const EdbusData &val) |
EdbusMessage & | operator<< (EdbusMessage &m, const EdbusData &val) |
EdbusObjectPath & | operator<< (EdbusObjectPath &p, const char *el) |
bool | file_test (const char *path, unsigned int flags) |
bool | font_cache_find (const char *face, Fl_Font &f, int &s, Fl_Font df=FL_HELVETICA, int ds=12) |
int | font_chooser (const char *name, const char *family, int &retsize, const char *default_name=0, int default_size=0) |
void | foreign_callback_add (Fl_Window *win, const char *id, void(*cb)(Fl_Window *, void *), void *data=0) |
void | foreign_callback_remove (void(*cb)(Fl_Window *, void *)) |
void | foreign_callback_call (const char *id) |
template<typename T , typename F > | |
unsigned int | filter (const F &func, const T &container, T &ret) |
template<typename T , typename F > | |
void | map (F &func, const T &container, T &ret) |
template<typename T , typename R , typename F > | |
void | reduce (F &func, const T &container, R &ret) |
template<typename T , typename F > | |
void | for_each (const F &func, const T &container) |
template<typename T , typename F > | |
void | for_each (const F &func, const T &container, void *p) |
String | icon_chooser (const char *dir) |
String | icon_chooser (IconSizes sz, IconContext ctx=ICON_CONTEXT_ANY, bool always_full_path=false, bool *outside_theme_ret=((void *) 0)) |
void | listener_add_fd (int fd, int when, void(*cb)(int, void *), void *arg=0) |
void | listener_add_fd (int fd, void(*cb)(int, void *), void *arg=0) |
void | listener_remove_fd (int fd, int when) |
void | listener_remove_fd (int fd) |
double | listener_wait (double t) |
int | listener_wait (void) |
void | clear_dialog_icons (void) |
void | netwm_callback_add (NetwmCallback cb, void *data=0) |
void | netwm_callback_remove (NetwmCallback cb) |
bool | netwm_workarea_get_size (int &x, int &y, int &w, int &h) |
int | netwm_workspace_get_count (void) |
void | netwm_workspace_change (int n) |
int | netwm_workspace_get_current (void) |
int | netwm_workspace_get_names (char **&names) |
void | netwm_workspace_free_names (char **names) |
void | netwm_window_set_type (Window win, int t) |
int | netwm_window_get_type (Window win) |
void | netwm_window_set_strut (Window win, int left, int right, int top, int bottom) |
void | netwm_window_set_strut_partial (Window win, int sizes[12]) |
void | netwm_window_remove_strut (Window win) |
void | netwm_window_remove_strut_partial (Window win) |
int | netwm_window_get_all_mapped (Window **windows) |
int | netwm_window_get_workspace (Window win) |
int | netwm_window_is_manageable (Window win) |
char * | netwm_window_get_title (Window win) |
Fl_RGB_Image * | netwm_window_get_icon (Window win, unsigned int requested_width=0) |
Window | netwm_window_get_active (void) |
void | netwm_window_set_active (Window win, int source=0) |
void | netwm_window_maximize (Window win) |
void | netwm_window_close (Window win) |
void | wm_window_ede_restore (Window win) |
void | netwm_window_set_state (Window win, NetwmStateValue val, NetwmStateAction action) |
bool | netwm_window_get_all_states (Window win, list< NetwmStateValue > &ret) |
bool | netwm_window_have_state (Window win, NetwmStateValue val) |
WmStateValue | wm_window_get_state (Window win) |
void | wm_window_set_state (Window win, WmStateValue state) |
char * | nls_locale_to_c (void) |
void | nls_locale_from_c (char *old) |
void | nls_support_init (const char *appname, const char *dir) |
int | run_sync (const char *fmt,...) |
int | run_async (const char *fmt,...) |
int | run_async_with_pid (int *child_pid, const char *fmt,...) |
char * | str_trimleft (char *str) |
char * | str_trimright (char *str) |
char * | str_trim (char *str) |
unsigned char * | str_tolower (unsigned char *str) |
unsigned char * | str_toupper (unsigned char *str) |
bool | str_ends (const char *str, const char *test) |
unsigned int | str_hash (const char *str, unsigned int len=0) |
template<typename Container > | |
void | stringtok (Container &c, const String &str, const char *ws=" \t\n") |
String | user_config_dir (void) |
String | user_data_dir (void) |
String | user_cache_dir (void) |
int | system_config_dirs (list< String > &lst) |
int | system_data_dirs (list< String > &lst) |
String | build_filename (const char *p1, const char *p2=((void *) 0), const char *p3=((void *) 0)) |
void | window_xid_create (Fl_Window *win, void(*before_map_func)(Fl_Window *)=((void *) 0), int background_pixel=-1) |
void | window_center_on_screen (Fl_Window *win) |
bool | xsettings_list_add (XSettingsList **list, XSettingsSetting *setting) |
bool | xsettings_list_remove (XSettingsList **list, const char *name) |
XSettingsSetting * | xsettings_list_find (XSettingsList *list, const char *name) |
void | xsettings_list_free (XSettingsList *list) |
XSettingsSetting * | xsettings_setting_copy (XSettingsSetting *setting) |
void | xsettings_setting_free (XSettingsSetting *setting) |
bool | xsettings_setting_equal (XSettingsSetting *s1, XSettingsSetting *s2) |
int | xsettings_setting_len (const XSettingsSetting *setting) |
char | xsettings_byte_order (void) |
XSettingsList * | xsettings_decode (unsigned char *data, int len, unsigned long *serial) |
void | xsettings_encode (const XSettingsSetting *setting, XSettingsBuffer *buffer) |
This is a main namespace where all edelib components laid. Also namespace usage can be optional, and disabled during compilation phase.
typedef void(* SipcCallback)(const char *, void *) |
A callback type for SipcServer message callbacks
anonymous enum |
anonymous enum |
enum ConfigErrors |
Error codes from Config class.
enum DateType |
Types of date settable via Date::set()
Enumerator | |
---|---|
DATE_LOCAL |
use local date |
DATE_UTC |
use UTC date |
enum DesktopFileErrors |
Error codes from DesktopFile class.
Enumerator | |
---|---|
DESK_FILE_SUCCESS |
successful operation |
DESK_FILE_EMPTY |
file not loaded |
DESK_FILE_ERR_FILE |
trouble accessing config file or directory |
DESK_FILE_ERR_BAD |
malformed file, or not .desktop file |
enum DesktopFileType |
Reported file type from DesktopFile::type()
Enumerator | |
---|---|
DESK_FILE_TYPE_UNKNOWN |
Unknown type (Type key) |
DESK_FILE_TYPE_APPLICATION |
Application type. |
DESK_FILE_TYPE_LINK |
Link type. |
DESK_FILE_TYPE_DIRECTORY |
Directory type. |
enum DirWatchFlags |
Flags telling to DirWatch what changes to monitor.
enum DirWatchNotifier |
Notifier type used by DirWatch.
Enumerator | |
---|---|
DW_NONE |
None notifier; watching disabled. |
DW_INOTIFY |
inotify (linux kernel >= 2.6.13) |
DW_FAM |
FAM/gamin. |
enum DirWatchReportFlags |
enum FileErrors |
Error codes returned by File class.
Enumerator | |
---|---|
FILE_SUCCESS |
successful operation |
FILE_EACCESS |
permission denied |
FILE_ENOENT |
no such file |
FILE_EMFILE |
too many opened files |
FILE_ENSPC |
no space left on device |
FILE_FLAG |
bad flag |
enum FileIOMode |
Open and write flags for File class.
enum FileTestFlags |
Available flags for file_test()
enum IconContext |
Icon types to look for.
enum IconLoaderOptions |
Settable options for IconLoader functions.
enum IconSizes |
enum RegexMatchMode |
enum RegexMode |
enum ResourceType |
enum XSettingsAction |
enum XSettingsType |
String edelib::build_filename | ( | const char * | p1, |
const char * | p2 = ((void *) 0) , |
||
const char * | p3 = ((void *) 0) |
||
) |
This function will construct a path, separating each item with E_DIR_SEPARATOR separator. Each parameter will be separated with the one separator, except the case when one of the parameters contains multiple path elements separated with multiple separators.
Also, the number of leading separators in the first parameter and the number of trailing separators in the last parameter will be preserved.
For example:
p1 | first parameter |
p2 | optional second; if is NULL (default), it is ignored |
p3 | optional third; if is NULL (default), it is ignored |
void edelib::color_fltk_to_html | ( | unsigned int | color, |
char * | buf | ||
) |
Convert FLTK color to html representation. Given buffer is assumed to be a prior allocated and must be at least 8 character wide. Final result will be in form #rrggbb and string will be null terminated.
color | is FLTK color |
buf | is buffer where to place html color |
void edelib::color_fltk_to_rgb | ( | unsigned int | color, |
unsigned char & | r, | ||
unsigned char & | g, | ||
unsigned char & | b | ||
) |
Decompose FLTK color to rgb components.
color | is FLTK color |
r | is extracted red component |
g | is extracted green component |
b | is extracted blue component |
unsigned int edelib::color_html_to_fltk | ( | const char * | col | ) |
Tries to convert html-like color names to FLTK color space. This function does not support named colors, like #black, but only their hex values, like #abc. It will fail (return 0) if one of components is missing (eg. given #a or #ab).
col | is named color, if is NULL, it will return 0 (black) |
void edelib::color_html_to_rgb | ( | const char * | buf, |
unsigned char & | r, | ||
unsigned char & | g, | ||
unsigned char & | b | ||
) |
Decompose html representation to rgb compontents. Because this function uses color_fltk_to_rgb(), the same properties applies here.
buf | is buffer where to place html color (8 character wide) |
r | is extracted red component |
g | is extracted green component |
b | is extracted blue component |
unsigned int edelib::color_rgb_to_fltk | ( | unsigned char | r, |
unsigned char | g, | ||
unsigned char | b | ||
) |
Convert separated rgb color components to FLTK color space.
r | is red component |
g | is green component |
b | is blue component |
void edelib::color_rgb_to_html | ( | unsigned char | r, |
unsigned char | g, | ||
unsigned char | b, | ||
char * | buf | ||
) |
Convert RGB color to html representation. Given buffer is assumed to be a prior allocated and must be at least 8 character wide. Final result will be in form #rrggbb and string will be null terminated.
r | is red component |
g | is green component |
b | is blue component |
buf | is buffer where to place html color |
bool edelib::dir_create | ( | const char * | name, |
int | perm = 0777 |
||
) |
Creates directory calling system's mkdir() with apropriate permission (default is 0777).
This function will fail if given path exists (directory, file, link, etc.) Return true if succeded or false if failed.
bool edelib::dir_create_with_parents | ( | const char * | name, |
int | perm = 0777 |
||
) |
Creates directory if does not exists and create intermedaite parents if needed too.
Return true if succeded or false if failed.
bool edelib::dir_empty | ( | const char * | name | ) |
Return true if given directory is empty. If path is pointing to anything else than directory, it will return false. Use dir_exists() to check is path really a directory.
This function is alternative to this code:
but is much faster.
bool edelib::dir_exists | ( | const char * | name | ) |
Check if directory exists
bool edelib::dir_list | ( | const char * | dir, |
list< String > & | lst, | ||
bool | full_path = false , |
||
bool | show_hidden = false , |
||
bool | show_dots = false |
||
) |
List content of given directory. If directory is accessible, given parameter will be filled with the content.
dir_list() can accept "." which will resolve to the current directory, but will not accept ".." (directory up), nor will resolve chainings on it (like "../../../").
list content will be cleared before items are added.
dir | target directory |
lst | is a content of directory |
full_path | if set will append directory name to the each entry |
show_hidden | if set will show hidden files |
show_dots | if set will show . and .. directories |
bool edelib::dir_readable | ( | const char * | name | ) |
Check if directory is readable
bool edelib::dir_remove | ( | const char * | name | ) |
Remove given path (must be directory) calling system's rmdir(). Directory must be empty or operation will fail. Return true if succeded or false if failed.
bool edelib::dir_rename | ( | const char * | from, |
const char * | to | ||
) |
Rename given directory name. If name to be renamed to exists (file, directory, link and etc.) it will fail. Directory to be renamed must be empty.
bool edelib::dir_writeable | ( | const char * | name | ) |
Check if directory is writeable
bool edelib::file_test | ( | const char * | path, |
unsigned int | flags | ||
) |
file_test() is generic checker for target file type on the system, where file type could be directory, regular file socket and etc. This function, besides deducing type, can also check for file's existance and it's access flags.
flags should be set to specify what to test. These values can be OR-ed, so if you wan't to see if target object is file and is executable, you will use FILE_TEST_IS_REGULAR | FILE_TEST_IS_EXECUTABLE.
Care must be taken when combine certain flags. For example, since file can be readable, writeable and executable, combination like FILE_TEST_IS_READABLE | FILE_TEST_IS_WRITEABLE | FILE_TEST_IS_EXECUTABLE | FILE_TEST_IS_REGULAR is perfectly valid. On other hand, FILE_TEST_IS_DIR | FILE_TEST_IS_REGULAR makes no sense, so only first bits will be considered (FILE_TEST_IS_DIR only), and these flags will yield false from file_test().
void edelib::listener_add_fd | ( | int | fd, |
int | when, | ||
void(*)(int, void *) | cb, | ||
void * | arg = 0 |
||
) |
listener_xxx are set of functions with ability to monitor file descriptors (files, sockets, etc.). They are doing much the same work as FLTK's Fl::add_fd() and Fl::remove_fd() with the Fl::wait() loop.
They are mainly created to avoid linking with FLTK libraries when is not needed, eg. console applications.
listener_add_fd() will add file descriptor to listen to. Whem descriptor becomes ready, a cb callback will be called.
fd | is descriptor to be monitored |
when | is bitfield (LISTENER_READ, LISTENER_WRITE and LISTENER_EXCEPT) to indicate when callback should be done |
cb | is callback to be called |
arg | is optional parameter passed to the callback |
Referenced by listener_add_fd().
|
inline |
listener_add_fd() function with LISTENER_READ bit set.
References listener_add_fd(), and LISTENER_READ.
void edelib::listener_remove_fd | ( | int | fd, |
int | when | ||
) |
Removes added descriptor.
fd | is descriptor to be removed |
when | are bits to be removed from fd. |
Referenced by listener_remove_fd().
|
inline |
listener_remove_fd() function with LISTENER_READ bit set.
References LISTENER_READ, and listener_remove_fd().
double edelib::listener_wait | ( | double | t | ) |
This function corresponds (in some parts) to the FLTK's Fl::wait(). In this case, it will wait until some changes happens on monitored descriptors and will return. It will also call given callbacks (via listener_add_fd()).
listener_wait(), on other hand, is not replacement for Fl::wait(). It will not handle all things Fl::wait() does (like refreshing windows, calling idle callbacks, etc.) and in case listener_xxx be used with FLTK elements, listener_wait() must be called too.
t | is time to wait maximum seconds. It can return much sooner if something happens |
Referenced by listener_wait().
|
inline |
The same as for listener_wait(time), except it will run forever, until something happens and will return
References listener_wait().
void edelib::nls_locale_from_c | ( | char * | old | ) |
Restore locale set with nls_locale_to_c().
old | is previous locale retrieved with nls_locale_to_c() |
char* edelib::nls_locale_to_c | ( | void | ) |
Forces current locale to be set to "C".
The main intent for this function is to provide uniform data representation for some functions across locales. For example, strtod or printf family depends on current locale and if you want predictable behaviour or reading/writing across locales, the best way is to set "C" locale, call this functions and restore previous locale.
nls_locale_to_c() will return information of current locale, which is allocated c-string. You should not free it, use nls_locale_from_c(ret_value) instead, like:
void edelib::nls_support_init | ( | const char * | appname, |
const char * | dir | ||
) |
A shorthand for textdomain() and bindtextdomain()
This function can be called before application starts, like:
appname | is a set of translatable messages, coresponding to the target application's executable |
dir | the base directory for appname |
int edelib::run_async | ( | const char * | fmt, |
... | |||
) |
Same as run_sync(), except it will run command without blocking.
int edelib::run_async_with_pid | ( | int * | child_pid, |
const char * | fmt, | ||
... | |||
) |
Run program without blocking, but return successfully started child PID value.
child_pid | if not NULL will be set PID value of started child |
fmt | is printf-like formatted string |
int edelib::run_sync | ( | const char * | fmt, |
... | |||
) |
Executes the given program until it completes. If full path to the executable was given, it will be directly called; if not, PATH environment variable should contain a path where executable is placed.
Please note how some programs run without parameters (but internaly are executed via shell) can set errno to 2 which is usually interpreted as ENOENT (or program does not exists); for examle tar is known for this.
fmt | is printf-like formatted string |
bool edelib::str_ends | ( | const char * | str, |
const char * | test | ||
) |
Check if string ends with given test string.
str | is where to search |
test | is what to search |
unsigned int edelib::str_hash | ( | const char * | str, |
unsigned int | len = 0 |
||
) |
Compute hash from given string.
str | is input C string |
len | is length of str; if set to 0, str_hash() will compute string length using strlen. |
unsigned char* edelib::str_tolower | ( | unsigned char * | str | ) |
Makes all characters lower. Operates directly on buffer.
unsigned char* edelib::str_toupper | ( | unsigned char * | str | ) |
Makes all characters upper. Operates directly on buffer.
char* edelib::str_trim | ( | char * | str | ) |
Same as str_trimleft(str_trimright(str)).
char* edelib::str_trimleft | ( | char * | str | ) |
Removes leading space. Operates directly on buffer.
char* edelib::str_trimright | ( | char * | str | ) |
Removes leading space. Operates directly on buffer.
void edelib::stringtok | ( | Container & | c, |
const String & | str, | ||
const char * | ws = " \t\n" |
||
) |
A generic String tokenizer (or spliter), similar to stringtok, but works on given container (container that have push_back()).
If delimiter is not found * in container will be put whole string parameter (or container will be size 1). If given string is empty, in container will not be put anything.
This tokenizer is found in libstdc++ documentation. Author is unknown.
c | is container where will be tokenized data placed |
str | is string which should be tokenized |
ws | is delimiter by which we do splitting |
References String::length(), stringtok(), and String::substr().
Referenced by stringtok().
int edelib::system_config_dirs | ( | list< String > & | lst | ) |
Get a list of directories where configuration files should be searched. List is determined according to the XDG Base Directory Specification.
lst | is where to put founded data |
int edelib::system_data_dirs | ( | list< String > & | lst | ) |
Get a list of directories where data files should be searched. List is determined according to the XDG Base Directory Specification.
lst | is where to put founded data |
String edelib::user_cache_dir | ( | void | ) |
String edelib::user_config_dir | ( | void | ) |
String edelib::user_data_dir | ( | void | ) |
char edelib::xsettings_byte_order | ( | void | ) |
Returns byte order (MSBFirst/LSBFirst) used on client side.
XSettingsList* edelib::xsettings_decode | ( | unsigned char * | data, |
int | len, | ||
unsigned long * | serial | ||
) |
Decode settings from given buffer. Returns NULL if failed or buffer was empty; otherwise returns list of recognised ones.
void edelib::xsettings_encode | ( | const XSettingsSetting * | setting, |
XSettingsBuffer * | buffer | ||
) |
Encode settings from list into buffer.
bool edelib::xsettings_list_add | ( | XSettingsList ** | list, |
XSettingsSetting * | setting | ||
) |
Adds setting to the current list. Only pointer will be stored in list.
XSettingsSetting* edelib::xsettings_list_find | ( | XSettingsList * | list, |
const char * | name | ||
) |
Find setting with given name. Returns NULL if nothing was found.
void edelib::xsettings_list_free | ( | XSettingsList * | list | ) |
Clears settings list.
bool edelib::xsettings_list_remove | ( | XSettingsList ** | list, |
const char * | name | ||
) |
Remove setting with given name. If not found, it will do nothing.
XSettingsSetting* edelib::xsettings_setting_copy | ( | XSettingsSetting * | setting | ) |
Copy given setting. Copy will be allocated, and should be freed with xsettings_setting_free().
bool edelib::xsettings_setting_equal | ( | XSettingsSetting * | s1, |
XSettingsSetting * | s2 | ||
) |
Returns true if given two settings are equal or false if not.
void edelib::xsettings_setting_free | ( | XSettingsSetting * | setting | ) |
Free data allocated by given setting.
int edelib::xsettings_setting_len | ( | const XSettingsSetting * | setting | ) |
Returns setting lenght.