diff options
-rw-r--r-- | ChangeLog | 26 | ||||
-rwxr-xr-x | atk/atkhyperlink.c | 26 | ||||
-rwxr-xr-x | atk/atkhyperlink.h | 22 | ||||
-rwxr-xr-x | atk/atkobject.c | 1 | ||||
-rwxr-xr-x | atk/atkrelationtype.h | 11 | ||||
-rw-r--r-- | configure.in | 4 | ||||
-rw-r--r-- | docs/atk-sections.txt | 4 | ||||
-rw-r--r-- | docs/tmpl/atkhyperlink.sgml | 9 | ||||
-rw-r--r-- | docs/tmpl/atkobject.sgml | 8 | ||||
-rw-r--r-- | docs/tmpl/atkrelation.sgml | 2 | ||||
-rw-r--r-- | po/sv.po | 148 | ||||
-rw-r--r-- | tests/testrelation.c | 17 |
12 files changed, 197 insertions, 81 deletions
@@ -1,3 +1,29 @@ +2002-11-14 Bill Haneman <bill.haneman@sun.com> + + * configure.in: + Revved to 1.1.2, interface age 0, binary age 102. + + * atk/atkrelationtype.h: + (ATK_RELATION_EMBEDS, ATK_RELATION_EMBEDDED_BY): + New relations to handle content embedding, for instance + text that embeds or flows around images. + + * atk/atkhyperlink.h: + (atk_hyperlink_is_inline): + New API, returns whether a hyperlink's content is + partially displayed inline; useful for small images + emedded in text, and for HTML <src> elements. + (AtkHyperlinkClass->link_state): + New virtualized method, used to implement various + state query API such as atk_hyperlink_is_inline(). + + * atk/atkhyperlink.c: + (atk_hyperlink_is_inline): + New method. + + * docs/atk-sections.txt: + Additions for above API. + 2002-11-13 Padraig O'Briain <padraig.obriain@sun.com> * atk/atkobject.[ch]: Add signal active-descendant-changed diff --git a/atk/atkhyperlink.c b/atk/atkhyperlink.c index 569a33f..90f4ff4 100755 --- a/atk/atkhyperlink.c +++ b/atk/atkhyperlink.c @@ -199,6 +199,32 @@ atk_hyperlink_is_valid (AtkHyperlink *link) } /** + * atk_hyperlink_is_inline: + * @link_: an #AtkHyperlink + * + * Indicates whether the link currently displays some or all of its + * content inline. Ordinary HTML links will usually return + * %FALSE, but an inline <src> HTML element will return + * %TRUE. +a * + * Returns: whether or not this link displays its content inline. + * + **/ +gboolean +atk_hyperlink_is_inline (AtkHyperlink *link) +{ + AtkHyperlinkClass *klass; + + g_return_val_if_fail (ATK_IS_HYPERLINK (link), FALSE); + + klass = ATK_HYPERLINK_GET_CLASS (link); + if (klass->link_state) + return (klass->link_state (link) & ATK_HYPERLINK_IS_INLINE); + else + return FALSE; +} + +/** * atk_hyperlink_get_n_anchors: * @link_: an #AtkHyperlink * diff --git a/atk/atkhyperlink.h b/atk/atkhyperlink.h index 15d804f..a0c6025 100755 --- a/atk/atkhyperlink.h +++ b/atk/atkhyperlink.h @@ -32,6 +32,17 @@ extern "C" { * It implements the AtkAction interface. */ +/** + *AtkHyperlinkStateFlags + *@ATK_HYPERLINK_IS_INLINE: Link is inline + * + *Describes the type of link + **/ +typedef enum +{ + ATK_HYPERLINK_IS_INLINE = 1 << 0 +} AtkHyperlinkStateFlags; + #define ATK_TYPE_HYPERLINK (atk_hyperlink_get_type ()) #define ATK_HYPERLINK(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_HYPERLINK, AtkHyperlink)) #define ATK_HYPERLINK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ATK_TYPE_HYPERLINK, AtkHyperlinkClass)) @@ -85,10 +96,17 @@ struct _AtkHyperlinkClass */ gint (* get_n_anchors) (AtkHyperlink *link_); + /* + * Returns a set of bitflags which encode state information. + * Used by non-virtualized state query methods, not intended, + * for direct client use. It is virtualized, but clients should use + * atk_hyperlink_is_inline (), etc. + */ + guint (* link_state) (AtkHyperlink *link_); + AtkFunction pad1; AtkFunction pad2; AtkFunction pad3; - AtkFunction pad4; }; GType atk_hyperlink_get_type (void); @@ -105,6 +123,8 @@ gint atk_hyperlink_get_start_index (AtkHyperlink *link_); gboolean atk_hyperlink_is_valid (AtkHyperlink *link_); +gboolean atk_hyperlink_is_inline (AtkHyperlink *link_); + gint atk_hyperlink_get_n_anchors (AtkHyperlink *link_); diff --git a/atk/atkobject.c b/atk/atkobject.c index 14e36ca..3b51ab6 100755 --- a/atk/atkobject.c +++ b/atk/atkobject.c @@ -1516,7 +1516,6 @@ atk_object_remove_relationship (AtkObject *object, if (atk_relation_get_relation_type (relation) == relationship) { GPtrArray *array; - gint j; array = atk_relation_get_target (relation); diff --git a/atk/atkrelationtype.h b/atk/atkrelationtype.h index 798d7c7..b58d685 100755 --- a/atk/atkrelationtype.h +++ b/atk/atkrelationtype.h @@ -37,7 +37,12 @@ extern "C" { * AtkObject in a sequential way, (for instance text-flow). *@ATK_RELATION_FLOWS_FROM: Indicates that the object has content that flows logically from * another AtkObject in a sequential way, (for instance text-flow). - *@ATK_RELATION_SUBWINDOW_OF: [not sure about this one, ask peter] + *@ATK_RELATION_SUBWINDOW_OF: [not sure about this one, ask Peter] + *@ATK_RELATION_EMBEDS: Indicates that the object visually embeds + * another object's content, i.e. this object's content flows around + * another's content. + *@ATK_RELATION_EMBEDDED_BY: Inverse of %ATK_RELATION_EMBEDS, indicates that + * this object's content is visualy embedded in another object. *@ATK_RELATION_LAST_DEFINED: * *Describes the type of the relation @@ -53,7 +58,9 @@ typedef enum ATK_RELATION_NODE_CHILD_OF, ATK_RELATION_FLOWS_TO, ATK_RELATION_FLOWS_FROM, - ATK_RELATION_SUBWINDOW_OF, /* not sure about this one, ask Peter */ + ATK_RELATION_SUBWINDOW_OF, + ATK_RELATION_EMBEDS, + ATK_RELATION_EMBEDDED_BY, ATK_RELATION_LAST_DEFINED } AtkRelationType; diff --git a/configure.in b/configure.in index 754682a..cf23543 100644 --- a/configure.in +++ b/configure.in @@ -29,7 +29,7 @@ dnl set ATK_BINARY_AGE _and_ ATK_INTERFACE_AGE to 0. dnl The triplet ATK_MAJOR_VERSION=1 ATK_MINOR_VERSION=1 -ATK_MICRO_VERSION=1 +ATK_MICRO_VERSION=2 ATK_VERSION=$ATK_MAJOR_VERSION.$ATK_MINOR_VERSION.$ATK_MICRO_VERSION dnl The X.Y in -latk-X.Y line. This is expected to stay 1.0 until Atk 2. @@ -38,7 +38,7 @@ ATK_API_VERSION=1.0 dnl Number of releases since we've added interfaces ATK_INTERFACE_AGE=0 -ATK_BINARY_AGE=101 +ATK_BINARY_AGE=102 AC_SUBST(ATK_MAJOR_VERSION) AC_SUBST(ATK_MINOR_VERSION) diff --git a/docs/atk-sections.txt b/docs/atk-sections.txt index 598f6ca..47ba1a2 100644 --- a/docs/atk-sections.txt +++ b/docs/atk-sections.txt @@ -429,11 +429,13 @@ atk_value_get_type <FILE>atkhyperlink</FILE> <TITLE>AtkHyperlink</TITLE> AtkHyperlink +AtkHyperlinkStateFlags atk_hyperlink_get_uri atk_hyperlink_get_object atk_hyperlink_get_end_index atk_hyperlink_get_start_index atk_hyperlink_is_valid +atk_hyperlink_is_inline atk_hyperlink_get_n_anchors <SUBSECTION Standard> ATK_HYPERLINK @@ -443,6 +445,8 @@ atk_hyperlink_get_type ATK_HYPERLINK_CLASS ATK_IS_HYPERLINK_CLASS ATK_HYPERLINK_GET_CLASS +atk_hyperlink_state_flags_get_type +ATK_TYPE_HYPERLINK_STATE_FLAGS </SECTION> <SECTION> diff --git a/docs/tmpl/atkhyperlink.sgml b/docs/tmpl/atkhyperlink.sgml index 87dadc7..86db8a6 100644 --- a/docs/tmpl/atkhyperlink.sgml +++ b/docs/tmpl/atkhyperlink.sgml @@ -69,6 +69,15 @@ The AtkHyperlink structure should not be accessed directly. @Returns: +<!-- ##### FUNCTION atk_hyperlink_is_inline ##### --> +<para> + +</para> + +@link_: +@Returns: + + <!-- ##### FUNCTION atk_hyperlink_get_n_anchors ##### --> <para> diff --git a/docs/tmpl/atkobject.sgml b/docs/tmpl/atkobject.sgml index e52834b..d26bce5 100644 --- a/docs/tmpl/atkobject.sgml +++ b/docs/tmpl/atkobject.sgml @@ -422,6 +422,14 @@ atk_object_connect_property_change_handler(). @Returns: +<!-- ##### SIGNAL AtkObject::active-descendant-changed ##### --> +<para> + +</para> + +@atkobject: the object which received the signal. +@arg1: + <!-- ##### SIGNAL AtkObject::children-changed ##### --> <para> The children_changed signal supports two details, "add" and "remove" which diff --git a/docs/tmpl/atkrelation.sgml b/docs/tmpl/atkrelation.sgml index 6d1797b..a6c258c 100644 --- a/docs/tmpl/atkrelation.sgml +++ b/docs/tmpl/atkrelation.sgml @@ -41,6 +41,8 @@ The AtkRelation structure should not be accessed directly. @ATK_RELATION_FLOWS_TO: @ATK_RELATION_FLOWS_FROM: @ATK_RELATION_SUBWINDOW_OF: +@ATK_RELATION_EMBEDS: +@ATK_RELATION_EMBEDDED_BY: @ATK_RELATION_LAST_DEFINED: <!-- ##### FUNCTION atk_relation_type_register ##### --> @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: atk\n" -"POT-Creation-Date: 2002-11-11 11:58+0100\n" +"POT-Creation-Date: 2002-11-14 13:16+0000\n" "PO-Revision-Date: 2002-11-11 11:59+0100\n" "Last-Translator: Christian Rose <menthos@menthos.com>\n" "Language-Team: Swedish <sv@li.org>\n" @@ -16,295 +16,295 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: atk/atkobject.c:1172 +#: atk/atkobject.c:1183 msgid "invalid" msgstr "ogiltig" -#: atk/atkobject.c:1175 +#: atk/atkobject.c:1186 msgid "accel-label" msgstr "genvägsetikett" -#: atk/atkobject.c:1178 +#: atk/atkobject.c:1189 msgid "alert" msgstr "varning" -#: atk/atkobject.c:1181 +#: atk/atkobject.c:1192 msgid "animation" msgstr "animering" -#: atk/atkobject.c:1184 +#: atk/atkobject.c:1195 msgid "arrow" msgstr "pil" -#: atk/atkobject.c:1187 +#: atk/atkobject.c:1198 msgid "calendar" msgstr "kalender" -#: atk/atkobject.c:1190 +#: atk/atkobject.c:1201 msgid "canvas" msgstr "canvas" -#: atk/atkobject.c:1193 +#: atk/atkobject.c:1204 msgid "check-box" msgstr "kryssruta" -#: atk/atkobject.c:1196 +#: atk/atkobject.c:1207 msgid "check-menu-item" msgstr "kryssmenypost" -#: atk/atkobject.c:1199 +#: atk/atkobject.c:1210 msgid "color-chooser" msgstr "färgväljare" -#: atk/atkobject.c:1202 +#: atk/atkobject.c:1213 msgid "column-header" msgstr "kolumnrubrik" -#: atk/atkobject.c:1205 +#: atk/atkobject.c:1216 msgid "combo-box" msgstr "komboruta" -#: atk/atkobject.c:1208 +#: atk/atkobject.c:1219 msgid "date-editor" msgstr "datumredigerare" -#: atk/atkobject.c:1211 +#: atk/atkobject.c:1222 msgid "desktop-icon" msgstr "skrivbordsikon" -#: atk/atkobject.c:1214 +#: atk/atkobject.c:1225 msgid "desktop-frame" msgstr "skrivbordsram" -#: atk/atkobject.c:1217 +#: atk/atkobject.c:1228 msgid "dial" msgstr "ring" -#: atk/atkobject.c:1220 +#: atk/atkobject.c:1231 msgid "dialog" msgstr "dialog" -#: atk/atkobject.c:1223 +#: atk/atkobject.c:1234 msgid "directory-pane" msgstr "katalogpanel" -#: atk/atkobject.c:1226 +#: atk/atkobject.c:1237 msgid "drawing-area" msgstr "rityta" -#: atk/atkobject.c:1229 +#: atk/atkobject.c:1240 msgid "file-chooser" msgstr "filväljare" -#: atk/atkobject.c:1232 +#: atk/atkobject.c:1243 msgid "filler" msgstr "ifyllare" -#: atk/atkobject.c:1235 +#: atk/atkobject.c:1246 msgid "font-chooser" msgstr "typsnittsväljare" -#: atk/atkobject.c:1238 +#: atk/atkobject.c:1249 msgid "frame" msgstr "ram" -#: atk/atkobject.c:1241 +#: atk/atkobject.c:1252 msgid "glass-pane" msgstr "glaspanel" -#: atk/atkobject.c:1244 +#: atk/atkobject.c:1255 msgid "html-container" msgstr "html-behållare" -#: atk/atkobject.c:1247 +#: atk/atkobject.c:1258 msgid "icon" msgstr "ikon" -#: atk/atkobject.c:1250 +#: atk/atkobject.c:1261 msgid "image" msgstr "bild" -#: atk/atkobject.c:1253 +#: atk/atkobject.c:1264 msgid "internal-frame" msgstr "intern-ram" -#: atk/atkobject.c:1256 +#: atk/atkobject.c:1267 msgid "label" msgstr "etikett" -#: atk/atkobject.c:1259 +#: atk/atkobject.c:1270 msgid "layered-pane" msgstr "lagerpanel" -#: atk/atkobject.c:1262 +#: atk/atkobject.c:1273 msgid "list" msgstr "lista" -#: atk/atkobject.c:1265 +#: atk/atkobject.c:1276 msgid "list-item" msgstr "listpost" -#: atk/atkobject.c:1268 +#: atk/atkobject.c:1279 msgid "menu" msgstr "meny" -#: atk/atkobject.c:1271 +#: atk/atkobject.c:1282 msgid "menu-bar" msgstr "menyrad" -#: atk/atkobject.c:1274 +#: atk/atkobject.c:1285 msgid "menu-item" msgstr "menypost" -#: atk/atkobject.c:1277 +#: atk/atkobject.c:1288 msgid "option-pane" msgstr "alternativpanel" -#: atk/atkobject.c:1280 +#: atk/atkobject.c:1291 msgid "page-tab" msgstr "sidflik" -#: atk/atkobject.c:1283 +#: atk/atkobject.c:1294 msgid "page-tab-list" msgstr "sidflikslist" -#: atk/atkobject.c:1286 +#: atk/atkobject.c:1297 msgid "panel" msgstr "panel" -#: atk/atkobject.c:1289 +#: atk/atkobject.c:1300 msgid "password-text" msgstr "lösenordstext" -#: atk/atkobject.c:1292 +#: atk/atkobject.c:1303 msgid "popup-menu" msgstr "popupmeny" -#: atk/atkobject.c:1295 +#: atk/atkobject.c:1306 msgid "progress-bar" msgstr "förloppsmätare" -#: atk/atkobject.c:1298 +#: atk/atkobject.c:1309 msgid "push-button" msgstr "tryckknapp" -#: atk/atkobject.c:1301 +#: atk/atkobject.c:1312 msgid "radio-button" msgstr "radiioknapp" -#: atk/atkobject.c:1304 +#: atk/atkobject.c:1315 msgid "radio-menu-item" msgstr "radiomenypost" -#: atk/atkobject.c:1307 +#: atk/atkobject.c:1318 msgid "root-pane" msgstr "rotpanel" -#: atk/atkobject.c:1310 +#: atk/atkobject.c:1321 msgid "row-header" msgstr "radhuvud" -#: atk/atkobject.c:1313 +#: atk/atkobject.c:1324 msgid "scroll-bar" msgstr "rullningslist" -#: atk/atkobject.c:1316 +#: atk/atkobject.c:1327 msgid "scroll-pane" msgstr "rullningspanel" -#: atk/atkobject.c:1319 +#: atk/atkobject.c:1330 msgid "separator" msgstr "avskiljare" -#: atk/atkobject.c:1322 +#: atk/atkobject.c:1333 msgid "slider" msgstr "skjutreglage" -#: atk/atkobject.c:1325 +#: atk/atkobject.c:1336 msgid "split-pane" msgstr "delad-panel" -#: atk/atkobject.c:1328 +#: atk/atkobject.c:1339 msgid "spin-button" msgstr "spinnknapp" -#: atk/atkobject.c:1331 +#: atk/atkobject.c:1342 msgid "statusbar" msgstr "statusrad" -#: atk/atkobject.c:1334 +#: atk/atkobject.c:1345 msgid "table" msgstr "tabell" -#: atk/atkobject.c:1337 +#: atk/atkobject.c:1348 msgid "table-cell" msgstr "tabellcell" -#: atk/atkobject.c:1340 +#: atk/atkobject.c:1351 msgid "table-column-header" msgstr "tabellkolumnhuvud" -#: atk/atkobject.c:1343 +#: atk/atkobject.c:1354 msgid "table-row-header" msgstr "tabellradshuvud" -#: atk/atkobject.c:1346 +#: atk/atkobject.c:1357 msgid "tear-off-menu-item" msgstr "avtagbar-menypost" -#: atk/atkobject.c:1349 +#: atk/atkobject.c:1360 msgid "terminal" msgstr "terminal" -#: atk/atkobject.c:1352 +#: atk/atkobject.c:1363 msgid "text" msgstr "text" -#: atk/atkobject.c:1355 +#: atk/atkobject.c:1366 msgid "toggle-button" msgstr "växlingsknapp" -#: atk/atkobject.c:1358 +#: atk/atkobject.c:1369 msgid "tool-bar" msgstr "verktygsrad" -#: atk/atkobject.c:1361 +#: atk/atkobject.c:1372 msgid "tool-tip" msgstr "verktygstips" -#: atk/atkobject.c:1364 +#: atk/atkobject.c:1375 msgid "tree" msgstr "träd" -#: atk/atkobject.c:1367 +#: atk/atkobject.c:1378 msgid "tree-table" msgstr "trädtabell" -#: atk/atkobject.c:1370 +#: atk/atkobject.c:1381 msgid "unknown" msgstr "okänd" -#: atk/atkobject.c:1373 +#: atk/atkobject.c:1384 msgid "viewport" msgstr "skrivbordsvy" -#: atk/atkobject.c:1376 +#: atk/atkobject.c:1387 msgid "window" msgstr "fönster" -#: atk/atkobject.c:1379 +#: atk/atkobject.c:1390 msgid "header" msgstr "huvud" -#: atk/atkobject.c:1382 +#: atk/atkobject.c:1393 msgid "footer" msgstr "fot" -#: atk/atkobject.c:1385 +#: atk/atkobject.c:1396 msgid "paragraph" msgstr "stycke" -#: atk/atkobject.c:1388 +#: atk/atkobject.c:1399 msgid "ruler" msgstr "linjal" diff --git a/tests/testrelation.c b/tests/testrelation.c index b42f7c2..2385dcf 100644 --- a/tests/testrelation.c +++ b/tests/testrelation.c @@ -52,10 +52,25 @@ test_relation (void) return FALSE; } + name = atk_relation_type_get_name (ATK_RELATION_EMBEDS); + g_return_val_if_fail (name, FALSE); + if (strcmp (name, "embeds") != 0) + { + g_print ("Unexpected name for ATK_RELATION_EMBEDS %s\n", name); + return FALSE; + } + + type1 = atk_relation_type_for_name ("embedded-by"); + if (type1 != ATK_RELATION_EMBEDDED_BY) + { + g_print ("Unexpected role for ATK_RELATION_EMBEDDED_BY\n"); + return FALSE; + } + type1 = atk_relation_type_for_name ("controlled-by"); if (type1 != ATK_RELATION_CONTROLLED_BY) { - g_print ("Unexpected type for focused\n"); + g_print ("Unexpected name for ATK_RELATION_CONTROLLED_BY\n"); return FALSE; } |