1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module atk.DocumentIF; 26 27 private import glib.Str; 28 private import gobject.Signals; 29 private import gtkc.atk; 30 public import gtkc.atktypes; 31 public import gtkc.gdktypes; 32 private import std.algorithm; 33 34 35 /** 36 * The AtkDocument interface should be supported by any object whose 37 * content is a representation or view of a document. The AtkDocument 38 * interface should appear on the toplevel container for the document 39 * content; however AtkDocument instances may be nested (i.e. an 40 * AtkDocument may be a descendant of another AtkDocument) in those 41 * cases where one document contains "embedded content" which can 42 * reasonably be considered a document in its own right. 43 */ 44 public interface DocumentIF{ 45 /** Get the main Gtk struct */ 46 public AtkDocument* getDocumentStruct(); 47 48 /** the main Gtk struct as a void* */ 49 protected void* getStruct(); 50 51 52 /** 53 * 54 * Params: 55 * attributeName = a character string representing the name of the attribute 56 * whose value is being queried. 57 * Return: a string value associated with the named 58 * attribute for this document, or NULL if a value for 59 * #attribute_name has not been specified for this document. 60 * 61 * Since: 1.12 62 */ 63 public string getAttributeValue(string attributeName); 64 65 /** 66 * Gets an AtkAttributeSet which describes document-wide 67 * attributes as name-value pairs. 68 * 69 * Return: An AtkAttributeSet containing the explicitly 70 * set name-value-pair attributes associated with this document 71 * as a whole. 72 * 73 * Since: 1.12 74 */ 75 public AtkAttributeSet* getAttributes(); 76 77 /** 78 * Return: current page number inside @document. -1 if not 79 * implemented, not know by the implementor or irrelevant. 80 * 81 * Since: 2.12 82 */ 83 public int getCurrentPageNumber(); 84 85 /** 86 * Gets a %gpointer that points to an instance of the DOM. It is 87 * up to the caller to check atk_document_get_type to determine 88 * how to cast this pointer. 89 * 90 * Deprecated: Since 2.12. @document is already a representation of 91 * the document. Use it directly, or one of its children, as an 92 * instance of the DOM. 93 * 94 * Return: a %gpointer that points to an instance of the DOM. 95 */ 96 public void* getDocument(); 97 98 /** 99 * Gets a string indicating the document type. 100 * 101 * Deprecated: Since 2.12. Please use atk_document_get_attributes() to 102 * ask for the document type if it applies. 103 * 104 * Return: a string indicating the document type 105 */ 106 public string getDocumentType(); 107 108 /** 109 * Gets a UTF-8 string indicating the POSIX-style LC_MESSAGES locale 110 * of the content of this document instance. Individual 111 * text substrings or images within this document may have 112 * a different locale, see atk_text_get_attributes and 113 * atk_image_get_image_locale. 114 * 115 * Deprecated: Please use atk_object_get_object_locale() instead. 116 * 117 * Return: a UTF-8 string indicating the POSIX-style LC_MESSAGES 118 * locale of the document content as a whole, or NULL if 119 * the document content does not specify a locale. 120 */ 121 public string getLocale(); 122 123 /** 124 * Return: total page count of @document. -1 if not implemented, not 125 * know by the implementor or irrelevant. 126 * 127 * Since: 2.12 128 */ 129 public int getPageCount(); 130 131 /** 132 * 133 * Params: 134 * attributeName = a character string representing the name of the attribute 135 * whose value is being set. 136 * attributeValue = a string value to be associated with #attribute_name. 137 * Return: TRUE if #value is successfully associated with #attribute_name 138 * for this document, FALSE otherwise (e.g. if the document does not 139 * allow the attribute to be modified). 140 * 141 * Since: 1.12 142 */ 143 public bool setAttributeValue(string attributeName, string attributeValue); 144 /** 145 * The 'load-complete' signal is emitted when a pending load of 146 * a static document has completed. This signal is to be 147 * expected by ATK clients if and when AtkDocument implementors 148 * expose ATK_STATE_BUSY. If the state of an AtkObject which 149 * implements AtkDocument does not include ATK_STATE_BUSY, it 150 * should be safe for clients to assume that the AtkDocument's 151 * static contents are fully loaded into the container. 152 * (Dynamic document contents should be exposed via other 153 * signals.) 154 */ 155 gulong addOnLoadComplete(void delegate(DocumentIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0) 156 ; 157 158 /** 159 * The 'load-stopped' signal is emitted when a pending load of 160 * document contents is cancelled, paused, or otherwise 161 * interrupted by the user or application logic. It should not 162 * however be emitted while waiting for a resource (for instance 163 * while blocking on a file or network read) unless a 164 * user-significant timeout has occurred. 165 */ 166 gulong addOnLoadStopped(void delegate(DocumentIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0) 167 ; 168 169 /** 170 * The 'page-changed' signal is emitted when the current page of 171 * a document changes, e.g. pressing page up/down in a document 172 * viewer. 173 * 174 * Params: 175 * pageNumber = the new page number. If this value is unknown 176 * or not applicable, -1 should be provided. 177 * 178 * Since: 2.12 179 */ 180 gulong addOnPageChanged(void delegate(int, DocumentIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0) 181 ; 182 183 /** 184 * The 'reload' signal is emitted when the contents of a 185 * document is refreshed from its source. Once 'reload' has 186 * been emitted, a matching 'load-complete' or 'load-stopped' 187 * signal should follow, which clients may await before 188 * interrogating ATK for the latest document content. 189 */ 190 gulong addOnReload(void delegate(DocumentIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0) 191 ; 192 193 }