Common macros

Common macros — Macros to work glib version independent.

Synopsis

#include <libxfce4panel/libxfce4panel.h>

#define             panel_slice_alloc                   (block_size)
#define             panel_slice_alloc0                  (block_size)
#define             panel_slice_free                    (type,
                                                         ptr)
#define             panel_slice_free1                   (block_size,
                                                         mem_block)
#define             panel_slice_new                     (type)
#define             panel_slice_new0                    (type)
#define             PANEL_PARAM_READABLE
#define             PANEL_PARAM_READWRITE
#define             PANEL_PARAM_WRITABLE
#define             I_                                  (string)

Description

Macros for plugin writers to use new features in Glib 2.8 and 2.10 without breaking old versions of Glib. It is recommended to use those macros when possible.

Details

panel_slice_alloc()

#define panel_slice_alloc(block_size)             (g_slice_alloc ((block_size)))

Use g_slice_alloc when available, fallback to g_malloc.

block_size :

the number of bytes to allocate

panel_slice_alloc0()

#define panel_slice_alloc0(block_size)            (g_slice_alloc0 ((block_size)))

Use g_slice_alloc0 when available, fallback to g_malloc0.

block_size :

the number of bytes to allocate

panel_slice_free()

#define panel_slice_free(type, ptr)               G_STMT_START{ g_slice_free (type, (ptr)); }G_STMT_END

Use g_slice_free when available, fallback to g_free.

type :

the type to allocate, typically a structure name

ptr :

a pointer to the block to free

panel_slice_free1()

#define panel_slice_free1(block_size, mem_block)  G_STMT_START{ g_slice_free1 ((block_size), (mem_block)); }G_STMT_END

Use g_slice_free1 when available, fallback to g_free.

block_size :

the number of bytes to allocate

mem_block :

a pointer to the block to free

panel_slice_new()

#define panel_slice_new(type)                     (g_slice_new (type))

Use g_slice_new when available, fallback to g_new.

type :

the type to allocate, typically a structure name

panel_slice_new0()

#define panel_slice_new0(type)                    (g_slice_new0 (type))

Use g_slice_new0 when available, fallback to g_new0.

type :

the type to allocate, typically a structure name

PANEL_PARAM_READABLE

#define PANEL_PARAM_READABLE  (G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)

Alias for G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB


PANEL_PARAM_READWRITE

#define PANEL_PARAM_READWRITE (G_PARAM_READWRITE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)

Alias for G_PARAM_WRITABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB


PANEL_PARAM_WRITABLE

#define PANEL_PARAM_WRITABLE  (G_PARAM_WRITABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)

Alias for G_PARAM_READWRITE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB


I_()

#define I_(string) (g_intern_static_string ((string)))

Canonical representation for string. This can be use in functions like g_object_get_data.

string :

a string