### Class

# Panel SaveDelegate

#### Description

    class Panel.SaveDelegate : GObject.Object {
      parent_instance: GObject
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### panel_save_delegate_new

Create a new `PanelSaveDelegate`.

#### Instance methods

###### panel_save_delegate_close

No description available.

###### panel_save_delegate_discard

No description available.

###### panel_save_delegate_get_icon

Gets the `GIcon` for the save delegate, or `NULL` if unset.

###### panel_save_delegate_get_icon_name

Gets the icon name for the save delegate.

###### panel_save_delegate_get_is_draft

No description available.

###### panel_save_delegate_get_progress

No description available.

###### panel_save_delegate_get_subtitle

Gets the subtitle for the save delegate.

###### panel_save_delegate_get_title

Gets the title for the save delegate.

###### panel_save_delegate_save_async

No description available.

###### panel_save_delegate_save_finish

No description available.

###### panel_save_delegate_set_icon

Sets the `GIcon` for the save delegate. Pass `NULL` to unset.

###### panel_save_delegate_set_icon_name

Sets the icon name for the save delegate. Pass `NULL` to unset.

###### panel_save_delegate_set_is_draft

No description available.

###### panel_save_delegate_set_progress

No description available.

###### panel_save_delegate_set_subtitle

Sets the subtitle for the save delegate. Pass `NULL` to unset.

###### panel_save_delegate_set_title

Sets the title for the save delegate. Pass `NULL` to unset.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Panel.SaveDelegate:icon

The “icon” property contains a `GIcon` that describes the save operation. Generally, this should be the symbolic icon of the document class you are saving.

###### Panel.SaveDelegate:icon-name

The “icon-name” property contains the name of an icon to use when showing information about the save operation in UI such as a save dialog.

###### Panel.SaveDelegate:is-draft

The “is-draft” property indicates that the document represented by the delegate is a draft and might be lost of not saved.

###### Panel.SaveDelegate:progress

The “progress” property contains progress between 0.0 and 1.0 and should be updated by the delegate implementation as saving progresses.

###### Panel.SaveDelegate:subtitle

The “subtitle” property contains additional information that may not make sense to put in the title. This might include the directory that the file will be saved within.

###### Panel.SaveDelegate:title

The “title” property contains the title of the document being saved. Generally, this should be the base name of the document such as `file.txt`.

#### Signals

###### Panel.SaveDelegate::close

This signal is emitted when the save delegate should close the widget it is related to. This can happen after saving as part of a close request and it is now save for the delegate to close.

###### Panel.SaveDelegate::discard

This signal is emitted when the user has requested that the delegate discard the changes instead of saving them.

###### Panel.SaveDelegate::save

This signal can be used when subclassing `PanelSaveDelegate` is not possible or cumbersome. The default implementation of `PanelSaveDelegateClass`.save_async() will emit this signal to allow the consumer to implement asynchronous save in a flexible manner.

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct PanelSaveDelegateClass {
      GObjectClass parent_class;
      void (* save_async) (
        PanelSaveDelegate* self,
        GCancellable* cancellable,
        GAsyncReadyCallback callback,
        gpointer user_data
      );
      gboolean (* save_finish) (
        PanelSaveDelegate* self,
        GAsyncResult* result,
        GError** error
      );
      gboolean (* save) (
        PanelSaveDelegate* self,
        GTask* task
      );
      void (* discard) (
        PanelSaveDelegate* self
      );
      void (* close) (
        PanelSaveDelegate* self
      );

    }

No description available.

###### Class members

`parent_class: GObjectClass`
  No description available.
`save_async: void (* save_async) ( PanelSaveDelegate* self, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer user_data )`
  No description available.
`save_finish: gboolean (* save_finish) ( PanelSaveDelegate* self, GAsyncResult* result, GError** error )`
  No description available.
`save: gboolean (* save) ( PanelSaveDelegate* self, GTask* task )`
  No description available.
`discard: void (* discard) ( PanelSaveDelegate* self )`
  No description available.
`close: void (* close) ( PanelSaveDelegate* self )`
  No description available.

#### Virtual methods

###### Panel.SaveDelegateClass.close

No description available.

###### Panel.SaveDelegateClass.discard

No description available.

###### Panel.SaveDelegateClass.save

No description available.

###### Panel.SaveDelegateClass.save_async

No description available.

###### Panel.SaveDelegateClass.save_finish

No description available.