Struct xpcom::interfaces::nsINavHistoryContainerResultNode [] [src]

#[repr(C)]
pub struct nsINavHistoryContainerResultNode { /* fields omitted */ }

interface nsINavHistoryContainerResultNode : nsINavHistoryResultNode

Methods

impl nsINavHistoryContainerResultNode
[src]

[src]

Cast this nsINavHistoryContainerResultNode to one of its base interfaces.

impl nsINavHistoryContainerResultNode
[src]

STATE_CLOSED: i64 = 0

STATE_LOADING: i64 = 1

STATE_OPENED: i64 = 2

[src]

/**
 * Base class for container results. This includes all types of groupings.
 * Bookmark folders and places queries will be QueryResultNodes which extends
 * these items.
 */
/**
   * Set this to allow descent into the container. When closed, attempting
   * to call getChildren or childCount will result in an error. You should
   * set this to false when you are done reading.
   *
   * For HOST and DAY groupings, doing this is free since the children have
   * been precomputed. For queries and bookmark folders, being open means they
   * will keep themselves up-to-date by listening for updates and re-querying
   * as needed.
   */

attribute boolean containerOpen;

[src]

/**
 * Base class for container results. This includes all types of groupings.
 * Bookmark folders and places queries will be QueryResultNodes which extends
 * these items.
 */
/**
   * Set this to allow descent into the container. When closed, attempting
   * to call getChildren or childCount will result in an error. You should
   * set this to false when you are done reading.
   *
   * For HOST and DAY groupings, doing this is free since the children have
   * been precomputed. For queries and bookmark folders, being open means they
   * will keep themselves up-to-date by listening for updates and re-querying
   * as needed.
   */

attribute boolean containerOpen;

[src]

/**
   * Indicates whether the container is closed, loading, or opened.  Loading
   * implies that the container has been opened asynchronously and has not yet
   * fully opened.
   */

readonly attribute unsigned short state;

[src]

/**
   * This indicates whether this node "may" have children, and can be used
   * when the container is open or closed. When the container is closed, it
   * will give you an exact answer if the node can easily be populated (for
   * example, a bookmark folder). If not (for example, a complex history query),
   * it will return true. When the container is open, it will always be
   * accurate. It is intended to be used to see if we should draw the "+" next
   * to a tree item.
   */

readonly attribute boolean hasChildren;

[src]

/**
   * This gives you the children of the nodes. It is preferrable to use this
   * interface over the array one, since it avoids creating an nsIArray object
   * and the interface is already the correct type.
   *
   * @throws NS_ERROR_NOT_AVAILABLE if containerOpen is false.
   */

readonly attribute unsigned long childCount;

[src]

nsINavHistoryResultNode getChild (in unsigned long aIndex);

[src]

/**
   * Get the index of a direct child in this container.
   *
   * @param aNode
   *        a result node.
   *
   * @return aNode's index in this container.
   * @throws NS_ERROR_NOT_AVAILABLE if containerOpen is false.
   * @throws NS_ERROR_INVALID_ARG if aNode isn't a direct child of this
   * container.
   */

unsigned long getChildIndex (in nsINavHistoryResultNode aNode);

Methods from Deref<Target = nsINavHistoryResultNode>

[src]

Cast this nsINavHistoryResultNode to one of its base interfaces.

[src]

/**
   * Indentifies the parent result node in the result set. This is null for
   * top level nodes.
   */

readonly attribute nsINavHistoryContainerResultNode parent;

[src]

/**
   * The history-result to which this node belongs.
   */

readonly attribute nsINavHistoryResult parentResult;

[src]

/**
   * URI of the resource in question. For visits and URLs, this is the URL of
   * the page. For folders and queries, this is the place: URI of the
   * corresponding folder or query. This may be empty for other types of
   * objects like host containers.
   */

readonly attribute AUTF8String uri;

[src]

readonly attribute unsigned long type;

[src]

/**
   * Title of the web page, or of the node's query (day, host, folder, etc)
   */

readonly attribute AUTF8String title;

[src]

