Typedefs | Functions
gntutils.h File Reference

Some utility functions. More...

#include <glib.h>
#include "gnt.h"
#include "gnttextview.h"
#include "gntwidget.h"

Go to the source code of this file.

Typedefs

typedef gpointer(* GDupFunc) (gconstpointer data)
 

Functions

void gnt_util_get_text_bound (const char *text, int *width, int *height)
 Compute the width and height required to view the text on the screen. More...
 
int gnt_util_onscreen_width (const char *start, const char *end)
 Get the onscreen width of a string, or a substring. More...
 
const char * gnt_util_onscreen_width_to_pointer (const char *str, int len, int *w)
 Computes and returns the string after a specific number of onscreen characters. More...
 
char * gnt_util_onscreen_fit_string (const char *string, int maxw)
 Inserts newlines in 'string' where necessary so that its onscreen width is no more than 'maxw'. More...
 
GHashTable * g_hash_table_duplicate (GHashTable *src, GHashFunc hash, GEqualFunc equal, GDestroyNotify key_d, GDestroyNotify value_d, GDupFunc key_dup, GDupFunc value_dup)
 Duplicate the contents of a hastable. More...
 
gboolean gnt_boolean_handled_accumulator (GSignalInvocationHint *ihint, GValue *return_accu, const GValue *handler_return, gpointer dummy)
 To be used with g_signal_new. More...
 
GntWidgetgnt_widget_bindings_view (GntWidget *widget)
 Get a helpful display about the bindings of a widget. More...
 
void gnt_util_parse_widgets (const char *string, int num,...)
 Parse widgets from an XML description. More...
 
gboolean gnt_util_parse_xhtml_to_textview (const char *string, GntTextView *tv)
 Parse an XHTML string and add it in a GntTextView with appropriate text flags. More...
 
void gnt_util_set_trigger_widget (GntWidget *widget, const char *key, GntWidget *button)
 Make some keypress activate a button when some key is pressed with 'wid' in focus. More...
 

Detailed Description

Some utility functions.

Definition in file gntutils.h.

Function Documentation

GHashTable* g_hash_table_duplicate ( GHashTable *  src,
GHashFunc  hash,
GEqualFunc  equal,
GDestroyNotify  key_d,
GDestroyNotify  value_d,
GDupFunc  key_dup,
GDupFunc  value_dup 
)

Duplicate the contents of a hastable.

Parameters
srcThe source hashtable.
hashThe hash-function to use.
equalThe hash-equal function to use.
key_dThe key-destroy function to use.
value_dThe value-destroy function to use.
key_dupThe function to use to duplicate the key.
value_dupThe function to use to duplicate the value.
Returns
The new hashtable.
gboolean gnt_boolean_handled_accumulator ( GSignalInvocationHint *  ihint,
GValue *  return_accu,
const GValue *  handler_return,
gpointer  dummy 
)

To be used with g_signal_new.

Look in the key_pressed signal-definition in gntwidget.c for usage.

Parameters
ihintNA
return_accuNA
handler_returnNA
dummyNA
Returns
NA
void gnt_util_get_text_bound ( const char *  text,
int *  width,
int *  height 
)

Compute the width and height required to view the text on the screen.

Parameters
textThe text to be displayed.
widthThe width required is set here, if not NULL.
heightThe height required is set here, if not NULL.
char* gnt_util_onscreen_fit_string ( const char *  string,
int  maxw 
)

Inserts newlines in 'string' where necessary so that its onscreen width is no more than 'maxw'.

Parameters
stringThe string.
maxwThe width that the string should fit into. If maxw is <= 0, then the available maximum width is used.
Returns
A newly allocated string that needs to be freed by the caller.
int gnt_util_onscreen_width ( const char *  start,
const char *  end 
)

Get the onscreen width of a string, or a substring.

Parameters
startThe beginning of the string.
endThe end of the string. The width returned is the width upto (but not including) end. If end is NULL, then start is considered as a NULL-terminated string.
Returns
The on-screen width of the string.
const char* gnt_util_onscreen_width_to_pointer ( const char *  str,
int  len,
int *  w 
)

Computes and returns the string after a specific number of onscreen characters.

Parameters
strThe string.
lenThe length to consider. If non-positive, the entire screenlength is used.
wThe actual width of the string upto the returned offset, if not NULL.
Returns
The string after len offset.
void gnt_util_parse_widgets ( const char *  string,
int  num,
  ... 
)

Parse widgets from an XML description.

For example,

1 GntWidget *win, *button;
2 gnt_util_parse_widgets("\
3  <vwindow id='0' fill='0' align='2'> \
4  <label>This is a test</label> \
5  <button id='1'>OK</button> \
6  </vwindow>",
7  2, &win, &button);
Parameters
stringThe XML string.
numThe number of widgets to return, followed by 'num' GntWidget **
gboolean gnt_util_parse_xhtml_to_textview ( const char *  string,
GntTextView tv 
)

Parse an XHTML string and add it in a GntTextView with appropriate text flags.

Parameters
stringThe XHTML string
tvThe GntTextView
Returns
TRUE if the string was added to the textview properly, FALSE otherwise.
Since
2.2.0
void gnt_util_set_trigger_widget ( GntWidget widget,
const char *  key,
GntWidget button 
)

Make some keypress activate a button when some key is pressed with 'wid' in focus.

Parameters
widgetThe widget
keyThe key to trigger the button
buttonThe button to trigger
Since
2.0.0 (gnt), 2.1.0 (pidgin)
GntWidget* gnt_widget_bindings_view ( GntWidget widget)

Get a helpful display about the bindings of a widget.

Parameters
widgetThe widget to get bindings for.
Returns
Returns a GntTree populated with "key" -> "binding" for the widget.