evolution-data-server r8803 - in branches/camel-db-summary: . addressbook addressbook/libedata-book calendar calendar/libedata-cal camel camel/providers/imap4 docs/reference/libedataserver docs/reference/libedataserver/tmpl libebackend libedataserver libedataserverui po



Author: sragavan
Date: Mon May 19 03:12:09 2008
New Revision: 8803
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=8803&view=rev

Log:
Merge branch 'master' into disk-summary


Added:
   branches/camel-db-summary/docs/reference/libedataserver/tmpl/eds-version.sgml
   branches/camel-db-summary/libedataserver/eds-version.c
   branches/camel-db-summary/libedataserver/eds-version.h.in
Modified:
   branches/camel-db-summary/ChangeLog
   branches/camel-db-summary/addressbook/ChangeLog
   branches/camel-db-summary/addressbook/libedata-book/libedata-book.pc.in
   branches/camel-db-summary/calendar/ChangeLog
   branches/camel-db-summary/calendar/libedata-cal/libedata-cal.pc.in
   branches/camel-db-summary/camel/ChangeLog
   branches/camel-db-summary/camel/camel-net-utils.h
   branches/camel-db-summary/camel/providers/imap4/ChangeLog
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.h
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-provider.c
   branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c
   branches/camel-db-summary/configure.in
   branches/camel-db-summary/docs/reference/libedataserver/libedataserver-docs.sgml
   branches/camel-db-summary/docs/reference/libedataserver/libedataserver-sections.txt
   branches/camel-db-summary/libebackend/libebackend.pc.in
   branches/camel-db-summary/libedataserver/Makefile.am
   branches/camel-db-summary/libedataserver/libedataserver.pc.in
   branches/camel-db-summary/libedataserverui/ChangeLog
   branches/camel-db-summary/libedataserverui/e-passwords.c
   branches/camel-db-summary/po/ChangeLog
   branches/camel-db-summary/po/ar.po
   branches/camel-db-summary/po/nb.po
   branches/camel-db-summary/po/nl.po
   branches/camel-db-summary/po/th.po

Modified: branches/camel-db-summary/addressbook/libedata-book/libedata-book.pc.in
==============================================================================
--- branches/camel-db-summary/addressbook/libedata-book/libedata-book.pc.in	(original)
+++ branches/camel-db-summary/addressbook/libedata-book/libedata-book.pc.in	Mon May 19 03:12:09 2008
@@ -13,6 +13,6 @@
 Name: libedatabook
 Description: Backend library for evolution address books
 Version: @VERSION@
-Requires: libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ libgnome-2.0 libedataserver-1.2 libebook-1.2
+Requires: libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ libgnome-2.0 libedataserver-1.2 libebackend-1.2 libebook-1.2
 Libs: -L${libdir} -ledata-book-1.2
 Cflags: -I${privincludedir}

Modified: branches/camel-db-summary/calendar/libedata-cal/libedata-cal.pc.in
==============================================================================
--- branches/camel-db-summary/calendar/libedata-cal/libedata-cal.pc.in	(original)
+++ branches/camel-db-summary/calendar/libedata-cal/libedata-cal.pc.in	Mon May 19 03:12:09 2008
@@ -13,6 +13,6 @@
 Name: libedata-cal
 Description: Backend library for evolution calendars
 Version: @VERSION@
-Requires: libgnome-2.0 libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ libedataserver-1.2 libecal-1.2 gio-2.0
+Requires: libgnome-2.0 libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ libedataserver-1.2 libebackend-1.2 libecal-1.2 gio-2.0
 Libs: -L${libdir} -ledata-cal-1.2 -lecal-1.2
 Cflags: -I${privincludedir}

Modified: branches/camel-db-summary/camel/camel-net-utils.h
==============================================================================
--- branches/camel-db-summary/camel/camel-net-utils.h	(original)
+++ branches/camel-db-summary/camel/camel-net-utils.h	Mon May 19 03:12:09 2008
@@ -29,7 +29,9 @@
 #include <sys/socket.h>
 #include <netdb.h>
 #else
+#define WIN32_LEAN_AND_MEAN
 #include <winsock2.h>