/**
   * Total number of times the URI has ever been accessed. For hosts, this
   * is the total of the children under it, NOT the total times the host has
   * been accessed (this would require an additional query, so is not given
   * by default when most of the time it is never needed).
   */

readonly attribute unsigned long accessCount;

[src]

/**
   * This is the time the user accessed the page.
   *
   * If this is a visit, it is the exact time that the page visit occurred.
   *
   * If this is a URI, it is the most recent time that the URI was visited.
   * Even if you ask for all URIs for a given date range long ago, this might
   * contain today's date if the URI was visited today.
   *
   * For hosts, or other node types with children, this is the most recent
   * access time for any of the children.
   *
   * For days queries this is the respective endTime - a maximum possible
   * visit time to fit in the day range.
   */

readonly attribute PRTime time;

[src]

/**
   * This URI can be used as an image source URI and will give you the favicon
   * for the page. It is *not* the URI of the favicon, but rather something
   * that will resolve to the actual image.
   *
   * In most cases, this is an annotation URI that will query the favicon
   * service. If the entry has no favicon, this is the chrome URI of the
   * default favicon. If the favicon originally lived in chrome, this will
   * be the original chrome URI of the icon.
   */

readonly attribute AUTF8String icon;

[src]

/**
   * This is the number of levels between this node and the top of the
   * hierarchy. The members of result.children have indentLevel = 0, their
   * children have indentLevel = 1, etc. The indent level of the root node is
   * set to -1.
   */

readonly attribute long indentLevel;

[src]

/**
   * When this item is in a bookmark folder (parent is of type folder), this is
   * the index into that folder of this node. These indices start at 0 and
   * increase in the order that they appear in the bookmark folder. For items
   * that are not in a bookmark folder, this value is -1.
   */

readonly attribute long bookmarkIndex;

[src]

/**
   * If the node is an item (bookmark, folder or a separator) this value is the
   * row ID of that bookmark in the database. For other nodes, this value is
   * set to -1.
   */

readonly attribute long long itemId;

[src]

/**
   * If the node is an item (bookmark, folder or a separator) this value is the
   * time that the item was created. For other nodes, this value is 0.
   */

readonly attribute PRTime dateAdded;

[src]

/**
   * If the node is an item (bookmark, folder or a separator) this value is the
   * time that the item was last modified. For other nodes, this value is 0.
   *
   *  @note When an item is added lastModified is set to the same value as
   *        dateAdded.
   */

readonly attribute PRTime lastModified;

[src]

/**
   * For uri nodes, this is a sorted list of the tags, delimited with commans,
   * for the uri represented by this node. Otherwise this is an empty string.
   */

readonly attribute AString tags;

[src]

/**
   * The unique ID associated with the page. It my return an empty string
   * if the result node is a non-URI node.
   */

readonly attribute ACString pageGuid;

[src]

/**
   * The unique ID associated with the bookmark. It returns an empty string
   * if the result node is not associated with a bookmark, a folder or a
   * separator.
   */

readonly attribute ACString bookmarkGuid;

[src]

/**
   * The unique ID associated with the history visit. For node types other than
   * history visit nodes, this value is -1.
   */

readonly attribute long long visitId;

[src]

/**
   * The unique ID associated with visit node which was the referrer of this
   * history visit. For node types other than history visit nodes, or visits
   * without any known referrer, this value is -1.
   */

readonly attribute long long fromVisitId;

[src]

/**
   * The transition type associated with this visit. For node types other than
   * history visit nodes, this value is 0.
   */

readonly attribute unsigned long visitType;

Trait Implementations

impl XpCom for nsINavHistoryContainerResultNode
[src]

IID: nsIID = nsID(1050462559, 3475, 17905, [137, 79, 144, 142, 235, 152, 102, 215])

[src]

Perform a QueryInterface call on this object, attempting to dynamically cast it to the requested interface type. Returns Some(RefPtr) if the cast succeeded, and None otherwise. Read more

impl RefCounted for nsINavHistoryContainerResultNode
[src]

[src]

Increment the reference count.

[src]

Decrement the reference count, potentially freeing backing memory.

impl Deref for nsINavHistoryContainerResultNode
[src]

The resulting type after dereferencing.

[src]

Dereferences the value.