diff -r 000000000000 -r 6474c204b198 layout/base/nsPresState.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/layout/base/nsPresState.h Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,90 @@ +/* -*- Mode: C++; 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/. */ + +/* + * a piece of state that is stored in session history when the document + * is not + */ + +#ifndef nsPresState_h_ +#define nsPresState_h_ + +#include "nsPoint.h" +#include "gfxPoint.h" +#include "nsAutoPtr.h" + +class nsPresState +{ +public: + nsPresState() + : mContentData(nullptr) + , mScrollState(0, 0) + , mResolution(1.0, 1.0) + , mDisabledSet(false) + , mDisabled(false) + {} + + void SetScrollState(const nsPoint& aState) + { + mScrollState = aState; + } + + nsPoint GetScrollState() const + { + return mScrollState; + } + + void SetResolution(const gfxSize& aSize) + { + mResolution = aSize; + } + + gfxSize GetResolution() const + { + return mResolution; + } + + void ClearNonScrollState() + { + mContentData = nullptr; + mDisabledSet = false; + } + + bool GetDisabled() const + { + return mDisabled; + } + + void SetDisabled(bool aDisabled) + { + mDisabled = aDisabled; + mDisabledSet = true; + } + + bool IsDisabledSet() const + { + return mDisabledSet; + } + + nsISupports* GetStateProperty() const + { + return mContentData; + } + + void SetStateProperty(nsISupports *aProperty) + { + mContentData = aProperty; + } + +// MEMBER VARIABLES +protected: + nsCOMPtr mContentData; + nsPoint mScrollState; + gfxSize mResolution; + bool mDisabledSet; + bool mDisabled; +}; + +#endif /* nsPresState_h_ */