|
GnuCash 2.4.99
|
00001 /* 00002 * gnc-tree-model-commodity.h -- GtkTreeModel implementation to 00003 * display commodities in a GtkTreeView. 00004 * 00005 * Copyright (C) 2003 Jan Arne Petersen <jpetersen@uni-bonn.de> 00006 * Copyright (C) 2003 David Hampton <hampton@employees.org> 00007 * 00008 * This program is free software; you can redistribute it and/or 00009 * modify it under the terms of the GNU General Public License as 00010 * published by the Free Software Foundation; either version 2 of 00011 * the License, or (at your option) any later version. 00012 * 00013 * This program is distributed in the hope that it will be useful, 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 * GNU General Public License for more details. 00017 * 00018 * You should have received a copy of the GNU General Public License 00019 * along with this program; if not, contact: 00020 * 00021 * Free Software Foundation Voice: +1-617-542-5942 00022 * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 00023 * Boston, MA 02110-1301, USA gnu@gnu.org 00024 */ 00025 00036 #ifndef __GNC_TREE_MODEL_COMMODITY_H 00037 #define __GNC_TREE_MODEL_COMMODITY_H 00038 00039 #include <gtk/gtk.h> 00040 #include "gnc-tree-model.h" 00041 00042 #include "gnc-commodity.h" 00043 00044 G_BEGIN_DECLS 00045 00046 /* type macros */ 00047 #define GNC_TYPE_TREE_MODEL_COMMODITY (gnc_tree_model_commodity_get_type ()) 00048 #define GNC_TREE_MODEL_COMMODITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GNC_TYPE_TREE_MODEL_COMMODITY, GncTreeModelCommodity)) 00049 #define GNC_TREE_MODEL_COMMODITY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GNC_TYPE_TREE_MODEL_COMMODITY, GncTreeModelCommodityClass)) 00050 #define GNC_IS_TREE_MODEL_COMMODITY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GNC_TYPE_TREE_MODEL_COMMODITY)) 00051 #define GNC_IS_TREE_MODEL_COMMODITY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GNC_TYPE_TREE_MODEL_COMMODITY)) 00052 #define GNC_TREE_MODEL_COMMODITY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GNC_TYPE_TREE_MODEL_COMMODITY, GncTreeModelCommodityClass)) 00053 #define GNC_TREE_MODEL_COMMODITY_NAME "GncTreeModelCommodity" 00054 00055 00056 typedef enum 00057 { 00058 GNC_TREE_MODEL_COMMODITY_COL_NAMESPACE, 00059 GNC_TREE_MODEL_COMMODITY_COL_MNEMONIC, 00060 GNC_TREE_MODEL_COMMODITY_COL_FULLNAME, 00061 GNC_TREE_MODEL_COMMODITY_COL_PRINTNAME, 00062 GNC_TREE_MODEL_COMMODITY_COL_UNIQUE_NAME, 00063 GNC_TREE_MODEL_COMMODITY_COL_CUSIP, 00064 GNC_TREE_MODEL_COMMODITY_COL_FRACTION, 00065 GNC_TREE_MODEL_COMMODITY_COL_QUOTE_FLAG, 00066 GNC_TREE_MODEL_COMMODITY_COL_QUOTE_SOURCE, 00067 GNC_TREE_MODEL_COMMODITY_COL_QUOTE_TZ, 00068 00069 GNC_TREE_MODEL_COMMODITY_COL_LAST_VISIBLE = GNC_TREE_MODEL_COMMODITY_COL_QUOTE_TZ, 00070 00071 /* internal hidden columns */ 00072 GNC_TREE_MODEL_COMMODITY_COL_VISIBILITY, 00073 00074 GNC_TREE_MODEL_COMMODITY_NUM_COLUMNS 00075 } GncTreeModelCommodityColumn; 00076 00077 /* typedefs & structures */ 00078 00080 typedef struct 00081 { 00082 GncTreeModel gnc_tree_model; 00083 int stamp; 00085 } GncTreeModelCommodity; 00086 00087 00089 typedef struct 00090 { 00091 GncTreeModelClass gnc_tree_model; 00092 } GncTreeModelCommodityClass; 00093 00094 00099 GType gnc_tree_model_commodity_get_type (void); 00100 00101 00111 GtkTreeModel *gnc_tree_model_commodity_new (QofBook *book, gnc_commodity_table *ct); 00130 gboolean gnc_tree_model_commodity_iter_is_namespace (GncTreeModelCommodity *model, 00131 GtkTreeIter *iter); 00132 00133 00146 gboolean gnc_tree_model_commodity_iter_is_commodity (GncTreeModelCommodity *model, 00147 GtkTreeIter *iter); 00148 00149 00161 gnc_commodity_namespace *gnc_tree_model_commodity_get_namespace (GncTreeModelCommodity *model, 00162 GtkTreeIter *iter); 00163 00175 gnc_commodity *gnc_tree_model_commodity_get_commodity (GncTreeModelCommodity *model, 00176 GtkTreeIter *iter); 00194 gboolean gnc_tree_model_commodity_get_iter_from_namespace (GncTreeModelCommodity *model, 00195 gnc_commodity_namespace *namespace, 00196 GtkTreeIter *iter); 00197 00208 gboolean gnc_tree_model_commodity_get_iter_from_commodity (GncTreeModelCommodity *model, 00209 gnc_commodity *commodity, 00210 GtkTreeIter *iter); 00211 00222 GtkTreePath *gnc_tree_model_commodity_get_path_from_commodity (GncTreeModelCommodity *model, 00223 gnc_commodity *commodity); 00226 G_END_DECLS 00227 00228 #endif /* __GNC_TREE_MODEL_COMMODITY_H */ 00229
1.7.4