aboutsummaryrefslogtreecommitdiffstats
path: root/www/fcgi
diff options
context:
space:
mode:
authorvs <vs@FreeBSD.org>2005-07-27 21:31:55 +0800
committervs <vs@FreeBSD.org>2005-07-27 21:31:55 +0800
commite57b983f82d81117a282b692b6c63b1ee21956f3 (patch)
tree9a1c129e96db8bf9c472e48233a9a8603b45b81d /www/fcgi
parentf22fa51777237c1a5c2b9707db3386e3df2d4e5d (diff)
downloadfreebsd-ports-gnome-e57b983f82d81117a282b692b6c63b1ee21956f3.tar.gz
freebsd-ports-gnome-e57b983f82d81117a282b692b6c63b1ee21956f3.tar.zst
freebsd-ports-gnome-e57b983f82d81117a282b692b6c63b1ee21956f3.zip
Unbreak
PR: ports/83854 Submitted by: Ports Fury
Diffstat (limited to 'www/fcgi')
0 files changed, 0 insertions, 0 deletions
* e-table-sorting-utils.c, e-table-sorting-utils.h: Switched to using e_sort and e_search instead of qsort and a linear search. Added the tree functions e_table_sorting_utils_tree_sort, e_table_sorting_utils_tree_check_position, and e_table_sorting_utils_tree_insert. * e-tree-sorted.c: Made this actually do sorting. * e-tree-table-adapter.c (etta_proxy_node_changed): The old_size needs to be the number of visible children + 1 to include the top node. * e-tree.c (e_tree_set_state_object): Set the sort_info on the ETreeSorted when you get a new sort_info. 2001-03-16 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-tree-sorted.c and e-tree-sorted.h. * e-table-item.c (eti_realize_cell_views): Only realize the cells if they're not realized already and if the canvas is realized. * e-table-sorted.c (ets_proxy_model_cell_changed): Matched the change to the signature of e_table_sorting_utils_affects_sort. * e-table-sorting-utils.c, e-table-sorting-utils.h (e_table_sorting_utils_affects_sort): Changed the signature of this function to not take the ETableModel source since it doesn't use it and we need to use this function for ETreeSorted which doesn't have an ETableModel. * e-tree-memory.c (etmm_get_expanded_default): Actually implement the get_expanded_default for this tree. * e-tree-model.h: Cleaned up the indentation here. * e-tree-sorted.c, e-tree-sorted.h: New class meant to be used for sorting trees. It doesn't actually sort yet. It simply acts as an ETreeProxy which is the hardest part of making ETreeSorted. * e-tree.c, e-tree.h: Made this use an ETreeSorted. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c, e-table-item.h, e-table-selection-model.c, e-table-selection-model.h, e-table-sorted.c, e-table-sorted.h, e-table-subset.c, e-table-subset.h, e-table.c, e-table.h: Switch to handling e_table_model_rows_inserted instead of e_table_model_row_inserted and e_table_model_rows_deleted instead of e_table_model_row_deleted. * e-table-model.c, e-table-model.h: Replaced the signals "model_row_inserted" and "model_row_deleted" with "model_rows_inserted" and "model_rows_deleted" so that when multiple rows are inserted or deleted at the same time they can be handled properly. * e-tree-table-adapter.c: Call "model_rows_inserted" and "model_rows_deleted" instead of "model_changed" when inserting or deleting multiple rows. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (e_table_item_row_diff): Made this not count the pixel between rows if it isn't there. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_header_structure_changed): Properly attach & realize cell views here. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-tree-table-adapter.c (etta_proxy_node_removed): Check that parent_node and parent aren't NULL before making function calls on them. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (confirm_height_cache): Fixed a height cache miscalculation. * e-tree-table-adapter.c (find_first_child_node): Made the semantics of this mean that find_first_child_node(adapter, -1) means return the first node in the tree. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-table-extras.c: Added a "string-integer" comparison function to the default %ETableExtras so you can do comparisons based on integer value even if you using strings for the data (this lets you do editable numbers, for instance.) * e-table-item.c: Rearranged it a bit so that if you have draw_grid off it doesn't add space for the horizontal lines, nor leave them the background color. * e-table-model.c, e-table-model.h: Added the row_save_id and has_save_id methods to %ETableModel. * e-tree.c, e-tree.h: Replaced e_tree_compute_location with e_tree_get_cell_at. 2001-03-08 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-table/e-table-utils.c, e-table/e-tree-memory-callbacks.c, e-table/e-tree-memory.c, e-table/e-tree-scrolled.c, e-table/e-tree-table-adapter.c, and e-table/e-tree.c. Removed e-table/e-tree-simple.c. Added e-table/e-table-utils.h, e-table/e-tree-memory-callbacks.h, e-table/e-tree-memory.h, e-table/e-tree-scrolled.h, e-table/e-tree-table-adapter.h, and e-table/e-tree.h. Removed e-table/e-tree-simple.h. * e-cell-tree.c: Updated this for the new tree. * e-table-item.c: Added some redraw requests where appropriate. * e-table-item.h: Fixed an incorrect class method declaration. * e-table-model.c, e-table-model.h: Removed e_table_model_has_sort_group and e_table_model_row_sort_group. * e-table-scrolled.h: Removed unused headers. * e-table-simple.c, e-table-simple.h: Rearranged this a bit. * e-table-sorter.c, e-table-sorting-utils.c, e-table-sorting-utils.h: Removed sort group stuff. Added the function e_table_sorting_utils_check_position. * e-table-utils.c, e-table-utils.h: Utility functions for ETable and ETree. * e-table.c: Moved some of the functionality from here to e-table-utils.c so that it can be reused by ETree. * e-tree-memory-callbacks.c, e-tree-memory-callbacks.h: Class to implement an ETreeMemory as callbacks instead of overriding the class. * e-tree-memory.c, e-tree-memory.h: ETreeModel that stores a tree of physical nodes. * e-tree-model.c, e-tree-model.h: Removed most of the functionality from here to the classes ETreeMemory and ETreeTableAdapter. This is now just a simple virtualized tree class. * e-tree-scrolled.c, e-tree-scrolled.h: New class. An ETree in an EScrollFrame. * e-tree-simple.c: Small change. This is no longer used. * e-tree-table-adapter.c, e-tree-table-adapter.h: ETableModel that represents an ETreeModel as a table. * e-tree.c, e-tree.h: New super class kind of like ETable but for trees. End of branch svn path=/trunk/; revision=8837
Diffstat (limited to 'widgets')
-rw-r--r--widgets/table/e-cell-tree.c105
-rw-r--r--widgets/table/e-table-config.c6
-rw-r--r--widgets/table/e-table-extras.c10
-rw-r--r--widgets/table/e-table-item.c131
-rw-r--r--widgets/table/e-table-item.h6
-rw-r--r--widgets/table/e-table-model.c171
-rw-r--r--widgets/table/e-table-model.h32
-rw-r--r--widgets/table/e-table-scrolled.h2
-rw-r--r--widgets/table/e-table-selection-model.c129
-rw-r--r--widgets/table/e-table-selection-model.h9
-rw-r--r--widgets/table/e-table-simple.h10
-rw-r--r--widgets/table/e-table-sorted.c81
-rw-r--r--widgets/table/e-table-sorter.c176
-rw-r--r--widgets/table/e-table-sorting-utils.c562
-rw-r--r--widgets/table/e-table-sorting-utils.h60
-rw-r--r--widgets/table/e-table-subset.c32
-rw-r--r--widgets/table/e-table-subset.h8
-rw-r--r--widgets/table/e-table-utils.c111
-rw-r--r--widgets/table/e-table-utils.h22
-rw-r--r--widgets/table/e-table.c150
-rw-r--r--widgets/table/e-table.h4
-rw-r--r--widgets/table/e-tree-memory-callbacks.c231
-rw-r--r--widgets/table/e-tree-memory-callbacks.h88
-rw-r--r--widgets/table/e-tree-memory.c548
-rw-r--r--widgets/table/e-tree-memory.h54
-rw-r--r--widgets/table/e-tree-model.c1755
-rw-r--r--widgets/table/e-tree-model.h202
-rw-r--r--widgets/table/e-tree-scrolled.c207
-rw-r--r--widgets/table/e-tree-scrolled.h54
-rw-r--r--widgets/table/e-tree-simple.c2
-rw-r--r--widgets/table/e-tree-sorted.c1126
-rw-r--r--widgets/table/e-tree-sorted.h53
-rw-r--r--widgets/table/e-tree-table-adapter.c974
-rw-r--r--widgets/table/e-tree-table-adapter.h64
-rw-r--r--widgets/table/e-tree.c2004
-rw-r--r--widgets/table/e-tree.h289
36 files changed, 7007 insertions, 2461 deletions
diff --git a/widgets/table/e-cell-tree.c b/widgets/table/e-cell-tree.c
index 62c78da748..c38d2efce7 100644
--- a/widgets/table/e-cell-tree.c
+++ b/widgets/table/e-cell-tree.c
@@ -13,6 +13,9 @@
*/
#include <config.h>
+
+#include "e-cell-tree.h"
+
#include <gtk/gtkenums.h>
#include <gtk/gtkentry.h>
#include <gtk/gtkwindow.h>
@@ -21,9 +24,9 @@
#include <gdk/gdkkeysyms.h>
#include <libgnomeui/gnome-canvas.h>
#include <stdio.h>
-#include "e-table-sorted-variable.h"
+
+#include "e-tree-table-adapter.h"
#include "e-tree-model.h"
-#include "e-cell-tree.h"
#include "gal/util/e-util.h"
#include "e-table-item.h"
@@ -49,29 +52,38 @@ static ECellClass *parent_class;
#define INDENT_AMOUNT 16
-static int
-visible_depth_of_node (ETreeModel *tree_model, ETreePath *path)
+static ETreePath
+e_cell_tree_get_node (ETableModel *table_model, int row)
{
- return (e_tree_model_node_depth (tree_model, path)
- - (e_tree_model_root_node_is_visible (tree_model) ? 0 : 1));
+ return e_table_model_value_at (table_model, -1, row);
}
-static gint
-offset_of_node (ETreeModel *tree_model, ETreePath *path)
+static ETreeModel*
+e_cell_tree_get_tree_model (ETableModel *table_model, int row)
{
- return (visible_depth_of_node(tree_model, path) + 1) * INDENT_AMOUNT;
+ return e_table_model_value_at (table_model, -2, row);
}
-static ETreePath*
-e_cell_tree_get_node (ETableModel *table_model, int row)
+static ETreeTableAdapter *
+e_cell_tree_get_tree_table_adapter (ETableModel *table_model, int row)
{
- return (ETreePath*)e_table_model_value_at (table_model, -1, row);
+ return e_table_model_value_at (table_model, -3, row);
}
-static ETreeModel*
-e_cell_tree_get_tree_model (ETableModel *table_model, int row)
+static int
+visible_depth_of_node (ETableModel *model, int row)
{
- return (ETreeModel*)e_table_model_value_at (table_model, -2, row);
+ ETreeModel *tree_model = e_cell_tree_get_tree_model(model, row);
+ ETreeTableAdapter *adapter = e_cell_tree_get_tree_table_adapter(model, row);
+ ETreePath path = e_cell_tree_get_node(model, row);
+ return (e_tree_model_node_depth (tree_model, path)
+ - (e_tree_table_adapter_root_node_is_visible (adapter) ? 0 : 1));
+}
+
+static gint
+offset_of_node (ETableModel *table_model, int row)
+{
+ return (visible_depth_of_node(table_model, row) + 1) * INDENT_AMOUNT;
}
/*
@@ -159,7 +171,8 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
{
ECellTreeView *tree_view = (ECellTreeView *)ecell_view;
ETreeModel *tree_model = e_cell_tree_get_tree_model(ecell_view->e_table_model, row);
- ETreePath *node;
+ ETreeTableAdapter *tree_table_adapter = e_cell_tree_get_tree_table_adapter(ecell_view->e_table_model, row);
+ ETreePath node;
GdkRectangle rect, *clip_rect;
GtkWidget *canvas = GTK_WIDGET (tree_view->canvas);
GdkGC *fg_gc = canvas->style->fg_gc[GTK_STATE_ACTIVE];
@@ -175,21 +188,21 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
if (/* XXX */ TRUE) {
GdkPixbuf *node_image;
int node_image_width = 0, node_image_height = 0;
- ETreePath *parent_node;
+ ETreePath parent_node;
node = e_cell_tree_get_node (ecell_view->e_table_model, row);
expandable = e_tree_model_node_is_expandable (tree_model, node);
- expanded = e_tree_model_node_is_expanded (tree_model, node);
+ expanded = e_tree_table_adapter_node_is_expanded (tree_table_adapter, node);
- if (visible_depth_of_node (tree_model, node) > 0 || expandable) {
- offset = offset_of_node (tree_model, node);
+ if (visible_depth_of_node (ecell_view->e_table_model, row) > 0 || expandable) {
+ offset = offset_of_node (ecell_view->e_table_model, row);
} else {
offset = 0;
}
subcell_offset = offset;
- node_image = e_tree_model_icon_of_node (tree_model, node);
+ node_image = e_tree_model_icon_at (tree_model, node);
if (node_image) {
node_image_width = gdk_pixbuf_get_width (node_image);
@@ -219,7 +232,9 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
/* draw our lines */
if (E_CELL_TREE(tree_view->cell_view.ecell)->draw_lines) {
- if (visible_depth_of_node (tree_model, node) > 0
+ int depth;
+
+ if (visible_depth_of_node (ecell_view->e_table_model, row) > 0
|| e_tree_model_node_get_children (tree_model, node, NULL) > 0)
gdk_draw_line (drawable, tree_view->gc,
rect.x + offset - INDENT_AMOUNT / 2 + 1,
@@ -227,7 +242,7 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
rect.x + offset,
rect.y + rect.height / 2);
- if (visible_depth_of_node (tree_model, node) != 0) {
+ if (visible_depth_of_node (ecell_view->e_table_model, row) != 0) {
gdk_draw_line (drawable, tree_view->gc,
rect.x + offset - INDENT_AMOUNT / 2,
rect.y,
@@ -242,7 +257,8 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
correct vertical pipe for it's configuration. */
parent_node = e_tree_model_node_get_parent (tree_model, node);
offset -= INDENT_AMOUNT;
- while (parent_node && visible_depth_of_node (tree_model, parent_node) != 0) {
+ depth = visible_depth_of_node (ecell_view->e_table_model, row) - 1;
+ while (parent_node && depth != 0) {
if (e_tree_model_node_get_next(tree_model, parent_node)) {
gdk_draw_line (drawable, tree_view->gc,
rect.x + offset - INDENT_AMOUNT / 2,
@@ -251,6 +267,7 @@ ect_draw (ECellView *ecell_view, GdkDrawable *drawable,
rect.y + rect.height);
}
parent_node = e_tree_model_node_get_parent (tree_model, parent_node);
+ depth --;
offset -= INDENT_AMOUNT;
}
}
@@ -309,8 +326,9 @@ ect_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_col,
{
ECellTreeView *tree_view = (ECellTreeView *) ecell_view;
ETreeModel *tree_model = e_cell_tree_get_tree_model (ecell_view->e_table_model, row);
- ETreePath *node = e_cell_tree_get_node (ecell_view->e_table_model, row);
- int offset = offset_of_node (tree_model, node);
+ ETreeTableAdapter *tree_table_adapter = e_cell_tree_get_tree_table_adapter(ecell_view->e_table_model, row);
+ ETreePath node = e_cell_tree_get_node (ecell_view->e_table_model, row);
+ int offset = offset_of_node (ecell_view->e_table_model, row);
switch (event->type) {
case GDK_BUTTON_PRESS: {
@@ -320,9 +338,9 @@ ect_event (ECellView *ecell_view, GdkEvent *event, int model_col, int view_col,
/* only activate the tree control if the click/release happens in the icon's area. */
if (event->button.x > (offset - INDENT_AMOUNT) && event->button.x < offset) {
if (e_tree_model_node_is_expandable (tree_model, node)) {
- e_tree_model_node_set_expanded (tree_model,
- node,
- !e_tree_model_node_is_expanded(tree_model, node));
+ e_tree_table_adapter_node_set_expanded (tree_table_adapter,
+ node,
+ !e_tree_table_adapter_node_is_expanded(tree_table_adapter, node));
return TRUE;
}
}
@@ -399,7 +417,8 @@ ect_max_width (ECellView *ecell_view, int model_col, int view_col)
for (row = 0; row < number_of_rows; row++) {
ETreeModel *tree_model = e_cell_tree_get_tree_model(ecell_view->e_table_model, row);
- ETreePath *node;
+ ETreeTableAdapter *tree_table_adapter = e_cell_tree_get_tree_table_adapter(ecell_view->e_table_model, row);
+ ETreePath node;
GdkPixbuf *node_image;
int node_image_width = 0, node_image_height = 0;
@@ -408,12 +427,12 @@ ect_max_width (ECellView *ecell_view, int model_col, int view_col)
node = e_cell_tree_get_node (ecell_view->e_table_model, row);
- offset = offset_of_node (tree_model, node);
+ offset = offset_of_node (ecell_view->e_table_model, row);
expandable = e_tree_model_node_is_expandable (tree_model, node);
- expanded = e_tree_model_node_is_expanded (tree_model, node);
+ expanded = e_tree_table_adapter_node_is_expanded (tree_table_adapter, node);
subcell_offset = offset;
- node_image = e_tree_model_icon_of_node (tree_model, node);
+ node_image = e_tree_model_icon_at (tree_model, node);
if (node_image) {
node_image_width = gdk_pixbuf_get_width (node_image);
@@ -447,11 +466,11 @@ ect_show_tooltip (ECellView *ecell_view, int model_col, int view_col, int row,
{
ECellTreeView *tree_view = (ECellTreeView *) ecell_view;
ETreeModel *tree_model = e_cell_tree_get_tree_model (ecell_view->e_table_model, row);
- ETreePath *node = e_cell_tree_get_node (ecell_view->e_table_model, row);
- int offset = offset_of_node (tree_model, node);
+ ETreePath node = e_cell_tree_get_node (ecell_view->e_table_model, row);
+ int offset = offset_of_node (ecell_view->e_table_model, row);
GdkPixbuf *node_image;
- node_image = e_tree_model_icon_of_node (tree_model, node);
+ node_image = e_tree_model_icon_at (tree_model, node);
if (node_image)
offset += gdk_pixbuf_get_width (node_image);
@@ -492,14 +511,16 @@ ect_print (ECellView *ecell_view, GnomePrintContext *context,
if (/* XXX only if we're the active sort */ TRUE) {
ETreeModel *tree_model = e_cell_tree_get_tree_model (ecell_view->e_table_model, row);
- ETreePath *node = e_cell_tree_get_node (ecell_view->e_table_model, row);
- int offset = offset_of_node (tree_model, node);
+ ETreeTableAdapter *tree_table_adapter = e_cell_tree_get_tree_table_adapter(ecell_view->e_table_model, row);
+ ETreePath node = e_cell_tree_get_node (ecell_view->e_table_model, row);
+ int offset = offset_of_node (ecell_view->e_table_model, row);
int subcell_offset = offset;
gboolean expandable = e_tree_model_node_is_expandable (tree_model, node);
- gboolean expanded = e_tree_model_node_is_expanded (tree_model, node);
+ gboolean expanded = e_tree_table_adapter_node_is_expanded (tree_table_adapter, node);
/* draw our lines */
if (E_CELL_TREE(tree_view->cell_view.ecell)->draw_lines) {
+ int depth;
if (!e_tree_model_node_is_root (tree_model, node)
|| e_tree_model_node_get_children (tree_model, node, NULL) > 0) {
@@ -512,7 +533,7 @@ ect_print (ECellView *ecell_view, GnomePrintContext *context,
height / 2);
}
- if (visible_depth_of_node (tree_model, node) != 0) {
+ if (visible_depth_of_node (ecell_view->e_table_model, row) != 0) {
gnome_print_moveto (context,
offset - INDENT_AMOUNT / 2,
height);
@@ -527,8 +548,9 @@ ect_print (ECellView *ecell_view, GnomePrintContext *context,
each level if the node has siblings, and drawing the
correct vertical pipe for it's configuration. */
node = e_tree_model_node_get_parent (tree_model, node);
+ depth = visible_depth_of_node (ecell_view->e_table_model, row) - 1;
offset -= INDENT_AMOUNT;
- while (node && visible_depth_of_node (tree_model, node) != 0) {
+ while (node && depth != 0) {
if (e_tree_model_node_get_next(tree_model, node)) {
gnome_print_moveto (context,
offset - INDENT_AMOUNT / 2,
@@ -538,6 +560,7 @@ ect_print (ECellView *ecell_view, GnomePrintContext *context,
0);
}
node = e_tree_model_node_get_parent (tree_model, node);
+ depth --;
offset -= INDENT_AMOUNT;
}
}
diff --git a/widgets/table/e-table-config.c b/widgets/table/e-table-config.c
index f5381a0e4d..96a7ee2f51 100644
--- a/widgets/table/e-table-config.c
+++ b/widgets/table/e-table-config.c
@@ -363,16 +363,18 @@ do_sort_and_group_config_dialog (ETableConfig *config, gboolean is_sort)
config_group_info_update (config);
}
-GtkWidget *
+#if 0
+static GtkWidget *
e_table_proxy_etable_new (void)
{
return gtk_label_new ("Waiting for the ETable/ETree\nmerger to be commited");
}
+#endif
static void
config_button_fields (GtkWidget *widget, ETableConfig *config)
{
- gnome_dialog_run (config->dialog_show_fields);
+ gnome_dialog_run (GNOME_DIALOG(config->dialog_show_fields));
gnome_dialog_close (GNOME_DIALOG (config->dialog_show_fields));
}
diff --git a/widgets/table/e-table-extras.c b/widgets/table/e-table-extras.c
index 05642f1022..cd942193d2 100644
--- a/widgets/table/e-table-extras.c
+++ b/widgets/table/e-table-extras.c
@@ -72,6 +72,15 @@ ete_class_init (GtkObjectClass *klass)
klass->destroy = ete_dest