Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  nsILayoutHistoryState.idl   Sprache: unbekannt

 
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/*
 * interface for container for information saved in session history when
 * the document is not
 */

#include "nsISupports.idl"


[ptr] native PresStatePtr(mozilla::PresState);
native PresStateUnique(mozilla::UniquePtr<mozilla::PresState>);
native PresState(mozilla::PresState);
[ref] native nsCString(const nsCString);
native constBool(const bool);

%{C++
#include "nsStringFwd.h"
#include "mozilla/UniquePtr.h"

namespace mozilla {
class PresState;
} // namespace mozilla

template<typename> struct already_AddRefed;
%}

[scriptable, builtinclass, uuid(aef27cb3-4df9-4eeb-b0b0-ac56cf861d04)]
interface nsILayoutHistoryState : nsISupports
{
  /**
  * Whether this LayoutHistoryState contains any PresStates.
  */
  readonly attribute boolean hasStates;

  /**
  * Get the keys of all PresStates held by this LayoutHistoryState.
  * Note: Check hasStates first.
  */
  Array<ACString> getKeys();

  /*
  * Attempts to get the data of the PresState corresponding to
  * the passed key. Throws if no data could be found.
  */
  void getPresState(in ACString aKey,
                    out float aScrollX, out float aScrollY,
                    out boolean aAllowScrollOriginDowngrade,
                    out float aRes);

  /**
   * Constructs a new PresState object based on the supplied data
   * and adds it to the LayoutHistoryState.
   */
  void addNewPresState(in ACString aKey,
                   in float aScrollX, in float aScrollY,
                   in boolean aAllowScrollOriginDowngrade,
                   in float aRes);

  // Native only interface, converted from the original nsILayoutHistoryState.h

  /**
   * Set |aState| as the state object for |aKey|.
   * This _transfers_ownership_ of |aState| to the LayoutHistoryState.
   * It will be freed when RemoveState() is called or when the
   * LayoutHistoryState is destroyed.
   */
  [noscript, notxpcom, nostdcall] void AddState(in nsCString aKey, in PresStateUnique aState);

  /**
   * Look up the state object for |aKey|.
   */
  [noscript, notxpcom, nostdcall] PresStatePtr GetState(in nsCString aKey);

  /**
   * Remove the state object for |aKey|.
   */
  [noscript, notxpcom, nostdcall] void RemoveState(in nsCString aKey);

  /**
   * Check whether this history has any states in it
   */
  [noscript, notxpcom, nostdcall] boolean HasStates();

  /**
   * Sets whether this history can contain only scroll position history
   * or all possible history
   */
  [noscript, notxpcom, nostdcall] void SetScrollPositionOnly(in constBool aFlag);

  /**
   * Resets PresState::GetScrollState of all PresState objects to 0,0.
   */
  [noscript, notxpcom, nostdcall] void ResetScrollState();

  /**
   * Get the contents of the layout history.
   */
  [noscript, notxpcom, nostdcall] void GetContents(out boolean aScrollPositionOnly,
                                                   out Array<ACString> aKeys,
                                                   out Array<PresState> aStates);

  /**
   * Remove all the states and clear the scroll position only flag.
   */
  [noscript, notxpcom, nostdcall] void Reset();
};

%{C++
/* Defined in nsLayoutHistoryState.cpp */
already_AddRefed<nsILayoutHistoryState>
NS_NewLayoutHistoryState();

namespace mozilla {
mozilla::UniquePtr<mozilla::PresState> NewPresState();
} // namespace mozilla
%}

[ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge