Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

gui_property.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2001-2003, Richard Eckart
00003  *
00004  * THIS FILE IS AUTOGENERATED! DO NOT EDIT!
00005  * This file is generated from gui_props.ag using autogen.
00006  * Autogen is available at http://autogen.sourceforge.net/.
00007  *
00008  *----------------------------------------------------------------------
00009  * This file is part of gtk-gnutella.
00010  *
00011  *  gtk-gnutella is free software; you can redistribute it and/or modify
00012  *  it under the terms of the GNU General Public License as published by
00013  *  the Free Software Foundation; either version 2 of the License, or
00014  *  (at your option) any later version.
00015  *
00016  *  gtk-gnutella is distributed in the hope that it will be useful,
00017  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  *  GNU General Public License for more details.
00020  *
00021  *  You should have received a copy of the GNU General Public License
00022  *  along with gtk-gnutella; if not, write to the Free Software
00023  *  Foundation, Inc.:
00024  *      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00025  *----------------------------------------------------------------------
00026  */
00027 
00028 #ifndef _gui_property_h_
00029 #define _gui_property_h_
00030 
00031 
00032 #include "lib/prop.h"
00033 
00034 #define GUI_PROPERTY_MIN (1000)
00035 #define GUI_PROPERTY_MAX (1000+GUI_PROPERTY_END-1)
00036 #define GUI_PROPERTY_NUM (GUI_PROPERTY_END-1000)
00037 
00038 typedef enum {
00039     PROP_MONITOR_ENABLED=1000,
00040     PROP_MONITOR_MAX_ITEMS,
00041     PROP_QUEUE_REGEX_CASE,
00042     PROP_FI_REGEX_CASE,
00043     PROP_SEARCH_HIDE_DOWNLOADED,
00044     PROP_NODES_COL_WIDTHS,
00045     PROP_NODES_COL_VISIBLE,
00046     PROP_DL_ACTIVE_COL_WIDTHS,
00047     PROP_DL_ACTIVE_COL_VISIBLE,
00048     PROP_DL_QUEUED_COL_WIDTHS,
00049     PROP_DL_QUEUED_COL_VISIBLE,
00050     PROP_FILE_INFO_COL_WIDTHS,
00051     PROP_SEARCH_LIST_COL_WIDTHS,
00052     PROP_SEARCH_RESULTS_COL_VISIBLE,
00053     PROP_SEARCH_RESULTS_COL_WIDTHS,
00054     PROP_SEARCH_STATS_COL_WIDTHS,
00055     PROP_UL_STATS_COL_WIDTHS,
00056     PROP_UL_STATS_COL_VISIBLE,
00057     PROP_UPLOADS_COL_WIDTHS,
00058     PROP_UPLOADS_COL_VISIBLE,
00059     PROP_FILTER_RULES_COL_WIDTHS,
00060     PROP_FILTER_FILTERS_COL_WIDTHS,
00061     PROP_GNET_STATS_MSG_COL_WIDTHS,
00062     PROP_GNET_STATS_FC_TTL_COL_WIDTHS,
00063     PROP_GNET_STATS_FC_HOPS_COL_WIDTHS,
00064     PROP_GNET_STATS_FC_COL_WIDTHS,
00065     PROP_GNET_STATS_HORIZON_COL_WIDTHS,
00066     PROP_GNET_STATS_DROP_REASONS_COL_WIDTHS,
00067     PROP_GNET_STATS_RECV_COL_WIDTHS,
00068     PROP_HCACHE_COL_WIDTHS,
00069     PROP_WINDOW_COORDS,
00070     PROP_FILTER_DLG_COORDS,
00071     PROP_PREFS_DLG_COORDS,
00072     PROP_FILEINFO_DIVIDER_POS,
00073     PROP_MAIN_DIVIDER_POS,
00074     PROP_GNET_STATS_DIVIDER_POS,
00075     PROP_SIDE_DIVIDER_POS,
00076     PROP_RESULTS_DIVIDER_POS,
00077     PROP_SEARCH_MAX_RESULTS,
00078     PROP_BROWSE_HOST_MAX_RESULTS,
00079     PROP_GUI_DEBUG,
00080     PROP_FILTER_MAIN_DIVIDER_POS,
00081     PROP_SEARCH_RESULTS_SHOW_TABS,
00082     PROP_SEARCHBAR_VISIBLE,
00083     PROP_SIDEBAR_VISIBLE,
00084     PROP_NAVTREE_VISIBLE,
00085     PROP_TOOLBAR_VISIBLE,
00086     PROP_STATUSBAR_VISIBLE,
00087     PROP_PROGRESSBAR_UPLOADS_VISIBLE,
00088     PROP_PROGRESSBAR_DOWNLOADS_VISIBLE,
00089     PROP_PROGRESSBAR_CONNECTIONS_VISIBLE,
00090     PROP_PROGRESSBAR_BWS_IN_VISIBLE,
00091     PROP_PROGRESSBAR_BWS_OUT_VISIBLE,
00092     PROP_PROGRESSBAR_BWS_GIN_VISIBLE,
00093     PROP_PROGRESSBAR_BWS_GOUT_VISIBLE,
00094     PROP_PROGRESSBAR_BWS_GLIN_VISIBLE,
00095     PROP_PROGRESSBAR_BWS_GLOUT_VISIBLE,
00096     PROP_AUTOHIDE_BWS_GLEAF,
00097     PROP_PROGRESSBAR_BWS_IN_AVG,
00098     PROP_PROGRESSBAR_BWS_OUT_AVG,
00099     PROP_PROGRESSBAR_BWS_GIN_AVG,
00100     PROP_PROGRESSBAR_BWS_GOUT_AVG,
00101     PROP_PROGRESSBAR_BWS_GLIN_AVG,
00102     PROP_PROGRESSBAR_BWS_GLOUT_AVG,
00103     PROP_SEARCH_SORT_CASESENSE,
00104     PROP_SEARCH_SORT_DEFAULT_ORDER,
00105     PROP_SEARCH_SORT_DEFAULT_COLUMN,
00106     PROP_SEARCH_DISCARD_SPAM,
00107     PROP_SEARCH_DISCARD_HASHLESS,
00108     PROP_SEARCH_JUMP_TO_CREATED,
00109     PROP_SEARCH_STATS_MODE,
00110     PROP_SEARCH_STATS_UPDATE_INTERVAL,
00111     PROP_SEARCH_STATS_DELCOEF,
00112     PROP_CONFIRM_QUIT,
00113     PROP_SHOW_TOOLTIPS,
00114     PROP_EXPERT_MODE,
00115     PROP_GNET_STATS_PERC,
00116     PROP_GNET_STATS_BYTES,
00117     PROP_GNET_STATS_HOPS,
00118     PROP_GNET_STATS_SOURCE,
00119     PROP_GNET_STATS_DROP_REASONS_TYPE,
00120     PROP_GNET_STATS_WITH_HEADERS,
00121     PROP_GNET_STATS_DROP_PERC,
00122     PROP_GNET_STATS_GENERAL_COL_WIDTHS,
00123     PROP_AUTOCLEAR_COMPLETED_UPLOADS,
00124     PROP_AUTOCLEAR_FAILED_UPLOADS,
00125     PROP_NODE_SHOW_UPTIME,
00126     PROP_NODE_SHOW_HANDSHAKE_VERSION,
00127     PROP_NODE_SHOW_DETAILED_INFO,
00128     PROP_SHOW_GNET_INFO_TXC,
00129     PROP_SHOW_GNET_INFO_RXC,
00130     PROP_SHOW_GNET_INFO_TX_WIRE,
00131     PROP_SHOW_GNET_INFO_RX_WIRE,
00132     PROP_SHOW_GNET_INFO_TX_SPEED,
00133     PROP_SHOW_GNET_INFO_RX_SPEED,
00134     PROP_SHOW_GNET_INFO_TX_QUERIES,
00135     PROP_SHOW_GNET_INFO_RX_QUERIES,
00136     PROP_SHOW_GNET_INFO_TX_HITS,
00137     PROP_SHOW_GNET_INFO_RX_HITS,
00138     PROP_SHOW_GNET_INFO_GEN_QUERIES,
00139     PROP_SHOW_GNET_INFO_SQ_QUERIES,
00140     PROP_SHOW_GNET_INFO_TX_DROPPED,
00141     PROP_SHOW_GNET_INFO_RX_DROPPED,
00142     PROP_SHOW_GNET_INFO_QRP_STATS,
00143     PROP_SHOW_GNET_INFO_DBW,
00144     PROP_SHOW_GNET_INFO_RT,
00145     PROP_SHOW_GNET_INFO_SHARED_SIZE,
00146     PROP_SHOW_GNET_INFO_SHARED_FILES,
00147     PROP_SEARCH_ACCUMULATION_PERIOD,
00148     PROP_TREEMENU_NODES_EXPANDED,
00149     PROP_GNET_STATS_PKG_COL_WIDTHS,
00150     PROP_GNET_STATS_BYTE_COL_WIDTHS,
00151     PROP_CONFIG_TOOLBAR_STYLE,
00152     PROP_SEARCH_LIFETIME,
00153     GUI_PROPERTY_END
00154 } gui_property_t;
00155 
00156 /*
00157  * Property set stub
00158  */
00159 prop_set_stub_t *gui_prop_get_stub(void);
00160 
00161 /*
00162  * Property definition
00163  */
00164 prop_def_t *gui_prop_get_def(property_t);
00165 property_t gui_prop_get_by_name(const gchar *);
00166 GSList *gui_prop_get_by_regex(const gchar *, gint *);
00167 const gchar *gui_prop_name(property_t);
00168 const gchar *gui_prop_type_to_string(property_t);
00169 const gchar *gui_prop_to_string(property_t prop);
00170 const gchar *gui_prop_default_to_string(property_t);
00171 const gchar *gui_prop_description(property_t);
00172 gboolean gui_prop_is_saved(property_t);
00173 void gui_prop_set_from_string(property_t, const gchar *);
00174 
00175 /*
00176  * Property-change listeners
00177  */
00178 void gui_prop_add_prop_changed_listener(
00179     property_t, prop_changed_listener_t, gboolean);
00180 void gui_prop_remove_prop_changed_listener(
00181     property_t, prop_changed_listener_t);
00182 
00183 /*
00184  * get/set functions
00185  *
00186  * The *_val macros are shortcuts for single scalar properties.
00187  */
00188 void gui_prop_set_boolean(
00189     property_t, const gboolean *, size_t, size_t);
00190 gboolean *gui_prop_get_boolean(
00191     property_t, gboolean *, size_t, size_t);
00192 
00193 static inline void
00194 gui_prop_set_boolean_val(property_t p, gboolean value)
00195 {
00196     gui_prop_set_boolean(p, &value, 0, 1);
00197 }
00198 
00199 static inline void
00200 gui_prop_get_boolean_val(property_t p, gboolean *value_ptr)
00201 {
00202     gui_prop_get_boolean(p, value_ptr, 0, 1);
00203 }
00204 
00205 
00206 void gui_prop_set_string(property_t, const gchar *);
00207 gchar *gui_prop_get_string(property_t, gchar *, size_t);
00208 
00209 void gui_prop_set_guint32(
00210     property_t, const guint32 *, size_t, size_t);
00211 guint32 *gui_prop_get_guint32(
00212     property_t, guint32 *, size_t, size_t);
00213 
00214 static inline void
00215 gui_prop_set_guint32_val(property_t p, guint32 value)
00216 {
00217     gui_prop_set_guint32(p, &value, 0, 1);
00218 }
00219 
00220 static inline void
00221 gui_prop_get_guint32_val(property_t p, guint32 *value_ptr)
00222 {
00223     gui_prop_get_guint32(p, value_ptr, 0, 1);
00224 }
00225 
00226 static inline void
00227 gui_prop_incr_guint32(property_t p)
00228 {
00229     guint32 value;
00230     gui_prop_get_guint32_val(p, &value);
00231     value++;
00232     gui_prop_set_guint32_val(p, value);
00233 }
00234 
00235 static inline void
00236 gui_prop_decr_guint32(property_t p)
00237 {
00238     guint32 value;
00239     gui_prop_get_guint32_val(p, &value);
00240     value--;
00241     gui_prop_set_guint32_val(p, value);
00242 }
00243 
00244 void gui_prop_set_guint64(
00245     property_t, const guint64 *, size_t, size_t);
00246 guint64 *gui_prop_get_guint64(
00247     property_t, guint64 *, size_t, size_t);
00248 
00249 static inline void
00250 gui_prop_set_guint64_val(property_t p, guint64 value)
00251 {
00252     gui_prop_set_guint64(p, &value, 0, 1);
00253 }
00254 
00255 static inline void
00256 gui_prop_get_guint64_val(property_t p, guint64 *value_ptr)
00257 {
00258     gui_prop_get_guint64(p, value_ptr, 0, 1);
00259 }
00260 
00261 void gui_prop_set_timestamp(
00262     property_t, const time_t *, size_t, size_t);
00263 time_t *gui_prop_get_timestamp(
00264     property_t, time_t *, size_t, size_t);
00265 
00266 static inline void
00267 gui_prop_set_timestamp_val(property_t p, time_t value)
00268 {
00269     gui_prop_set_timestamp(p, &value, 0, 1);
00270 }
00271 
00272 static inline void
00273 gui_prop_get_timestamp_val(property_t p, time_t *value_ptr)
00274 {
00275     gui_prop_get_timestamp(p, value_ptr, 0, 1);
00276 }
00277 
00278 void gui_prop_set_ip(
00279     property_t, const host_addr_t *, size_t, size_t);
00280 host_addr_t *gui_prop_get_ip(
00281     property_t, host_addr_t *, size_t, size_t);
00282 
00283 static inline void
00284 gui_prop_set_ip_val(property_t p, host_addr_t value)
00285 {
00286     gui_prop_set_ip(p, &value, 0, 1);
00287 }
00288 
00289 static inline void
00290 gui_prop_get_ip_val(property_t p, host_addr_t *value_ptr)
00291 {
00292     gui_prop_get_ip(p, value_ptr, 0, 1);
00293 }
00294 
00295 void gui_prop_set_storage(property_t, gconstpointer, size_t);
00296 gpointer gui_prop_get_storage(property_t, gpointer, size_t);
00297 
00298 #endif /* _gui_property_h_ */
00299 

Generated on Sat Jun 30 17:53:23 2007 for gtk-gnutella by  doxygen 1.3.9.1