📄 dw_table.h
字号:
/* * File: dw_table.h * * Copyright (C) 2001 Sebastian Geerken <sgeerken@users.sourceforge.net> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. */#ifndef __DW_TABLE_H__#define __DW_TABLE_H__#include "dw_container.h"#include "dw_table_cell.h"#include "bitvec.h"#ifdef __cplusplusextern "C" {#endif /* __cplusplus */#define DW_TYPE_TABLE (a_Dw_table_get_type ())#define DW_TABLE(obj) GTK_CHECK_CAST (obj,DW_TYPE_TABLE, DwTable)#define DW_TABLE_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, DW_TYPE_TABLE, \ DwTableClass)#define DW_IS_TABLE(obj) GTK_CHECK_TYPE (obj, DW_TYPE_TABLE)typedef struct _DwTable DwTable;typedef struct _DwTableClass DwTableClass;typedef struct _DwTableChild DwTableChild;typedef struct _DwTableSub DwTableSub;struct _DwTableChild{ enum { DW_TABLE_CELL, /* cell starts here */ DW_TABLE_SPAN_SPACE /* part of a spanning cell */ } type; union { struct { DwWidget *widget; gint colspan, rowspan; } cell; struct { gint start_col, start_row; /* where the cell starts */ } span_space; } data;};struct _DwTableSub{ DwTable *table; gint start_col, end_col; bitvec_t *spanning_rows, *removed_rows; DwExtremes span_extremes, total_extremes; gboolean fixed_width; gint use_percentage; gfloat percentage; DwTableSub *subs; gint num_subs;};struct _DwTable{ DwContainer container; /* set by set_... */ gint32 avail_width, avail_ascent, avail_descent; gint cur_row, cur_col; gint32 *col_width; // num_cols members gint num_cols; gint num_col_width_max; gint32 *cum_height; // row cumulative height array: gint num_rows; // num_cum_height is (num_rows + 1), gint cum_height_max; // cum_height[0] is always SPACING, // cum_height[num_rows] is the total table height DwStyle **row_style; gint row_style_max; gint32 *baseline; gint baseline_max; DwTableSub *sub; DwTableChild **children; gint num_children; gint num_children_max; /* number allocated */};struct _DwTableClass{ DwContainerClass parent_class;};GtkType a_Dw_table_get_type (void);DwWidget* a_Dw_table_new (void);void a_Dw_table_add_cell (DwTable *table, DwWidget *widget, gint colspan, gint rowspan);void a_Dw_table_add_row (DwTable *table, DwStyle *style);DwTableCell* a_Dw_table_get_cell_ref (DwTable *table);#ifdef __cplusplus}#endif /* __cplusplus */#endif /* __DW_TABLE_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -