views/week: Add 'can-expand' property
This commit is contained in:
@@ -97,6 +97,7 @@ struct _GcalWeekHeader
|
|||||||
* Used for checking if the header is in collapsed state or expand state
|
* Used for checking if the header is in collapsed state or expand state
|
||||||
* false is collapse state true is expand state
|
* false is collapse state true is expand state
|
||||||
*/
|
*/
|
||||||
|
gboolean can_expand;
|
||||||
gboolean expanded;
|
gboolean expanded;
|
||||||
|
|
||||||
GDateTime *active_date;
|
GDateTime *active_date;
|
||||||
@@ -127,6 +128,7 @@ typedef enum
|
|||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
PROP_0,
|
PROP_0,
|
||||||
|
PROP_CAN_EXPAND,
|
||||||
PROP_EXPANDED,
|
PROP_EXPANDED,
|
||||||
N_PROPS,
|
N_PROPS,
|
||||||
};
|
};
|
||||||
@@ -511,6 +513,12 @@ update_overflow (GcalWeekHeader *self)
|
|||||||
}
|
}
|
||||||
|
|
||||||
gtk_widget_set_visible (GTK_WIDGET (self->expand_button), show_expand);
|
gtk_widget_set_visible (GTK_WIDGET (self->expand_button), show_expand);
|
||||||
|
|
||||||
|
if (self->can_expand != show_expand)
|
||||||
|
{
|
||||||
|
self->can_expand = show_expand;
|
||||||
|
g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_CAN_EXPAND]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -1485,6 +1493,10 @@ gcal_week_header_get_property (GObject *object,
|
|||||||
|
|
||||||
switch (prop_id)
|
switch (prop_id)
|
||||||
{
|
{
|
||||||
|
case PROP_CAN_EXPAND:
|
||||||
|
g_value_set_boolean (value, self->can_expand);
|
||||||
|
break;
|
||||||
|
|
||||||
case PROP_EXPANDED:
|
case PROP_EXPANDED:
|
||||||
g_value_set_boolean (value, self->expanded);
|
g_value_set_boolean (value, self->expanded);
|
||||||
break;
|
break;
|
||||||
@@ -1508,6 +1520,7 @@ gcal_week_header_set_property (GObject *object,
|
|||||||
gcal_week_header_set_expanded (self, g_value_get_boolean (value));
|
gcal_week_header_set_expanded (self, g_value_get_boolean (value));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PROP_CAN_EXPAND:
|
||||||
default:
|
default:
|
||||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||||
}
|
}
|
||||||
@@ -1528,6 +1541,10 @@ gcal_week_header_class_init (GcalWeekHeaderClass *kclass)
|
|||||||
widget_class->size_allocate = gcal_week_header_size_allocate;
|
widget_class->size_allocate = gcal_week_header_size_allocate;
|
||||||
widget_class->snapshot = gcal_week_header_snapshot;
|
widget_class->snapshot = gcal_week_header_snapshot;
|
||||||
|
|
||||||
|
properties[PROP_CAN_EXPAND] = g_param_spec_boolean ("can-expand", NULL, NULL,
|
||||||
|
FALSE,
|
||||||
|
G_PARAM_READABLE | G_PARAM_STATIC_STRINGS);
|
||||||
|
|
||||||
properties[PROP_EXPANDED] = g_param_spec_boolean ("expanded", NULL, NULL,
|
properties[PROP_EXPANDED] = g_param_spec_boolean ("expanded", NULL, NULL,
|
||||||
FALSE,
|
FALSE,
|
||||||
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
|
G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
|
||||||
@@ -1849,6 +1866,14 @@ gcal_week_header_set_date (GcalWeekHeader *self,
|
|||||||
update_weather_infos (self);
|
update_weather_infos (self);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gboolean
|
||||||
|
gcal_week_header_get_can_expand (GcalWeekHeader *self)
|
||||||
|
{
|
||||||
|
g_assert (GCAL_IS_WEEK_HEADER (self));
|
||||||
|
|
||||||
|
return self->can_expand;
|
||||||
|
}
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
gcal_week_header_get_expanded (GcalWeekHeader *self)
|
gcal_week_header_get_expanded (GcalWeekHeader *self)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -52,6 +52,8 @@ void gcal_week_header_clear_marks (GcalWeekHeader
|
|||||||
void gcal_week_header_set_date (GcalWeekHeader *self,
|
void gcal_week_header_set_date (GcalWeekHeader *self,
|
||||||
GDateTime *date);
|
GDateTime *date);
|
||||||
|
|
||||||
|
gboolean gcal_week_header_get_can_expand (GcalWeekHeader *self);
|
||||||
|
|
||||||
gboolean gcal_week_header_get_expanded (GcalWeekHeader *self);
|
gboolean gcal_week_header_get_expanded (GcalWeekHeader *self);
|
||||||
void gcal_week_header_set_expanded (GcalWeekHeader *self,
|
void gcal_week_header_set_expanded (GcalWeekHeader *self,
|
||||||
gboolean expanded);
|
gboolean expanded);
|
||||||
|
|||||||
Reference in New Issue
Block a user