Blame ui/gcr-live-search.h

Packit b00eeb
/*
Packit b00eeb
 * Copyright (C) 2011 Collabora Ltd.
Packit b00eeb
 * Copyright (C) 2010 Collabora Ltd.
Packit b00eeb
 * Copyright (C) 2007-2010 Nokia Corporation.
Packit b00eeb
 *
Packit b00eeb
 * This library is free software; you can redistribute it and/or
Packit b00eeb
 * modify it under the terms of the GNU Lesser General Public
Packit b00eeb
 * License as published by the Free Software Foundation; either
Packit b00eeb
 * version 2.1 of the License, or (at your option) any later version.
Packit b00eeb
 *
Packit b00eeb
 * This library is distributed in the hope that it will be useful,
Packit b00eeb
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit b00eeb
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit b00eeb
 * Lesser General Public License for more details.
Packit b00eeb
 *
Packit b00eeb
 * You should have received a copy of the GNU Lesser General Public
Packit b00eeb
 * License along with this library; if not, write to the Free Software
Packit b00eeb
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
Packit b00eeb
 *
Packit b00eeb
 * Authors: Felix Kaser <felix.kaser@collabora.co.uk>
Packit b00eeb
 *          Xavier Claessens <xavier.claessens@collabora.co.uk>
Packit b00eeb
 *          Claudio Saavedra <csaavedra@igalia.com>
Packit b00eeb
 *          Stef Walter <stefw@collabora.co.uk>
Packit b00eeb
 */
Packit b00eeb
Packit b00eeb
/* Code borrowed from Empathy */
Packit b00eeb
Packit b00eeb
#ifndef __GCR_LIVE_SEARCH_H__
Packit b00eeb
#define __GCR_LIVE_SEARCH_H__
Packit b00eeb
Packit b00eeb
#include <gtk/gtk.h>
Packit b00eeb
Packit b00eeb
G_BEGIN_DECLS
Packit b00eeb
Packit b00eeb
#define GCR_TYPE_LIVE_SEARCH         (_gcr_live_search_get_type ())
Packit b00eeb
#define GCR_LIVE_SEARCH(o)           (G_TYPE_CHECK_INSTANCE_CAST ((o), GCR_TYPE_LIVE_SEARCH, GcrLiveSearch))
Packit b00eeb
#define GCR_LIVE_SEARCH_CLASS(k)     (G_TYPE_CHECK_CLASS_CAST ((k), GCR_TYPE_LIVE_SEARCH, GcrLiveSearchClass))
Packit b00eeb
#define GCR_IS_LIVE_SEARCH(o)        (G_TYPE_CHECK_INSTANCE_TYPE ((o), GCR_TYPE_LIVE_SEARCH))
Packit b00eeb
#define GCR_IS_LIVE_SEARCH_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), GCR_TYPE_LIVE_SEARCH))
Packit b00eeb
#define GCR_LIVE_SEARCH_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GCR_TYPE_LIVE_SEARCH, GcrLiveSearchClass))
Packit b00eeb
Packit b00eeb
typedef struct _GcrLiveSearch      GcrLiveSearch;
Packit b00eeb
typedef struct _GcrLiveSearchClass GcrLiveSearchClass;
Packit b00eeb
typedef struct _GcrLiveSearchPrivate GcrLiveSearchPrivate;
Packit b00eeb
Packit b00eeb
struct _GcrLiveSearch {
Packit b00eeb
	/*< private >*/
Packit b00eeb
	GtkBox parent;
Packit b00eeb
	GcrLiveSearchPrivate *pv;
Packit b00eeb
};
Packit b00eeb
Packit b00eeb
struct _GcrLiveSearchClass {
Packit b00eeb
	GtkBoxClass parent_class;
Packit b00eeb
};
Packit b00eeb
Packit b00eeb
GType             _gcr_live_search_get_type               (void) G_GNUC_CONST;
Packit b00eeb
Packit b00eeb
GtkWidget *       _gcr_live_search_new                    (GtkWidget *hook);
Packit b00eeb
Packit b00eeb
GtkWidget *       _gcr_live_search_get_hook_widget        (GcrLiveSearch *self);
Packit b00eeb
void              _gcr_live_search_set_hook_widget        (GcrLiveSearch *self,
Packit b00eeb
                                                           GtkWidget *hook);
Packit b00eeb
Packit b00eeb
const gchar *     _gcr_live_search_get_text               (GcrLiveSearch *self);
Packit b00eeb
void              _gcr_live_search_set_text               (GcrLiveSearch *self,
Packit b00eeb
                                                           const gchar *text);
Packit b00eeb
Packit b00eeb
gboolean          _gcr_live_search_match                  (GcrLiveSearch *self,
Packit b00eeb
                                                           const gchar *string);
Packit b00eeb
Packit b00eeb
GPtrArray *       _gcr_live_search_strip_utf8_string      (const gchar *string);
Packit b00eeb
Packit b00eeb
gboolean          _gcr_live_search_match_words            (const gchar *string,
Packit b00eeb
                                                           GPtrArray *words);
Packit b00eeb
Packit b00eeb
GPtrArray *       _gcr_live_search_get_words              (GcrLiveSearch *self);
Packit b00eeb
Packit b00eeb
/* Made public for unit tests */
Packit b00eeb
gboolean          _gcr_live_search_match_string           (const gchar *string,
Packit b00eeb
                                                           const gchar *prefix);
Packit b00eeb
Packit b00eeb
G_END_DECLS
Packit b00eeb
Packit b00eeb
#endif /* __GCR_LIVE_SEARCH_H__ */