+#undef WIN32_LEAN_AND_MEAN
 #include <ws2tcpip.h>
 #endif
 

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.c	Mon May 19 03:12:09 2008
@@ -86,7 +86,9 @@
 static GSList *imap4_folder_props = NULL;
 
 static CamelProperty imap4_prop_list[] = {
-	{ CAMEL_IMAP4_FOLDER_ENABLE_MLIST, "mlist_info", N_("Enable Mailing-List detection required for some filter and vFolder rules") },
+	{ CAMEL_IMAP4_FOLDER_ENABLE_MLIST, "mlist_info", N_("Enable extended Mailing-List detection required for some filter and vFolder rules") },
+	{ CAMEL_IMAP4_FOLDER_EXPIRE_ACCESS, "expire-access", N_("Expire cached messages that haven't been read in X seconds") },
+	{ CAMEL_IMAP4_FOLDER_EXPIRE_AGE, "expire-age", N_("Expire cached messages older than X seconds") },
 };
 
 
@@ -157,8 +159,7 @@
 	
 	camel_object_unref (folder->search);
 	
-	if (folder->cache)
-		camel_object_unref (folder->cache);
+	camel_object_unref (folder->cache);
 	
 	if (folder->journal) {
 		camel_offline_journal_write (folder->journal, NULL);
@@ -172,6 +173,7 @@
 static int
 imap4_getv (CamelObject *object, CamelException *ex, CamelArgGetV *args)
 {
+	CamelIMAP4Folder *folder = (CamelIMAP4Folder *) object;
 	CamelArgGetV props;
 	int i, count = 0;
 	guint32 tag;
@@ -190,7 +192,13 @@
 			*arg->ca_ptr = g_slist_concat (*arg->ca_ptr, g_slist_copy (imap4_folder_props));
 			break;
 		case CAMEL_IMAP4_FOLDER_ARG_ENABLE_MLIST:
-			*arg->ca_int = ((CamelIMAP4Folder *) object)->enable_mlist;
+			*arg->ca_int = folder->enable_mlist;
+			break;
+		case CAMEL_IMAP4_FOLDER_ARG_EXPIRE_ACCESS:
+			*arg->ca_int = folder->cache->expire_access;
+			break;
+		case CAMEL_IMAP4_FOLDER_ARG_EXPIRE_AGE:
+			*arg->ca_int = folder->cache->expire_age;
 			break;
 		default:
 			count++;
@@ -210,6 +218,7 @@
 imap4_setv (CamelObject *object, CamelException *ex, CamelArgV *args)
 {
 	CamelIMAP4Folder *folder = (CamelIMAP4Folder *) object;
+	CamelDataCache *cache = folder->cache;
 	gboolean save = FALSE;
 	guint32 tag;
 	int i;
@@ -226,6 +235,18 @@
 				save = TRUE;
 			}
 			break;
+		case CAMEL_IMAP4_FOLDER_ARG_EXPIRE_ACCESS:
+			if (cache->expire_access != (time_t) arg->ca_int) {
+				camel_data_cache_set_expire_access (cache, (time_t) arg->ca_int);
+				save = TRUE;
+			}
+			break;
+		case CAMEL_IMAP4_FOLDER_ARG_EXPIRE_AGE:
+			if (cache->expire_age != (time_t) arg->ca_int) {
+				camel_data_cache_set_expire_age (cache, (time_t) arg->ca_int);
+				save = TRUE;
+			}
+			break;
 		default:
 			continue;
 		}
@@ -367,7 +388,7 @@
 	
 	if (camel_object_state_read (folder) == -1) {
 		/* set our defaults */
-		imap4_folder->enable_mlist = TRUE;
+		imap4_folder->enable_mlist = FALSE;
 	}
 	
 	if (!g_ascii_strcasecmp (full_name, "INBOX")) {

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.h
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.h	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-folder.h	Mon May 19 03:12:09 2008
@@ -45,11 +45,15 @@
 
 enum {
 	CAMEL_IMAP4_FOLDER_ARG_ENABLE_MLIST = CAMEL_OFFLINE_FOLDER_ARG_LAST,
+	CAMEL_IMAP4_FOLDER_ARG_EXPIRE_ACCESS,
+	CAMEL_IMAP4_FOLDER_ARG_EXPIRE_AGE,
 	CAMEL_IMAP4_FOLDER_ARG_LAST = CAMEL_OFFLINE_FOLDER_ARG_LAST + 0x100
 };
 
 enum {
 	CAMEL_IMAP4_FOLDER_ENABLE_MLIST = CAMEL_IMAP4_FOLDER_ARG_ENABLE_MLIST | CAMEL_ARG_BOO,
+	CAMEL_IMAP4_FOLDER_EXPIRE_ACCESS = CAMEL_IMAP4_FOLDER_ARG_EXPIRE_ACCESS | CAMEL_ARG_INT,
+	CAMEL_IMAP4_FOLDER_EXPIRE_AGE = CAMEL_IMAP4_FOLDER_ARG_EXPIRE_AGE | CAMEL_ARG_INT,
 };
 
 struct _CamelIMAP4Folder {

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-provider.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-provider.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-provider.c	Mon May 19 03:12:09 2008
@@ -33,6 +33,7 @@
 
 #include "camel-imap4-store.h"
 
+/* FIXME: Add options for cache expiration */
 static CamelProviderConfEntry imap4_conf_entries[] = {
 	{ CAMEL_PROVIDER_CONF_SECTION_START, "mailcheck", NULL,
 	  N_("Checking for new mail") },

Modified: branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c
==============================================================================
--- branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c	(original)
+++ branches/camel-db-summary/camel/providers/imap4/camel-imap4-summary.c	Mon May 19 03:12:09 2008
@@ -123,8 +123,6 @@
 	folder_summary->message_info_size = sizeof (CamelIMAP4MessageInfo);
 	folder_summary->content_info_size = sizeof (CamelIMAP4MessageContentInfo);
 	
-	((CamelFolderSummary *) summary)->flags |= CAMEL_IMAP4_SUMMARY_HAVE_MLIST;
-	
 	summary->update_flags = TRUE;
 	summary->uidvalidity_changed = FALSE;
 }
@@ -1181,9 +1179,9 @@
 }
 
 #define IMAP4_ALL "FLAGS INTERNALDATE RFC822.SIZE ENVELOPE"
-#define MAILING_LIST_HEADERS "List-Post List-Id Mailing-List Originator X-Mailing-List X-Loop X-List Sender Delivered-To Return-Path X-BeenThere List-Unsubscribe"
+#define MAILING_LIST_HEADERS "List-Post Mailing-List Originator X-Mailing-List X-Loop X-List Sender Delivered-To Return-Path X-BeenThere List-Unsubscribe"
 
-#define BASE_HEADER_FIELDS "Content-Type References In-Reply-To"
+#define BASE_HEADER_FIELDS "Content-Type References In-Reply-To List-Id"
 #define MORE_HEADER_FIELDS BASE_HEADER_FIELDS " " MAILING_LIST_HEADERS
 
 static void

Modified: branches/camel-db-summary/configure.in
==============================================================================
--- branches/camel-db-summary/configure.in	(original)
+++ branches/camel-db-summary/configure.in	Mon May 19 03:12:09 2008
@@ -1,7 +1,15 @@
  Process this file with autoconf to produce a configure script.
 AC_PREREQ(2.52)
 
-AC_INIT(evolution-data-server, 2.23.3)
+# Evolution-Data-Server version */
+m4_define([eds_major_version], [2])
+m4_define([eds_minor_version], [23])
+m4_define([eds_micro_version], [3])
+
+m4_define([eds_version],
+          [eds_major_version.eds_minor_version.eds_micro_version])
+
+AC_INIT(evolution-data-server, [eds_version])
 AC_CONFIG_SRCDIR(README)
 
 # Gross hack to enable 'make dist' on automake 1.9+tar 1.14.
@@ -38,6 +46,10 @@
 AC_DEFINE_UNQUOTED(BASE_VERSION, "$BASE_VERSION", [Base version (Major.Minor)])
 AC_DEFINE_UNQUOTED(API_VERSION, "$API_VERSION", [Api version (Major.Minor)])
 
+EDS_MAJOR_VERSION=eds_major_version
+EDS_MINOR_VERSION=eds_minor_version
+EDS_MICRO_VERSION=eds_micro_version
+
 # Libtool versioning
 LIBEDATASERVER_CURRENT=11
 LIBEDATASERVER_REVISION=0
@@ -87,6 +99,9 @@
 LIBEBACKEND_REVISION=0
 LIBEBACKEND_AGE=0
 
+AC_SUBST(EDS_MAJOR_VERSION)
+AC_SUBST(EDS_MINOR_VERSION)
+AC_SUBST(EDS_MICRO_VERSION)
 AC_SUBST(LIBEDATASERVER_CURRENT)
 AC_SUBST(LIBEDATASERVER_REVISION)
 AC_SUBST(LIBEDATASERVER_AGE)
@@ -1418,7 +1433,7 @@
 
 dnl --- libedataserver, libedataserverui, libebackend flags
 
-E_DATA_SERVER_DEPS="libxml-2.0 libbonobo-2.0 gconf-2.0 $mozilla_nspr"
+E_DATA_SERVER_DEPS="libxml-2.0 libbonobo-2.0 libsoup-2.4 gconf-2.0 $mozilla_nspr"
 
 EVO_SET_COMPILE_FLAGS(E_DATA_SERVER, $E_DATA_SERVER_DEPS, $THREADS_CFLAGS $MANUAL_NSPR_CFLAGS, $THREADS_LIBS $MANUAL_NSPR_LIBS)
 AC_SUBST(E_DATA_SERVER_CFLAGS)
@@ -1685,6 +1700,7 @@
 libebackend/Makefile
 libebackend/libebackend.pc
 libedataserver/Makefile
+libedataserver/eds-version.h
 libedataserver/libedataserver.pc
 libedataserverui/Makefile
 libedataserverui/libedataserverui.pc

Modified: branches/camel-db-summary/docs/reference/libedataserver/libedataserver-docs.sgml
==============================================================================
--- branches/camel-db-summary/docs/reference/libedataserver/libedataserver-docs.sgml	(original)
+++ branches/camel-db-summary/docs/reference/libedataserver/libedataserver-docs.sgml	Mon May 19 03:12:09 2008
@@ -34,6 +34,7 @@
     <xi:include href="xml/e-util.xml"/>
     <xi:include href="xml/e-url.xml"/>
     <xi:include href="xml/e-xml-hash-utils.xml"/>
+    <xi:include href="xml/eds-version.xml"/>
     <xi:include href="xml/md5-utils.xml"/>
   </chapter>
 

Modified: branches/camel-db-summary/docs/reference/libedataserver/libedataserver-sections.txt
==============================================================================
--- branches/camel-db-summary/docs/reference/libedataserver/libedataserver-sections.txt	(original)
+++ branches/camel-db-summary/docs/reference/libedataserver/libedataserver-sections.txt	Mon May 19 03:12:09 2008
@@ -610,3 +610,16 @@
 e_xml_save_file
 e_xml_get_child_by_name
 </SECTION>
+
+<SECTION>
+<FILE>eds-version</FILE>
+<TITLE>Version Information</TITLE>
+eds_major_version
+eds_minor_version
+eds_micro_version
+eds_check_version
+EDS_MAJOR_VERSION
+EDS_MINOR_VERSION
+EDS_MICRO_VERSION
+EDS_CHECK_VERSION
+</SECTION>

Added: branches/camel-db-summary/docs/reference/libedataserver/tmpl/eds-version.sgml
==============================================================================
--- (empty file)
+++ branches/camel-db-summary/docs/reference/libedataserver/tmpl/eds-version.sgml	Mon May 19 03:12:09 2008
@@ -0,0 +1,79 @@
+<!-- ##### SECTION Title ##### -->
+Version Information
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### VARIABLE eds_major_version ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### VARIABLE eds_minor_version ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### VARIABLE eds_micro_version ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION eds_check_version ##### -->
+<para>
+
+</para>
+
+ required_major: 
+ required_minor: 
+ required_micro: 
+ Returns: 
+
+
+<!-- ##### MACRO EDS_MAJOR_VERSION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO EDS_MINOR_VERSION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO EDS_MICRO_VERSION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO EDS_CHECK_VERSION ##### -->
+<para>
+
+</para>
+
+ major: 
+ minor: 
+ micro: 
+
+

Modified: branches/camel-db-summary/libebackend/libebackend.pc.in
==============================================================================
--- branches/camel-db-summary/libebackend/libebackend.pc.in	(original)
+++ branches/camel-db-summary/libebackend/libebackend.pc.in	Mon May 19 03:12:09 2008
@@ -11,5 +11,5 @@
 Description: Utility library for Evolution Data Server Backends
 Version: @VERSION@
 Requires: glib-2.0
-Libs: -L${libdir} -lbackend- API_VERSION@
+Libs: -L${libdir} -lebackend- API_VERSION@
 Cflags: -I${privincludedir}

Modified: branches/camel-db-summary/libedataserver/Makefile.am
==============================================================================
--- branches/camel-db-summary/libedataserver/Makefile.am	(original)
+++ branches/camel-db-summary/libedataserver/Makefile.am	Mon May 19 03:12:09 2008
@@ -37,6 +37,7 @@
 	e-xml-utils.c			\
 	e-xml-hash-utils.c		\
 	libedataserver-private.h	\
+	eds-version.c			\
 	md5-utils.c
 
 libedataserver_1_2_la_LIBADD = 				\
@@ -74,6 +75,7 @@
 	e-data-server-util.h		\
 	e-xml-utils.h			\
 	e-xml-hash-utils.h		\
+	eds-version.h			\
 	md5-utils.h
 
 test_source_list_SOURCES = test-source-list.c
@@ -86,6 +88,7 @@
 pkgconfig_DATA = libedataserver-$(API_VERSION).pc
 
 EXTRA_DIST = 						\
-	$(pkgconfig_DATA:-$(API_VERSION).pc=.pc.in)
+	$(pkgconfig_DATA:-$(API_VERSION).pc=.pc.in)	\
+	eds-version.h.in
 
 DISTCLEANFILES = $(pkgconfig_DATA)

Added: branches/camel-db-summary/libedataserver/eds-version.c
==============================================================================
--- (empty file)
+++ branches/camel-db-summary/libedataserver/eds-version.c	Mon May 19 03:12:09 2008
@@ -0,0 +1,62 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2008 Novell, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU Lesser General Public
+ * License as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "eds-version.h"
+
+const guint eds_major_version = EDS_MAJOR_VERSION;
+const guint eds_minor_version = EDS_MINOR_VERSION;
+const guint eds_micro_version = EDS_MICRO_VERSION;
+
+/**
+ * eds_check_version:
+ * @required_major: the required major version
+ * @required_minor: the required minor version
+ * @required_micro: the required micro version
+ *
+ * Checks that the Evolution-Data-Server library in use is compatible with
+ * the given version.  Generally you would pass in the constants
+ * #EDS_MAJOR_VERSION, #EDS_MINOR_VERSION, #EDS_MICRO_VERSION as the three
+ * arguments to this function.  That produces a check that the library in
+ * use is compatible with the version of Evolution-Data-Server the
+ * application or module was compiled against.
+ *
+ * Returns: %NULL if the Evolution-Data-Server library is compatible with
+ * the given version, or a string describing the version mismatch.  The
+ * returned string is owned by libedataserver and must not be modified or
+ * freed.
+ *
+ * Since: 2.24
+ **/
+const gchar *
+eds_check_version (guint required_major,
+                   guint required_minor,
+                   guint required_micro)
+{
+	gint eds_effective_micro = 100 * EDS_MINOR_VERSION + EDS_MICRO_VERSION;
+	gint required_effective_micro = 100 * required_minor + required_micro;
+
+	if (required_major > EDS_MAJOR_VERSION)
+		return "EDS version too old (major mismatch)";
+	if (required_major < EDS_MAJOR_VERSION)
+		return "EDS version too new (major mismatch)";
+	if (required_effective_micro > eds_effective_micro)
+		return "EDS version too old (micro mismatch)";
+
+	return NULL;
+}

Added: branches/camel-db-summary/libedataserver/eds-version.h.in
==============================================================================
--- (empty file)
+++ branches/camel-db-summary/libedataserver/eds-version.h.in	Mon May 19 03:12:09 2008
@@ -0,0 +1,116 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2008 Novell, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU Lesser General Public
+ * License as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef EDS_VERSION_H
+#define EDS_VERSION_H
+
+#include <glib.h>
+
+/**
+ * EDS_MAJOR_VERSION:
+ *
+ * The major version number of the Evolution-Data-Server library.  Like
+ * eds_major_version(), but from the headers used at application compile
+ * time, rather than from the library linked against at application run
+ * time.
+ **/
+#define EDS_MAJOR_VERSION @EDS_MAJOR_VERSION@
+
+/**
+ * EDS_MINOR_VERSION:
+ *
+ * The minor version number of the Evolution-Data-Server library.  Like
+ * eds_minor_version(), but from the headers used at application compile
+ * time, rather than from the library linked against at application run
+ * time.
+ **/
+#define EDS_MINOR_VERSION @EDS_MINOR_VERSION@
+
+/**
+ * EDS_MICRO_VERSION:
+ *
+ * The micro version number of the Evolution-Data-Server library.  Like
+ * eds_micro_version(), but from the headers used at application compile
+ * time, rather than from the library linked against at application run
+ * time.
+ **/
+#define EDS_MICRO_VERSION @EDS_MICRO_VERSION@
+
+/**
+ * EDS_CHECK_VERSION:
+ * @major: the major version number
+ * @minor: the minor version number
+ * @micro: the micro version number
+ *
+ * Checks the version of the Evolution-Data-Server library.  Returns
+ * %TRUE if the version of the EDS header files is the same as or newer
+ * than the passed-in version.
+ **/
+#define EDS_CHECK_VERSION(major,minor,micro) \
+	(EDS_MAJOR_VERSION > (major) || \
+	(EDS_MAJOR_VERSION == (major) && EDS_MINOR_VERSION > (minor)) || \
+	(EDS_MAJOR_VERSION == (major) && EDS_MINOR_VERSION == (minor)) && \
+	 EDS_MICRO_VERSION >= (micro))
+
+G_BEGIN_DECLS
+
+/**
+ * eds_major_version:
+ *
+ * The major version number of the Evolution-Data-Server libraries.
+ * (e.g. in Evolution-Data-Server 2.24.1 this is 2.)
+ *
+ * This variable is in the library, so it represents the EDS library you
+ * have linked against.  Contrast with the EDS_MAJOR_VERSION macro, which
+ * represents the major version of the EDS headers you have included.
+ **/
+extern const guint eds_major_version;
+
+/**
+ * eds_minor_version:
+ *
+ * The minor version number of the Evolution-Data-Server libraries.
+ * (e.g. in Evolution-Data-Server 2.24.1 this is 24.)
+ *
+ * This variable is in the library, so it represents the EDS library you
+ * have linked against.  Contrast with the EDS_MINOR_VERSION macro, which
+ * represents the minor version of the EDS headers you have included.
+ **/
+extern const guint eds_minor_version;
+
+/**
+ * eds_micro_version:
+ *
+ * The micro version number of the Evolution-Data-Server libraries.
+ * (e.g. in Evolution-Data-Server 2.24.1 this is 1.)
+ *
+ * This variable is in the library, so it represents the EDS library you
+ * have linked against.  Contrast with the EDS_MICRO_VERSION macro, which
+ * represents the micro version of the EDS headers you have included.
+ **/
+extern const guint eds_micro_version;
+
+
+const gchar *	eds_check_version		(guint required_major,
+						 guint required_minor,
+						 guint required_micro);
+
+G_END_DECLS
+
+#endif /* EDS_VERSION_H */

Modified: branches/camel-db-summary/libedataserver/libedataserver.pc.in
==============================================================================
--- branches/camel-db-summary/libedataserver/libedataserver.pc.in	(original)
+++ branches/camel-db-summary/libedataserver/libedataserver.pc.in	Mon May 19 03:12:09 2008
@@ -10,6 +10,6 @@
 Name: libedataserver
 Description: Utility library for Evolution Data Server
 Version: @VERSION@
-Requires: libxml-2.0 glib-2.0 gconf-2.0 libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ ORBit-2.0 >= @ORBIT_REQUIRED@
+Requires: libxml-2.0 glib-2.0 gconf-2.0 libsoup-2.4 libbonobo-2.0 >= @LIBBONOBO_REQUIRED@ ORBit-2.0 >= @ORBIT_REQUIRED@
 Libs: -L${libdir} -ledataserver- API_VERSION@
 Cflags: -I${privincludedir}

Modified: branches/camel-db-summary/libedataserverui/e-passwords.c
==============================================================================
--- branches/camel-db-summary/libedataserverui/e-passwords.c	(original)
+++ branches/camel-db-summary/libedataserverui/e-passwords.c	Mon May 19 03:12:09 2008
@@ -958,13 +958,16 @@
 update_capslock_state (gpointer widget, gpointer event, GtkWidget *label)
 {
 	GdkModifierType mask = 0;
+	gchar *markup = NULL;
 
 	gdk_window_get_pointer (NULL, NULL, NULL, &mask);
 
-	if (mask & GDK_LOCK_MASK)
-		gtk_widget_show (label);
-	else
-		gtk_widget_hide (label);
+	/* The space acts as a vertical placeholder. */
+	markup = g_markup_printf_escaped (
+		"<small>%s</small>", (mask & GDK_LOCK_MASK) ?
+	 	 _("You have the Caps Lock key on.") : " ");
+	gtk_label_set_markup (GTK_LABEL (label), markup);
+	g_free (markup);
 
 	return FALSE;
 }
@@ -972,7 +975,7 @@
 static void
 ep_ask_password (EPassMsg *msg)
 {
-	GtkWidget *widget, *capslock_box;
+	GtkWidget *widget;
 	GtkWidget *container;
 	gint type = msg->flags & E_PASSWORDS_REMEMBER_MASK;
 	guint noreply = msg->noreply;
@@ -1006,8 +1009,9 @@
 	/* Table */
 	container = gtk_table_new (2, 3, FALSE);
 	gtk_table_set_col_spacings (GTK_TABLE (container), 12);
-	gtk_table_set_row_spacings (GTK_TABLE (container), 12);
-	gtk_table_set_row_spacing (GTK_TABLE (container), 1, 6);
+	gtk_table_set_row_spacings (GTK_TABLE (container), 6);
+	gtk_table_set_row_spacing (GTK_TABLE (container), 0, 12);
+	gtk_table_set_row_spacing (GTK_TABLE (container), 1, 0);
 	gtk_widget_show (container);
 
 	gtk_box_pack_start (
@@ -1033,7 +1037,7 @@
 
 	gtk_table_attach (
 		GTK_TABLE (container), widget,
-		1, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
+		1, 2, 0, 1, GTK_EXPAND | GTK_FILL, 0, 0, 0);
 
 	/* Password Entry */
 	widget = gtk_entry_new ();
@@ -1057,20 +1061,23 @@
 
 	gtk_table_attach (
 		GTK_TABLE (container), widget,
-		1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
+		1, 2, 1, 2, GTK_EXPAND | GTK_FILL, 0, 0, 0);
+
+	/* Caps Lock Label */
+	widget = gtk_label_new (NULL);
+	update_capslock_state (NULL, NULL, widget);
+	gtk_widget_show (widget);
 
-	capslock_box = gtk_hbox_new (FALSE, 0);
-	gtk_box_pack_start (GTK_BOX (capslock_box), gtk_label_new (""), FALSE, FALSE, 0);
-	widget = gtk_label_new (_("You have the Caps Lock key on."));
-	gtk_box_pack_start (GTK_BOX (capslock_box), widget, TRUE, TRUE, 0);
-	gtk_widget_show_all (capslock_box);
 	gtk_table_attach (
-		GTK_TABLE (container), capslock_box,
-		1, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
+		GTK_TABLE (container), widget,
+		1, 2, 2, 3, GTK_EXPAND | GTK_FILL, 0, 0, 0);
 
-	g_signal_connect (password_dialog, "key-release-event", G_CALLBACK (update_capslock_state), widget);
-	g_signal_connect (password_dialog, "focus-in-event", G_CALLBACK (update_capslock_state), widget);
-	update_capslock_state (NULL, NULL, widget);
+	g_signal_connect (
+		password_dialog, "key-release-event",
+		G_CALLBACK (update_capslock_state), widget);
+	g_signal_connect (
+		password_dialog, "focus-in-event",
+		G_CALLBACK (update_capslock_state), widget);
 
 	/* static password, shouldn't be remembered between sessions,
 	   but will be remembered within the session beyond our control */



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