X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtktextmark.h;h=5bddf92739f8c06cde0f74fa27c2cdb1fdc3b905;hb=55196a705f00564a44647bfc97981db0a783369a;hp=feab32378dc0b6c0bd442d9059f04cda84006532;hpb=244996ffec3b76c4cbef2e9684c0557ffed7e8fa;p=~andy%2Fgtk diff --git a/gtk/gtktextmark.h b/gtk/gtktextmark.h index feab32378..5bddf9273 100644 --- a/gtk/gtktextmark.h +++ b/gtk/gtktextmark.h @@ -1,27 +1,105 @@ -#ifndef GTK_TEXT_MARK_H -#define GTK_TEXT_MARK_H +/* gtktextmark.h - mark segments + * + * Copyright (c) 1994 The Regents of the University of California. + * Copyright (c) 1994-1997 Sun Microsystems, Inc. + * Copyright (c) 2000 Red Hat, Inc. + * Tk -> Gtk port by Havoc Pennington + * + * This software is copyrighted by the Regents of the University of + * California, Sun Microsystems, Inc., and other parties. The + * following terms apply to all files associated with the software + * unless explicitly disclaimed in individual files. + * + * The authors hereby grant permission to use, copy, modify, + * distribute, and license this software and its documentation for any + * purpose, provided that existing copyright notices are retained in + * all copies and that this notice is included verbatim in any + * distributions. No written agreement, license, or royalty fee is + * required for any of the authorized uses. Modifications to this + * software may be copyrighted by their authors and need not follow + * the licensing terms described here, provided that the new terms are + * clearly indicated on the first page of each file where they apply. + * + * IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY + * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL + * DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, + * OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + * THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND + * NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, + * AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE + * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + * GOVERNMENT USE: If you are acquiring this software on behalf of the + * U.S. government, the Government shall have only "Restricted Rights" + * in the software and related documentation as defined in the Federal + * Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you + * are acquiring the software on behalf of the Department of Defense, + * the software shall be classified as "Commercial Computer Software" + * and the Government shall have only "Restricted Rights" as defined + * in Clause 252.227-7013 (c) (1) of DFARs. Notwithstanding the + * foregoing, the authors grant the U.S. Government and others acting + * in its behalf permission to use and distribute the software in + * accordance with the terms specified in this license. + * + */ -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only can be included directly." +#endif + +#ifndef __GTK_TEXT_MARK_H__ +#define __GTK_TEXT_MARK_H__ + +G_BEGIN_DECLS /* The GtkTextMark data type */ -typedef struct _GtkTextMark GtkTextMark; +typedef struct _GtkTextMark GtkTextMark; +typedef struct _GtkTextMarkClass GtkTextMarkClass; + +#define GTK_TYPE_TEXT_MARK (gtk_text_mark_get_type ()) +#define GTK_TEXT_MARK(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GTK_TYPE_TEXT_MARK, GtkTextMark)) +#define GTK_TEXT_MARK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TEXT_MARK, GtkTextMarkClass)) +#define GTK_IS_TEXT_MARK(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GTK_TYPE_TEXT_MARK)) +#define GTK_IS_TEXT_MARK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TEXT_MARK)) +#define GTK_TEXT_MARK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TEXT_MARK, GtkTextMarkClass)) + +struct _GtkTextMark +{ + GObject parent_instance; + + gpointer GSEAL (segment); +}; + +struct _GtkTextMarkClass +{ + GObjectClass parent_class; + + /* Padding for future expansion */ + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +}; + +GType gtk_text_mark_get_type (void) G_GNUC_CONST; -void gtk_text_mark_set_visible (GtkTextMark *mark, - gboolean setting); -gboolean gtk_text_mark_is_visible (GtkTextMark *mark); -/* FIXME gconst */ -const char * gtk_text_mark_get_name (GtkTextMark *mark); -GtkTextMark *gtk_text_mark_ref (GtkTextMark *mark); -void gtk_text_mark_unref (GtkTextMark *mark); -gboolean gtk_text_mark_deleted (GtkTextMark *mark); +void gtk_text_mark_set_visible (GtkTextMark *mark, + gboolean setting); +gboolean gtk_text_mark_get_visible (GtkTextMark *mark); +GtkTextMark *gtk_text_mark_new (const gchar *name, + gboolean left_gravity); +G_CONST_RETURN gchar* gtk_text_mark_get_name (GtkTextMark *mark); +gboolean gtk_text_mark_get_deleted (GtkTextMark *mark); +GtkTextBuffer* gtk_text_mark_get_buffer (GtkTextMark *mark); +gboolean gtk_text_mark_get_left_gravity (GtkTextMark *mark); -#ifdef __cplusplus -} -#endif /* __cplusplus */ +G_END_DECLS #endif