other-licenses/atk-1.0/atk/atkeditabletext.h

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

michael@0 1 /* ATK - Accessibility Toolkit
michael@0 2 * Copyright 2001 Sun Microsystems Inc.
michael@0 3 *
michael@0 4 * This library is free software; you can redistribute it and/or
michael@0 5 * modify it under the terms of the GNU Library General Public
michael@0 6 * License as published by the Free Software Foundation; either
michael@0 7 * version 2 of the License, or (at your option) any later version.
michael@0 8 *
michael@0 9 * This library is distributed in the hope that it will be useful,
michael@0 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
michael@0 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
michael@0 12 * Library General Public License for more details.
michael@0 13 *
michael@0 14 * You should have received a copy of the GNU Library General Public
michael@0 15 * License along with this library; if not, write to the
michael@0 16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
michael@0 17 * Boston, MA 02111-1307, USA.
michael@0 18 */
michael@0 19
michael@0 20 #ifndef __ATK_EDITABLE_TEXT_H__
michael@0 21 #define __ATK_EDITABLE_TEXT_H__
michael@0 22
michael@0 23 #include <atk/atkobject.h>
michael@0 24 #include <atk/atktext.h>
michael@0 25
michael@0 26 #ifdef __cplusplus
michael@0 27 extern "C" {
michael@0 28 #endif /* __cplusplus */
michael@0 29
michael@0 30 /*
michael@0 31 * AtkEditableText is used to support access in an "accessibility" context
michael@0 32 * to editing features of editable text widgets.
michael@0 33 */
michael@0 34
michael@0 35 #define ATK_TYPE_EDITABLE_TEXT (atk_editable_text_get_type ())
michael@0 36 #define ATK_IS_EDITABLE_TEXT(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_EDITABLE_TEXT)
michael@0 37 #define ATK_EDITABLE_TEXT(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_EDITABLE_TEXT, AtkEditableText)
michael@0 38 #define ATK_EDITABLE_TEXT_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATK_TYPE_EDITABLE_TEXT, AtkEditableTextIface))
michael@0 39
michael@0 40 #ifndef _TYPEDEF_ATK_EDITABLE_TEXT_
michael@0 41 #define _TYPEDEF_ATK_EDITABLE_TEXT_
michael@0 42 typedef struct _AtkEditableText AtkEditableText;
michael@0 43 #endif
michael@0 44 typedef struct _AtkEditableTextIface AtkEditableTextIface;
michael@0 45
michael@0 46 struct _AtkEditableTextIface
michael@0 47 {
michael@0 48 GTypeInterface parent_interface;
michael@0 49
michael@0 50 gboolean (* set_run_attributes) (AtkEditableText *text,
michael@0 51 AtkAttributeSet *attrib_set,
michael@0 52 gint start_offset,
michael@0 53 gint end_offset);
michael@0 54 void (* set_text_contents) (AtkEditableText *text,
michael@0 55 const gchar *string);
michael@0 56 void (* insert_text) (AtkEditableText *text,
michael@0 57 const gchar *string,
michael@0 58 gint length,
michael@0 59 gint *position);
michael@0 60 void (* copy_text) (AtkEditableText *text,
michael@0 61 gint start_pos,
michael@0 62 gint end_pos);
michael@0 63 void (* cut_text) (AtkEditableText *text,
michael@0 64 gint start_pos,
michael@0 65 gint end_pos);
michael@0 66 void (* delete_text) (AtkEditableText *text,
michael@0 67 gint start_pos,
michael@0 68 gint end_pos);
michael@0 69 void (* paste_text) (AtkEditableText *text,
michael@0 70 gint position);
michael@0 71
michael@0 72 AtkFunction pad1;
michael@0 73 AtkFunction pad2;
michael@0 74 };
michael@0 75 GType atk_editable_text_get_type (void);
michael@0 76
michael@0 77
michael@0 78 gboolean atk_editable_text_set_run_attributes (AtkEditableText *text,
michael@0 79 AtkAttributeSet *attrib_set,
michael@0 80 gint start_offset,
michael@0 81 gint end_offset);
michael@0 82 void atk_editable_text_set_text_contents (AtkEditableText *text,
michael@0 83 const gchar *string);
michael@0 84 void atk_editable_text_insert_text (AtkEditableText *text,
michael@0 85 const gchar *string,
michael@0 86 gint length,
michael@0 87 gint *position);
michael@0 88 void atk_editable_text_copy_text (AtkEditableText *text,
michael@0 89 gint start_pos,
michael@0 90 gint end_pos);
michael@0 91 void atk_editable_text_cut_text (AtkEditableText *text,
michael@0 92 gint start_pos,
michael@0 93 gint end_pos);
michael@0 94 void atk_editable_text_delete_text (AtkEditableText *text,
michael@0 95 gint start_pos,
michael@0 96 gint end_pos);
michael@0 97 void atk_editable_text_paste_text (AtkEditableText *text,
michael@0 98 gint position);
michael@0 99
michael@0 100 #ifdef __cplusplus
michael@0 101 }
michael@0 102 #endif /* __cplusplus */
michael@0 103
michael@0 104
michael@0 105 #endif /* __ATK_EDITABLE_TEXT_H__ */

mercurial