edit-dialog: show events description, minor tweaks
This commit is contained in:
@@ -118,6 +118,7 @@
|
|||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">False</property>
|
<property name="can_focus">False</property>
|
||||||
<property name="halign">end</property>
|
<property name="halign">end</property>
|
||||||
|
<property name="valign">start</property>
|
||||||
<property name="label" translatable="yes">Notes</property>
|
<property name="label" translatable="yes">Notes</property>
|
||||||
<style>
|
<style>
|
||||||
<class name="dim-label" />
|
<class name="dim-label" />
|
||||||
@@ -215,11 +216,10 @@
|
|||||||
</child>
|
</child>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkScrolledWindow" id="scrolled_window">
|
<object class="GtkScrolledWindow" id="scrolled_window">
|
||||||
<property name="height_request">80</property>
|
<property name="height_request">120</property>
|
||||||
<property name="visible">True</property>
|
<property name="visible">True</property>
|
||||||
<property name="can_focus">True</property>
|
<property name="can_focus">True</property>
|
||||||
<property name="vexpand">True</property>
|
<property name="vexpand">True</property>
|
||||||
<property name="hscrollbar_policy">never</property>
|
|
||||||
<property name="shadow_type">in</property>
|
<property name="shadow_type">in</property>
|
||||||
<child>
|
<child>
|
||||||
<object class="GtkTextView" id="notes_text">
|
<object class="GtkTextView" id="notes_text">
|
||||||
|
|||||||
+12
-5
@@ -703,12 +703,19 @@ gcal_edit_dialog_set_event_data (GcalEditDialog *dialog,
|
|||||||
priv->ev_store->location = const_text != NULL ? g_strdup (const_text) : "";
|
priv->ev_store->location = const_text != NULL ? g_strdup (const_text) : "";
|
||||||
|
|
||||||
/* notes */
|
/* notes */
|
||||||
priv->ev_store->description = "";
|
if (priv->ev_store->description != NULL)
|
||||||
|
g_free (priv->ev_store->description);
|
||||||
|
|
||||||
gtk_text_buffer_set_text (
|
priv->ev_store->description =
|
||||||
gtk_text_view_get_buffer (GTK_TEXT_VIEW (priv->notes_text)),
|
get_desc_from_component (priv->component,
|
||||||
priv->ev_store->description,
|
"\n");
|
||||||
-1);
|
if (priv->ev_store->description != NULL)
|
||||||
|
{
|
||||||
|
gtk_text_buffer_set_text (
|
||||||
|
gtk_text_view_get_buffer (GTK_TEXT_VIEW (priv->notes_text)),
|
||||||
|
priv->ev_store->description,
|
||||||
|
-1);
|
||||||
|
}
|
||||||
|
|
||||||
gcal_edit_dialog_set_writable (
|
gcal_edit_dialog_set_writable (
|
||||||
dialog,
|
dialog,
|
||||||
|
|||||||
@@ -304,6 +304,51 @@ void print_date (const gchar* prefix,
|
|||||||
g_free (temp);
|
g_free (temp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get_desc_from_component:
|
||||||
|
* @component:
|
||||||
|
*
|
||||||
|
* Utility method to handle the extraction of the description from an
|
||||||
|
* #ECalComponent. This cycle through the list of #ECalComponentText
|
||||||
|
* and concatenate each string into one.
|
||||||
|
*
|
||||||
|
* Returns: (Transfer full) a new allocated string with the description
|
||||||
|
**/
|
||||||
|
gchar*
|
||||||
|
get_desc_from_component (ECalComponent *component,
|
||||||
|
const gchar *joint_char)
|
||||||
|
{
|
||||||
|
GSList *text_list;
|
||||||
|
GSList *l;
|
||||||
|
|
||||||
|
gchar *desc = NULL;
|
||||||
|
e_cal_component_get_description_list (component, &text_list);
|
||||||
|
|
||||||
|
for (l = text_list; l != NULL; l = l->next)
|
||||||
|
{
|
||||||
|
if (l->data != NULL)
|
||||||
|
{
|
||||||
|
ECalComponentText *text;
|
||||||
|
gchar *carrier;
|
||||||
|
text = l->data;
|
||||||
|
|
||||||
|
if (desc != NULL)
|
||||||
|
{
|
||||||
|
carrier = g_strconcat (desc, joint_char, text->value, NULL);
|
||||||
|
g_free (desc);
|
||||||
|
desc = carrier;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
desc = g_strdup (text->value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
e_cal_component_free_text_list (text_list);
|
||||||
|
return desc;
|
||||||
|
}
|
||||||
|
|
||||||
/* Function to do a last minute fixup of the AM/PM stuff if the locale
|
/* Function to do a last minute fixup of the AM/PM stuff if the locale
|
||||||
* and gettext haven't done it right. Most English speaking countries
|
* and gettext haven't done it right. Most English speaking countries
|
||||||
* except the USA use the 24 hour clock (UK, Australia etc). However
|
* except the USA use the 24 hour clock (UK, Australia etc). However
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
#define __GCAL_UTILS_H__
|
#define __GCAL_UTILS_H__
|
||||||
|
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
|
#include <libecal/libecal.h>
|
||||||
#include <libical/icaltime.h>
|
#include <libical/icaltime.h>
|
||||||
|
|
||||||
#define ICAL_TIME_TYPE (icaltime_get_type ())
|
#define ICAL_TIME_TYPE (icaltime_get_type ())
|
||||||
@@ -77,6 +78,9 @@ gint gcal_compare_event_widget_by_date (gconstpointer
|
|||||||
void print_date (const gchar* prefix,
|
void print_date (const gchar* prefix,
|
||||||
const icaltimetype* icaltime);
|
const icaltimetype* icaltime);
|
||||||
|
|
||||||
|
gchar* get_desc_from_component (ECalComponent *component,
|
||||||
|
const gchar *joint_char);
|
||||||
|
|
||||||
/* code brought from evolution */
|
/* code brought from evolution */
|
||||||
gsize e_strftime_fix_am_pm (gchar *str,
|
gsize e_strftime_fix_am_pm (gchar *str,
|
||||||
gsize max,
|
gsize max,
|
||||||
|
|||||||
Reference in New Issue
Block a user