gboolean byzanz_session_is_recording (ByzanzSession *session) { g_return_val_if_fail (BYZANZ_IS_SESSION (session), FALSE); return session->error == NULL && byzanz_recorder_get_recording (session->recorder); }
static void byzanz_session_set_error (ByzanzSession *session, const GError *error) { GObject *object = G_OBJECT (session); if (session->error != NULL) return; session->error = g_error_copy (error); g_object_ref (session); g_object_freeze_notify (object); g_object_notify (object, "error"); if (byzanz_recorder_get_recording (session->recorder)) byzanz_session_stop (session); g_object_thaw_notify (object); g_object_unref (session); }
static void byzanz_recorder_get_property (GObject *object, guint param_id, GValue *value, GParamSpec * pspec) { ByzanzRecorder *recorder = BYZANZ_RECORDER (object); switch (param_id) { case PROP_WINDOW: g_value_set_object (value, recorder->window); break; case PROP_AREA: g_value_set_boxed (value, &recorder->area); break; case PROP_RECORDING: g_value_set_boolean (value, byzanz_recorder_get_recording (recorder)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; } }