aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
authorMiguel de Icaza <miguel@src.gnome.org>2001-01-12 14:10:15 +0800
committerMiguel de Icaza <miguel@src.gnome.org>2001-01-12 14:10:15 +0800
commitb6dfb325fb13f01c2aa56f448775628aa176b4f2 (patch)
treece7ea6e1f3125f04b0815513a77b2f42e44c1000 /widgets
parent3a2bdee42de910df9b28be8b6538fbf69a9c90a9 (diff)
downloadgsoc2013-evolution-b6dfb325fb13f01c2aa56f448775628aa176b4f2.tar.gz
gsoc2013-evolution-b6dfb325fb13f01c2aa56f448775628aa176b4f2.tar.zst
gsoc2013-evolution-b6dfb325fb13f01c2aa56f448775628aa176b4f2.zip
*** empty log message ***
svn path=/trunk/; revision=7437
Diffstat (limited to 'widgets')
-rw-r--r--widgets/table/e-table-header-item.c2
-rw-r--r--widgets/table/e-table-sort-info.c123
2 files changed, 119 insertions, 6 deletions
diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c
index 71ae0e0c1e..c5dae4685a 100644
--- a/widgets/table/e-table-header-item.c
+++ b/widgets/table/e-table-header-item.c
@@ -5,7 +5,7 @@
* Author:
* Miguel de Icaza (miguel@gnu.org)
*
- * Copyright 1999, 2000 Helix Code, Inc.
+ * Copyright 1999, 2000, 2001 Ximian, Inc.
*/
#include <config.h>
#include <gtk/gtksignal.h>
diff --git a/widgets/table/e-table-sort-info.c b/widgets/table/e-table-sort-info.c
index c7f5f12525..6e7c6d1697 100644
--- a/widgets/table/e-table-sort-info.c
+++ b/widgets/table/e-table-sort-info.c
@@ -4,8 +4,9 @@
*
* Author:
* Miguel de Icaza (miguel@gnu.org)
+ * Chris Lahey (clahey@ximian.com)
*
- * (C) 1999 Helix Code, Inc.
+ * (C) 1999, 2000, 2001 Ximian, Inc.
*/
#include <config.h>
#include <gtk/gtksignal.h>
@@ -117,16 +118,41 @@ e_table_sort_info_group_info_changed (ETableSortInfo *info)
}
}
+/**
+ * e_table_sort_info_freeze:
+ * @info: The ETableSortInfo object
+ *
+ * This functions allows the programmer to cluster various changes to the
+ * ETableSortInfo (grouping and sorting) without having the object emit
+ * "group_info_changed" or "sort_info_changed" signals on each change.
+ *
+ * To thaw, invoke the e_table_sort_info_thaw() function, which will
+ * trigger any signals that might have been queued.
+ */
void
e_table_sort_info_freeze (ETableSortInfo *info)
{
- info->frozen = 1;
+ info->frozen++;
}
+/**
+ * e_table_sort_info_thaw:
+ * @info: The ETableSortInfo object
+ *
+ * This functions allows the programmer to cluster various changes to the
+ * ETableSortInfo (grouping and sorting) without having the object emit
+ * "group_info_changed" or "sort_info_changed" signals on each change.
+ *
+ * This function will flush any pending signals that might be emited by
+ * this object.
+ */
void
e_table_sort_info_thaw (ETableSortInfo *info)
{
- info->frozen = 0;
+ info->frozen--;
+ if (info->frozen != 0)
+ return;
+
if (info->sort_info_changed) {
info->sort_info_changed = 0;
e_table_sort_info_sort_info_changed(info);
@@ -137,7 +163,12 @@ e_table_sort_info_thaw (ETableSortInfo *info)
}
}
-
+/**
+ * e_table_sort_info_grouping_get_count:
+ * @info: The ETableSortInfo object
+ *
+ * Returns: the number of grouping criteria in the object.
+ */
guint
e_table_sort_info_grouping_get_count (ETableSortInfo *info)
{
@@ -156,6 +187,14 @@ e_table_sort_info_grouping_real_truncate (ETableSortInfo *info, int length)
}
}
+/**
+ * e_table_sort_info_grouping_truncate:
+ * @info: The ETableSortInfo object
+ * @lenght: position where the truncation happens.
+ *
+ * This routine can be used to reduce or grow the number of grouping
+ * criteria in the object.
+ */
void
e_table_sort_info_grouping_truncate (ETableSortInfo *info, int length)
{
@@ -163,6 +202,13 @@ e_table_sort_info_grouping_truncate (ETableSortInfo *info, int length)
e_table_sort_info_group_info_changed(info);
}
+/**
+ * e_table_sort_info_grouping_get_nth:
+ * @info: The ETableSortInfo object
+ * @n: Item information to fetch.
+ *
+ * Returns: the description of the @n-th grouping criteria in the @info object.
+ */
ETableSortColumn
e_table_sort_info_grouping_get_nth (ETableSortInfo *info, int n)
{
@@ -174,6 +220,15 @@ e_table_sort_info_grouping_get_nth (ETableSortInfo *info, int n)
}
}
+/**
+ * e_table_sort_info_grouping_set_nth:
+ * @info: The ETableSortInfo object
+ * @n: Item information to fetch.
+ * @column: new values for the grouping
+ *
+ * Sets the grouping criteria for index @n to be given by @column (a column number and
+ * whether it is ascending or descending).
+ */
void
e_table_sort_info_grouping_set_nth (ETableSortInfo *info, int n, ETableSortColumn column)
{
@@ -185,6 +240,12 @@ e_table_sort_info_grouping_set_nth (ETableSortInfo *info, int n, ETableSortCol
}
+/**
+ * e_table_sort_info_get_count:
+ * @info: The ETableSortInfo object
+ *
+ * Returns: the number of sorting criteria in the object.
+ */
guint
e_table_sort_info_sorting_get_count (ETableSortInfo *info)
{
@@ -203,6 +264,14 @@ e_table_sort_info_sorting_real_truncate (ETableSortInfo *info, int length)
}
}
+/**
+ * e_table_sort_info_sorting_truncate:
+ * @info: The ETableSortInfo object
+ * @lenght: position where the truncation happens.
+ *
+ * This routine can be used to reduce or grow the number of sort
+ * criteria in the object.
+ */
void
e_table_sort_info_sorting_truncate (ETableSortInfo *info, int length)
{
@@ -210,6 +279,13 @@ e_table_sort_info_sorting_truncate (ETableSortInfo *info, int length)
e_table_sort_info_sort_info_changed(info);
}
+/**
+ * e_table_sort_info_sorting_get_nth:
+ * @info: The ETableSortInfo object
+ * @n: Item information to fetch.
+ *
+ * Returns: the description of the @n-th grouping criteria in the @info object.
+ */
ETableSortColumn
e_table_sort_info_sorting_get_nth (ETableSortInfo *info, int n)
{
@@ -221,6 +297,15 @@ e_table_sort_info_sorting_get_nth (ETableSortInfo *info, int n)
}
}
+/**
+ * e_table_sort_info_sorting_get_nth:
+ * @info: The ETableSortInfo object
+ * @n: Item information to fetch.
+ * @column: new values for the sorting
+ *
+ * Sets the sorting criteria for index @n to be given by @column (a
+ * column number and whether it is ascending or descending).
+ */
void
e_table_sort_info_sorting_set_nth (ETableSortInfo *info, int n, ETableSortColumn column)
{
@@ -231,13 +316,31 @@ e_table_sort_info_sorting_set_nth (ETableSortInfo *info, int n, ETableSortColu
e_table_sort_info_sort_info_changed(info);
}
-
+/**
+ * e_table_sort_info_new:
+ *
+ * This creates a new e_table_sort_info object that contains no
+ * grouping and no sorting defined as of yet. This object is used
+ * to keep track of multi-level sorting and multi-level grouping of
+ * the ETable.
+ *
+ * Returns: A new %ETableSortInfo object
+ */
ETableSortInfo *
e_table_sort_info_new (void)
{
return gtk_type_new (e_table_sort_info_get_type ());
}
+/**
+ * e_table_sort_info_load_from_node:
+ * @info: The ETableSortInfo object
+ * @node: pointer to the xmlNode that describes the sorting and grouping information
+ * @state_version:
+ *
+ * This loads the state for the %ETableSortInfo object @info from the
+ * xml node @node.
+ */
void
e_table_sort_info_load_from_node (ETableSortInfo *info,
xmlNode *node,
@@ -279,6 +382,16 @@ e_table_sort_info_load_from_node (ETableSortInfo *info,
}
}
+/**
+ * e_table_sort_info_save_to_node:
+ * @info: The ETableSortInfo object
+ * @parent: xmlNode that will be hosting the saved state of the @info object.
+ *
+ * This function is used
+ *
+ * Returns: the node that has been appended to @parent as a child containing
+ * the sorting and grouping information for this ETableSortInfo object.
+ */
xmlNode *
e_table_sort_info_save_to_node (ETableSortInfo *info,
xmlNode *parent)
tgraph'>* - Fix build with gcc 4.2miwi2007-06-062-1/+12 * Manages LDAP entries for the BIND9 SDB LDAP patch.miwi2007-06-044-0/+52 * Update to 0.6.14krion2007-06-013-4/+6 * Update to 0.6.12krion2007-06-012-4/+4 * - Make setuid operation and user creation configurable, as requested by usersmiwi2007-05-303-14/+23 * - Update to 1.2.12.06miwi2007-05-262-4/+4 * - Welcome X.org 7.2 \o/.flz2007-05-205-3/+5 * Removed on authors request until the program has reached maturity.edwin2007-05-034-48/+0 * DNSCAP - DNS traffic capture utilityedwin2007-05-034-0/+48 * - Update to 1.4.3miwi2007-05-012-4/+4 * Update to version 9.4.1, a security update from ISC:dougb2007-05-016-24/+24 * - make portlint happierdinoex2007-04-301-2/+2 * Fix recursive resolver.ale2007-04-304-2/+26 * - Update PowerDNS to 2.9.21clsung2007-04-2732-2548/+672 * Update to 1.5.0lioux2007-04-253-4/+16 * - Update to 1.1.2ehaupt2007-04-213-5/+5 * - Update to 1.96.2miwi2007-04-182-4/+5 * - Update to 2.3.7miwi2007-04-182-5/+4 * Fix build if automake is installed.krion2007-04-161-0/+2 * - Update to 0.31clsung2007-04-152-4/+4 * Fix nss_mdns when used from applications other than ssh.bms2007-04-122-41/+7 * - updated maintainer e-mail addressmm2007-04-051-1/+1 * - Remove DESTDIR support from my ports as it is useless now. New implementationgabor2007-04-011-2/+2 * - Change my email.stas2007-03-282-2/+2 * - Fix build on gcc 4.1pav2007-03-264-17/+14 * - WWWDIR is now defined in bsd.ports.mkpav2007-03-242-13/+7 * - Fix PostgreSQL schemapav2007-03-234-6/+6 * - Update to 3.0.5miwi2007-03-222-4/+4 * - Update to 0.06clsung2007-03-082-4/+4 * - Update to 20070219miwi2007-03-072-4/+4 * Reset inactive maintainer due to maintainer-timeouts and no response to email.linimon2007-03-051-1/+1 * - Update OpenDBX patch, as found on www.linuxnetworkds.de, whichrafan2007-03-036-130/+174 * - Update to 2.6gabor2007-03-018-66/+135 * - Update to 2.1.4miwi2007-02-273-11/+11 * Update to the release version of 9.4.0.dougb2007-02-266-24/+24 * POE::Component::Server::DNS is a POE component that implements a DNS server.gabor2007-02-255-0/+51 * - Updated to 1.2.12.05nivit2007-02-223-5/+5 * - Create the cache file directly in /var/tmpsat2007-02-191-1/+2 * - Update to 3.7.1sat2007-02-183-29/+10 * - Remove support for FreeBSD 4.xgabor2007-02-183-75/+0 * - Update to 2.38miwi2007-02-142-4/+4 * Update to 1.2.1perky2007-02-122-6/+5 * - bump openldap versiondinoex2007-02-121-1/+1 * - Update to 2.0.3 [1]hq2007-02-112-5/+5 * Net::DNS::Resolver::Programmable is a Net::DNS::Resolvermiwi2007-02-115-0/+61 * - Update to 2.37miwi2007-02-103-4/+15 * - Update to 20070105rafan2007-02-082-5/+5 * - Add new OpenDBX patch (from [1]).alepulver2007-02-078-163/+159 * - Remove semi-staticmiwi2007-02-071-7/+0 * Update to 1.00skv2007-02-072-5/+5 * - Fix plist if NOPORTDOCS is definedmarkus2007-02-031-8/+3 * - Fix plist if NOPORTDOCS is definedmarkus2007-02-031-2/+3 * Use libtool port instead of included version to avoid objformat a.out botchkris2007-02-012-0/+2 * - Patch net/libnet* to versioned libraries and header files, so they canpav2007-01-311-5/+7 * - Remove SQLITE3 backend option, it was added prematurelypav2007-01-316-46/+10 * - Remove stray empty filepav2007-01-312-0/+0 * Remove USE_GPG from all effected ports. This knob is a no-op and the way itgabor2007-01-302-7/+0 * Complete the update for bind94 after the repocopy, and hook it up.dougb2007-01-2913-96/+148 * Update to 0.6.10krion2007-01-282-4/+4 * - Update to 3.0.4rafan2007-01-262-4/+4 * Add USE_GMAKE.bms2007-01-251-0/+1 * Upgrade to version 9.3.4, the latest from ISC, which addresses thedougb2007-01-258-32/+32 * Add WITH_COMPAT5X option. It is to build nss_resinit.so which is ableume2007-01-232-0/+29 * - Remove empty plistpav2007-01-231-0/+0 * - Update to 2.36miwi2007-01-222-4/+4 * Really fix the getaddrinfo() interface. Now 'ssh foo.local' should work.bms2007-01-211-15/+47 * Fix getaddrinfo(). Note that 'ssh foo.local' still doesn't work, becausebms2007-01-201-10/+7 * Add new port nss_mdns, a libc name service switch module for resolvingbms2007-01-209-0/+747 * - Add a sensible default for maximal size of cachepav2007-01-193-1/+59 * - Add support for geo backendgabor2007-01-1324-539/+2529 * - Update to 0.4.0miwi2007-01-133-70/+72 * Add ipv6 to the categories.erwin2007-01-121-1/+1 * - Fix typomiwi2007-01-111-3/+12 * Remove broken mirrorehaupt2007-01-091-1/+0 * The Four Calorie DNS Server is a very simple dns server that can power amiwi2007-01-085-0/+107 * - Update to 1.2.0erwin2007-01-063-8/+7 * - Update to 1.2.5gabor2007-01-032-5/+4 * - Respect CC and CFLAGSmiwi2006-12-301-0/+6 * - update dnstop to 20061122 version.clsung2006-12-262-4/+4 * Add pear-Net_DNS 1.0.0, resolver library used to communicate with a DNSrafan2006-12-234-0/+39 * - unbreak under old perltobez2006-12-221-4/+8 * Apply the markup fixes from the base to the nsupdate.8 anddougb2006-12-214-0/+32 * - Update to 1.2.12.04miwi2006-12-143-104/+70 * - Update to 3.0.3miwi2006-12-132-4/+4 * Add ipv6 secondary category.shaun2006-12-111-1/+1 * Update to 0.6.9krion2006-12-102-4/+4 * Upgrade to version 9.3.3, the latest from ISC. This isdougb2006-12-108-32/+32 * - Save user's checkdns.conf and install checkdns.conf-dist.miwi2006-12-093-13/+22 * - Update to 0.40clsung2006-12-092-4/+4 * Change my e-mail address.gabor2006-12-082-2/+2 * Update to c-ares 1.3.2.roam2006-12-063-6/+69 * Update to 0.05.tobez2006-12-052-4/+4 * Update to 0.04.tobez2006-12-022-4/+4 * - Add BUILD_STATIC knobmiwi2006-11-231-1/+7 * - Fix pkg-plistmiwi2006-11-212-0/+3