view pidgin/plugins/gestures/gstroke-internal.h @ 21016:abd768f06e7b

Another patch from Andrew Gaul that plugs a leak: ==15182== 163 bytes in 5 blocks are definitely lost in loss record 116 of 231 ==15182== at 0x40054E5: malloc (vg_replace_malloc.c:149) ==15182== by 0xBFFC25: g_malloc (in /lib/libglib-2.0.so.0.1200.13) ==15182== by 0xC132B8: g_strdup (in /lib/libglib-2.0.so.0.1200.13) ==15182== by 0x40A7B9F: purple_url_parse (util.c:3460) ==15182== by 0x4C58C89: yahoo_fetch_aliases (yahoo_aliases.c:152)
author Ka-Hing Cheung <khc@hxbc.us>
date Fri, 26 Oct 2007 05:22:26 +0000
parents 5fe8042783c1
children
line wrap: on
line source

/* This file is to be used internally by the libgstroke implementation.
   It should not be installed or used elsewhere.

   See the file COPYING for distribution information.
*/

#ifndef _GSTROKE_INTERNAL_H_
#define _GSTROKE_INTERNAL_H_

/* metrics for stroke, they are used while processing a stroke, this
   structure should be stored in local widget storage */
struct gstroke_metrics {
  GSList *pointList;     /* point list */
  gint min_x;
  gint min_y;
  gint max_x;
  gint max_y;
  gint point_count;
};

#define GSTROKE_METRICS "gstroke_metrics"

/* translate stroke to sequence */
gint _gstroke_trans (gchar *sequence, struct gstroke_metrics *metrics);
gint _gstroke_canonical (gchar* sequence, struct gstroke_metrics *metrics);

/* record point in stroke */
void _gstroke_record (gint x, gint y, struct gstroke_metrics *metrics);

/* initialize stroke functions */
void _gstroke_init (struct gstroke_metrics*);

/* structure for holding point data */
struct s_point {
  gint x;
  gint y;
};

typedef struct s_point *p_point;

#endif