## PhoshStatusIcon

PhoshStatusIcon — Base clase for different status icons e.g in the top bar

## Functions

GtkWidget * | phosh_status_icon_new ()
void | phosh_status_icon_set_icon_size ()
GtkIconSize | phosh_status_icon_get_icon_size ()
void | phosh_status_icon_set_icon_name ()
char * | phosh_status_icon_get_icon_name ()
void | phosh_status_icon_set_extra_widget ()
GtkWidget * | phosh_status_icon_get_extra_widget ()
void | phosh_status_icon_set_info ()
char * | phosh_status_icon_get_info ()
void | phosh_status_icon_set_show_always ()
gboolean | phosh_status_icon_get_show_always ()

## Properties

GtkWidget * | extra-widget | Read / Write
char * | icon-name | Read / Write
GtkIconSize | icon-size | Read / Write
char * | info | Read / Write

## Types and Values

#define | PHOSH_TYPE_STATUS_ICON
struct | PhoshStatusIconClass
| PhoshStatusIcon

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkBin
                        ╰── PhoshStatusIcon
                            ├── PhoshBatteryInfo
                            ├── PhoshBtInfo
                            ├── PhoshConnectivityInfo
                            ├── PhoshDockedInfo
                            ├── PhoshFeedbackInfo
                            ├── PhoshHksInfo
                            ├── PhoshLocationInfo
                            ├── PhoshRotateInfo
                            ├── PhoshTorchInfo
                            ├── PhoshVpnInfo
                            ├── PhoshWifiInfo
                            ╰── PhoshWWanInfo

## Implemented Interfaces

PhoshStatusIcon implements AtkImplementorIface and GtkBuildable.

## Description

## Functions

### phosh_status_icon_new ()

    GtkWidget *
    phosh_status_icon_new (void);

### phosh_status_icon_set_icon_size ()

    void
    phosh_status_icon_set_icon_size (PhoshStatusIcon *self,
                                     GtkIconSize size);

### phosh_status_icon_get_icon_size ()

    GtkIconSize
    phosh_status_icon_get_icon_size (PhoshStatusIcon *self);

### phosh_status_icon_set_icon_name ()

    void
    phosh_status_icon_set_icon_name (PhoshStatusIcon *self,
                                     const char *icon_name);

### phosh_status_icon_get_icon_name ()

    char *
    phosh_status_icon_get_icon_name (PhoshStatusIcon *self);

### phosh_status_icon_set_extra_widget ()

    void
    phosh_status_icon_set_extra_widget (PhoshStatusIcon *self,
                                        GtkWidget *widget);

### phosh_status_icon_get_extra_widget ()

    GtkWidget *
    phosh_status_icon_get_extra_widget (PhoshStatusIcon *self);

### phosh_status_icon_set_info ()

    void
    phosh_status_icon_set_info (PhoshStatusIcon *self,
                                const char *info);

### phosh_status_icon_get_info ()

    char *
    phosh_status_icon_get_info (PhoshStatusIcon *self);

### phosh_status_icon_set_show_always ()

    void
    phosh_status_icon_set_show_always (PhoshStatusIcon *self,
                                       gboolean show_always);

### phosh_status_icon_get_show_always ()

    gboolean
    phosh_status_icon_get_show_always (PhoshStatusIcon *self);

## Types and Values

### PHOSH_TYPE_STATUS_ICON

    #define PHOSH_TYPE_STATUS_ICON (phosh_status_icon_get_type())

### struct PhoshStatusIconClass

    struct PhoshStatusIconClass {
      GtkBinClass parent_class;

      void (*idle_init) (PhoshStatusIcon *self);
    };

#### Members

`idle_init` () | a callback to be invoked once on idle |

### PhoshStatusIcon

    typedef struct _PhoshStatusIcon PhoshStatusIcon;

## Property Details

### The `“extra-widget”` property

      “extra-widget”             GtkWidget *

An additional widget.

Owner: PhoshStatusIcon

Flags: Read / Write

### The `“icon-name”` property

      “icon-name”                char *

The icon name.

Owner: PhoshStatusIcon

Flags: Read / Write

Default value: NULL

### The `“icon-size”` property

      “icon-size”                GtkIconSize

The icon size.

Owner: PhoshStatusIcon

Flags: Read / Write

Default value: GTK_ICON_SIZE_LARGE_TOOLBAR

### The `“info”` property

      “info”                     char *

Additional state information.

Owner: PhoshStatusIcon

Flags: Read / Write

Default value: NULL