Quelle AccessibleHyperlink.idl
Sprache: C
/*************************************************************************
*
* File Name ( AccessibleHyperlink . idl )
*
* IAccessible2 IDL Specification
*
* Copyright ( c ) 2007 , 2010 Linux Foundation
* Copyright ( c ) 2006 IBM Corporation
* Copyright ( c ) 2000 , 2006 Sun Microsystems , Inc .
* All rights reserved .
*
*
* Redistribution and use in source and binary forms , with or without
* modification , are permitted provided that the following conditions
* are met :
*
* 1 . Redistributions of source code must retain the above copyright
* notice , this list of conditions and the following disclaimer .
*
* 2 . Redistributions in binary form must reproduce the above
* copyright notice , this list of conditions and the following
* disclaimer in the documentation and / or other materials
* provided with the distribution .
*
* 3 . Neither the name of the Linux Foundation nor the names of its
* contributors may be used to endorse or promote products
* derived from this software without specific prior written
* permission .
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
* CONTRIBUTORS " AS IS " AND ANY EXPRESS OR IMPLIED WARRANTIES ,
* INCLUDING , BUT NOT LIMITED TO , THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED . IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT , INDIRECT , INCIDENTAL ,
* SPECIAL , EXEMPLARY , OR CONSEQUENTIAL DAMAGES ( INCLUDING , BUT
* NOT LIMITED TO , PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ;
* LOSS OF USE , DATA , OR PROFITS ; OR BUSINESS INTERRUPTION )
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY , WHETHER IN
* CONTRACT , STRICT LIABILITY , OR TORT ( INCLUDING NEGLIGENCE OR
* OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE ,
* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE .
*
* This BSD License conforms to the Open Source Initiative " Simplified
* BSD License " as published at :
* http : //www.opensource.org/licenses/bsd-license.php
*
* IAccessible2 is a trademark of the Linux Foundation . The IAccessible2
* mark may be used in accordance with the Linux Foundation Trademark
* Policy to indicate compliance with the IAccessible2 specification .
*
************************************************************************/
import "objidl.idl" ;
import "oaidl.idl" ;
import "oleacc.idl" ;
import "AccessibleAction.idl" ;
/** @brief This interface represents hyperlinks.
This interface represents a hyperlink associated with a single substring
of text or single non - text object . Non - text objects can have either a
single link or a collection of links such as when the non - text object is
an image map .
Linked objects and anchors are implementation dependent . This interface is derived
from IAccessibleAction . IAccessibleAction : : nActions is one greater than the
maximum value for the indices used with the methods of this interface .
Furthermore , the object that implements this interface has to be connected
implicitly or explicitly with an object that implements IAccessibleText .
IAccessibleHyperlink : : startIndex and IAccessibleHyperlink : : endIndex are
indices with respect to the text exposed by IAccessibleText .
This interface provides access to a single object which can have multiple actions .
An example is an image map which is an image with multiple links each of which is
associated with a separate non - overlapping area of the image . This interface could
also be applied to other kinds of objects with multiple actions such as " smart tags "
which are objects , typically strings , which have multiple actions such as
" Activate URI " , " Bookmark URI " , etc .
An interesting use case is an image map where each area is associated with multiple
actions , e . g . an image map of smart tags . In this case you would have to implement
two levels of accessible hyperlinks . The first level hyperlinks would only implement
anchor and anchorTarget . The anchors would all reference the image object . The
anchorTargets would reference the second level accessible hyperlink objects . None
of the IAccessibleAction methods would be implemented on the first level hyperlink
objects . The second level hyperlink objects would implement the IAccessibleAction
methods . Their anchors would also reference the image object and their anchorTargets
would reference URLs or the objects that would be activated .
This use case demonstrates that in some cases there is no need for IAccessibleHyperlink
to derive from IAccessibleAction . As a result it may be removed in a later version of
the IDL and it is suggested that implementations should not rely on the inheritance .
*/
[object, uuid(01 C20F2B-3 DD2-400 f-949 F-AD00BDAB1D41)]
interface IAccessibleHyperlink : IAccessibleAction
{
/** @brief Returns an object that represents the link anchor, as appropriate
for the link at the specified index .
@ param [ in ] index
A 0 based index identifies the anchor when , as in the case of an image map ,
there is more than one link represented by this object . The valid maximal
index is indicated by IAccessibleAction : : nActions .
@ param [ out ] anchor
This is an implementation dependent value . For example , for a text link this
method could return the substring of the containing string where the substring
is overridden with link behavior , and for an image link this method could return
an IUnknown VARIANT for IAccessibleImage . See the section about
@ ref _ variants " VARIANTs " for additional information .
@ retval S_OK
@ retval E_INVALIDARG if bad [ in ] passed
*/
[propget] HRESULT anchor
(
[in] long index,
[out, retval] VARIANT *anchor
);
/** @brief Returns an object representing the target of the link, as appropriate
for the link at the specified index .
@ param [ in ] index
A 0 based index identifies the anchor when , as in the case of an image map ,
there is more than one link represented by this object . The valid maximal
index is indicated by IAccessibleAction : : nActions .
@ param [ out ] anchorTarget
This is an implementation dependent value . For example this method could
return a BSTR VARIANT of the URI . Alternatively this method could return an
IUnknown VARIANT of a COM interface representing a target object to be
activated when the link is activated . See the section about
@ ref _ variants " VARIANTs " for additional information .
@ retval S_OK
@ retval E_INVALIDARG if bad [ in ] passed
*/
[propget] HRESULT anchorTarget
(
[in] long index,
[out, retval] VARIANT *anchorTarget
);
/** @brief Returns the 0 based character offset at which the textual representation of the hyperlink starts.
The returned value is related to the IAccessibleText interface of the object that
owns this hyperlink .
@ param [ out ] index
@ retval S_OK
*/
[propget] HRESULT startIndex
(
[out, retval] long *index
);
/** @brief Returns the 0 based character offset at which the textual representation of the hyperlink ends.
The returned value is related to the IAccessibleText interface of the object that
owns this hyperlink . The character at the index is not part of the hypertext .
@ param [ out ] index
@ retval S_OK
*/
[propget] HRESULT endIndex
(
[out, retval] long *index
);
/** @brief Returns whether the target object referenced by this link is still valid.
This is a volatile state that may change without sending an appropriate event .
Returns TRUE if the referenced target is still valid and FALSE otherwise .
This has also been used to indicate whether or not the URI of the anchorTarget
is malformed .
@ param [ out ] valid
If false , one or more of the object ' s links are invalid .
If true , all of the object ' s links are valid .
@ retval S_OK
@ retval S_FALSE if there is nothing to return , [ out ] value is FALSE
@ note This method is not being used , is deprecated , and should not be implemented or
used . It is likely that this method will be removed in a later version of the IDL .
*/
[propget] HRESULT valid
(
[out, retval] boolean *valid
);
}
Messung V0.5 in Prozent C=96 H=100 G=97
¤ Dauer der Verarbeitung: 0.21 Sekunden
(vorverarbeitet am 2026-09-28)
¤
*© Formatika GbR, Deutschland
2026-10-09
Neuigkeiten
Aktuelles
Motto des Tages
Open Source Software
Jenseits des Üblichen ....
Besucherstatistik
Statistik
#Sources=1126438
#Domains=1867298