Re: [evolution-patches] Additional static capabilities for groupwise [calendar]



hi,
  Corrected it from g_free to icalcomponent_free.

thanks, chenthill.

On Mon, 2004-08-30 at 11:51 +0200, Rodrigo Moya wrote:
> On Fri, 2004-08-27 at 15:54 +0530, chenthill wrote:
> > Hi,
> >   Added a static capability to prevent assigning tasks by right clicking
> > on the existing task which the GW does not support. Disabled it after
> > checking for the static capability. Added another static capability to
> > prevent the conversion of non-recurring appointment to a recurrence
> > appointment. Disabled the widgets for the recurrence appointment when
> > viewing an existing appointment in GW, checking the capability.
> > 
> 
> > @@ -539,6 +541,15 @@
> >  
> >         if (!e_cal_is_read_only (COMP_EDITOR_PAGE (rpage)->client,
> > &read_only, NULL))
> >                 read_only = TRUE;
> > +       
> > +       if (!read_only) {
> > +               e_cal_component_get_uid (priv->comp, &uid);
> > +
> > +               if (e_cal_get_static_capability (COMP_EDITOR_PAGE
> > (rpage)->client, CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR) &&
> > e_cal_get_object(COMP_EDITOR_PAGE (rpage)->client, uid, NULL,
> > &icalcomp, NULL)) {
> > +                       read_only = TRUE;
> > >
> > +                       g_free (icalcomp);
> > +               }
> this is wrong, it should be icalcomponent_free (icalcomp), not g_free.
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/calendar/ChangeLog,v
retrieving revision 1.2500
diff -u -r1.2500 ChangeLog
--- ChangeLog	28 Aug 2004 15:08:44 -0000	1.2500
+++ ChangeLog	31 Aug 2004 08:07:25 -0000
@@ -1,3 +1,15 @@
+2004-08-29  Chenthill Palanisamy  <pchenthill novell com>
+
+	* gui/e-calendar-table.c
+	(e_calendar_table_show_popup_menu): Check the
+	static capability to enable or disable the assign
+	tasks in the popup menu.
+
+	* gui/dialogs/recurrence-page.c
+	(sensitize_buttons): Check for the static capability
+	to convert a existing appointment to recurrence appointment
+	for enabling or diabling the recurrence widgets.
+
 2004-08-28  JP Rosevear  <jpr novell com>
 
 	* gui/e-itip-control.c (rsvp_clicked_cb): get the active state
Index: gui/e-calendar-table.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/e-calendar-table.c,v
retrieving revision 1.122
diff -u -r1.122 e-calendar-table.c
--- gui/e-calendar-table.c	22 Jul 2004 13:09:32 -0000	1.122
+++ gui/e-calendar-table.c	31 Aug 2004 08:07:26 -0000
@@ -1133,6 +1133,9 @@
 	if (e_cal_get_static_capability (comp_data->client, CAL_STATIC_CAPABILITY_NO_TASK_ASSIGNMENT))
 		disable_mask |= MASK_ASSIGNABLE;
 
+	if (e_cal_get_static_capability (comp_data->client, CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK))
+		disable_mask |= MASK_ASSIGNABLE;
+
 	setup_popup_icons (tasks_popup_menu);
         gtk_menu = e_popup_menu_create (tasks_popup_menu, disable_mask,
 					hide_mask, cal_table);
Index: gui/dialogs/recurrence-page.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/dialogs/recurrence-page.c,v
retrieving revision 1.59
diff -u -r1.59 recurrence-page.c
--- gui/dialogs/recurrence-page.c	22 Jun 2004 22:35:41 -0000	1.59
+++ gui/dialogs/recurrence-page.c	31 Aug 2004 08:07:26 -0000
@@ -531,6 +531,8 @@
 	gboolean read_only;
 	gint selected_rows;
 	RecurrencePagePrivate *priv;
+	icalcomponent *icalcomp;
+	char *uid;
 
 	priv = rpage->priv;
 
@@ -539,6 +541,15 @@
 
 	if (!e_cal_is_read_only (COMP_EDITOR_PAGE (rpage)->client, &read_only, NULL))
 		read_only = TRUE;
+	
+	if (!read_only) {
+		e_cal_component_get_uid (priv->comp, &uid);
+
+		if (e_cal_get_static_capability (COMP_EDITOR_PAGE (rpage)->client, CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR) && e_cal_get_object(COMP_EDITOR_PAGE (rpage)->client, uid, NULL, &icalcomp, NULL)) {
+			read_only = TRUE;
+			icalcomponent_free (icalcomp);
+		}
+	}
 
 	if (!read_only)
 		sensitize_recur_widgets (rpage);
@@ -1540,6 +1551,7 @@
 		gtk_signal_handler_block_by_data (GTK_OBJECT (priv->recurs), rpage);
 		e_dialog_toggle_set (priv->recurs, FALSE);
 		gtk_signal_handler_unblock_by_data (GTK_OBJECT (priv->recurs), rpage);
+
 
 		sensitize_buttons (rpage);
 		preview_recur (rpage);
? assign_value.diff
? capabilities.diff
? clear_cache.diff
? patch
? patch_60265.diff
? patch_62866.diff
? populate_cac.diff
? recurrence.diff
? update_requests.diff
? ~?
? libecal/.e-cal.c.swp
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/ChangeLog,v
retrieving revision 1.323
diff -u -r1.323 ChangeLog
--- ChangeLog	27 Aug 2004 05:39:52 -0000	1.323
+++ ChangeLog	27 Aug 2004 09:19:29 -0000
@@ -1,3 +1,14 @@
+2004-08-27  chenthill Palanisamy <pchenthill novell com>
+
+	* libecal/e-cal-utils.h:
+       	defined two macros for the handling the static capabilities for 
+	backends which does not support the conversion of a non-recurring
+	appointment to a recurrence appointment and conversion of posted
+	task to group task.
+	* backends/groupwise/e-cal-backend-groupwise.c
+	(e_cal_backend_groupwise_get_static_capabilities): Added the 
+	two macros in this function.
+
 2004-08-27  Chenthill Palanisamy <pchenthill novell com>
 
 	* backends/groupwise/e-cal-backend-groupwise-utils.c
Index: backends/groupwise/e-cal-backend-groupwise.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise.c,v
retrieving revision 1.89
diff -u -r1.89 e-cal-backend-groupwise.c
--- backends/groupwise/e-cal-backend-groupwise.c	25 Aug 2004 15:12:12 -0000	1.89
+++ backends/groupwise/e-cal-backend-groupwise.c	27 Aug 2004 09:19:29 -0000
@@ -504,6 +504,8 @@
 				  CAL_STATIC_CAPABILITY_REMOVE_ALARMS ","   \
 	                          CAL_STATIC_CAPABILITY_NO_THISANDPRIOR "," \
 				  CAL_STATIC_CAPABILITY_NO_THISANDFUTURE "," \
+				  CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK "," \
+				  CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR "," \ 
 				  CAL_STATIC_CAPABILITY_SAVE_SCHEDULES);
 
 	return GNOME_Evolution_Calendar_Success;
Index: libecal/e-cal-util.h
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/libecal/e-cal-util.h,v
retrieving revision 1.4
diff -u -r1.4 e-cal-util.h
--- libecal/e-cal-util.h	7 Jan 2004 18:15:26 -0000	1.4
+++ libecal/e-cal-util.h	27 Aug 2004 09:19:29 -0000
@@ -121,6 +121,8 @@
 #define CAL_STATIC_CAPABILITY_ORGANIZER_NOT_EMAIL_ADDRESS "organizer-not-email-address"
 #define CAL_STATIC_CAPABILITY_REMOVE_ALARMS               "remove-alarms"
 #define CAL_STATIC_CAPABILITY_SAVE_SCHEDULES              "save-schedules"
+#define CAL_STATIC_CAPABILITY_NO_CONV_TO_ASSIGN_TASK	  "no-conv-to-assign-task"
+#define CAL_STATIC_CAPABILITY_NO_CONV_TO_RECUR		  "no-conv-to-recur"
 
 /* Recurrent events. Management for instances */
 icalcomponent *e_cal_util_construct_instance (icalcomponent *icalcomp,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]