data_interpretor.h File Reference


Detailed Description

Header file for the data interpretor.

Definition in file data_interpretor.h.

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define H_DI_DISPLAYED   FALSE
#define H_DI_BIG_ENDIAN   2
 Stands for big endian representation.
#define H_DI_MIDDLE_ENDIAN   4
 Stands for middle endian representation (http://en.wikipedia.org/wiki/Endianness#Middle-endian).
#define H_DI_LITTLE_ENDIAN   8
 Stands for little endian representation (this is the default).

Functions

void data_interpretor_init_interface (heraia_window_t *main_window)
 Inits the data interpretor structure and window with default values.
void refresh_data_interpretor_window (GtkWidget *hexwidget, gpointer data)
 Refreshes the data interpretor window with the new values.
void add_tab_in_data_interpretor (GtkNotebook *notebook, tab_t *tab)
 Testing things.
tab_tadd_new_tab_in_data_interpretor (GtkNotebook *notebook, guint index, gchar *label, guint num_cols,...)
 Adds a new tab in the data interpretor window.
void add_new_row_to_tab (tab_t *tab, decode_generic_t *row)
 Adds a row to a particular tab.


Define Documentation

#define H_DI_BIG_ENDIAN   2

Stands for big endian representation.

Definition at line 53 of file data_interpretor.h.

Referenced by change_endianness(), and which_endianness().

#define H_DI_DISPLAYED   FALSE

Note:
Naming : H stands for Heraia DI stands for Data_Interpretor
Says whether data_interpretor is displayed or not
Todo:
verify if this is still used somewhere !

Definition at line 50 of file data_interpretor.h.

Referenced by init_window_property_struct().

#define H_DI_LITTLE_ENDIAN   8

Stands for little endian representation (this is the default).

Definition at line 55 of file data_interpretor.h.

Referenced by refresh_hex_datas_entry(), and which_endianness().

#define H_DI_MIDDLE_ENDIAN   4

Stands for middle endian representation (http://en.wikipedia.org/wiki/Endianness#Middle-endian).

Definition at line 54 of file data_interpretor.h.

Referenced by change_endianness(), and which_endianness().


Function Documentation

void add_new_row_to_tab ( tab_t tab,
decode_generic_t row 
)

Adds a row to a particular tab.

Parameters:
tab : the tab to which we want to add the row
row : the row we want to add (make sure it has been initialized)

< the vbox to which we want to pack

< couple from which we want to pack the entry

Definition at line 432 of file data_interpretor.c.

References decode_t::entry, tab_t::nb_rows, tab_t::rows, and tab_t::vboxes.

Referenced by add_default_tabs().

Here is the caller graph for this function:

tab_t* add_new_tab_in_data_interpretor ( GtkNotebook *  notebook,
guint  index,
gchar *  label,
guint  nb_cols,
  ... 
)

Adds a new tab in the data interpretor window.

Parameters:
notebook : the notebook to which we want to add this new tab
index : index of this new tab. If you rely on this make sure it's a primary key !
label : label of the tab
nb_cols : number of columns (including the first column of labels)
... : nb_cols arguments that will be the labels of the columns

< tab structure that will remember everything !

< va_list arguments passed to create a new tab with those columns

< used to fetch atguments

< used to remember the columns labels (the arguments in GtkWidgets)

< used to remember vboxes (in order to be able to pack things later

< notebook tab's child container

< used for hpaned creation

< in case that we have more than 2 arguments

< used for vbox creation

< used for label creation in the new vboxes

Definition at line 347 of file data_interpretor.c.

References tab_t::col_labels, tab_t::index, tab_t::label, tab_t::nb_cols, tab_t::nb_rows, tab_t::rows, and tab_t::vboxes.

Referenced by add_default_tabs().

Here is the caller graph for this function:

void add_tab_in_data_interpretor ( GtkNotebook *  notebook,
tab_t tab 
)

Testing things.

void data_interpretor_init_interface ( heraia_window_t main_window  ) 

Inits the data interpretor structure and window with default values.

Warning:
Should be called only once at program's beginning

Definition at line 317 of file data_interpretor.c.

References add_default_tabs(), connect_data_interpretor_signals(), heraia_window_t::current_DW, data_window_t::diw, heraia_get_widget(), xml_t::main, and heraia_window_t::xmls.

Referenced by load_heraia_ui().

Here is the call graph for this function:

Here is the caller graph for this function:

void refresh_data_interpretor_window ( GtkWidget *  widget,
gpointer  data 
)

Refreshes the data interpretor window with the new values.

Parameters:
widget : the widget caller (may be NULL here)
data : a gpointer to the main structure : main_window, this must NOT be NULL !
Todo:
if speed is a matter, think about taking off this decode_parameters structure from here.

< data interpretor window structure

< Endianness is computed only once here

< stream size is computed only once here

Definition at line 254 of file data_interpretor.c.

References heraia_window_t::current_DW, window_prop_t::displayed, all_window_prop_t::main_dialog, new_decode_parameters_t(), refresh_all_tabs(), which_endianness(), which_stream_size(), and heraia_window_t::win_prop.

Referenced by connect_data_interpretor_signals(), on_DIMenu_activate(), and refresh_event_handler().

Here is the call graph for this function:

Here is the caller graph for this function:


Generated on Sat Mar 14 13:44:42 2009 for Heraia by  doxygen 1.5.6