|
Packit |
f0b94e |
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
Packit |
f0b94e |
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
|
|
Packit |
f0b94e |
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
Packit |
f0b94e |
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
Packit |
f0b94e |
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
/*
|
|
Packit |
f0b94e |
* a piece of state that is stored in session history when the document
|
|
Packit |
f0b94e |
* is not
|
|
Packit |
f0b94e |
*/
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
#ifndef nsPresState_h_
|
|
Packit |
f0b94e |
#define nsPresState_h_
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
#include "nsPoint.h"
|
|
Packit |
f0b94e |
#include "gfxPoint.h"
|
|
Packit |
f0b94e |
#include "nsAutoPtr.h"
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
class nsPresState {
|
|
Packit |
f0b94e |
public:
|
|
Packit |
f0b94e |
nsPresState()
|
|
Packit |
f0b94e |
: mContentData(nullptr),
|
|
Packit |
f0b94e |
mScrollState(0, 0),
|
|
Packit |
f0b94e |
mAllowScrollOriginDowngrade(true),
|
|
Packit |
f0b94e |
mResolution(1.0),
|
|
Packit |
f0b94e |
mScaleToResolution(false),
|
|
Packit |
f0b94e |
mDisabledSet(false),
|
|
Packit |
f0b94e |
mDisabled(false),
|
|
Packit |
f0b94e |
mDroppedDown(false) {}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetScrollState(const nsPoint& aState) { mScrollState = aState; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
nsPoint GetScrollPosition() const { return mScrollState; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetAllowScrollOriginDowngrade(bool aAllowScrollOriginDowngrade) {
|
|
Packit |
f0b94e |
mAllowScrollOriginDowngrade = aAllowScrollOriginDowngrade;
|
|
Packit |
f0b94e |
}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
bool GetAllowScrollOriginDowngrade() { return mAllowScrollOriginDowngrade; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetResolution(float aSize) { mResolution = aSize; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
float GetResolution() const { return mResolution; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetScaleToResolution(bool aScaleToResolution) {
|
|
Packit |
f0b94e |
mScaleToResolution = aScaleToResolution;
|
|
Packit |
f0b94e |
}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
bool GetScaleToResolution() const { return mScaleToResolution; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void ClearNonScrollState() {
|
|
Packit |
f0b94e |
mContentData = nullptr;
|
|
Packit |
f0b94e |
mDisabledSet = false;
|
|
Packit |
f0b94e |
}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
bool GetDisabled() const { return mDisabled; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetDisabled(bool aDisabled) {
|
|
Packit |
f0b94e |
mDisabled = aDisabled;
|
|
Packit |
f0b94e |
mDisabledSet = true;
|
|
Packit |
f0b94e |
}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
bool IsDisabledSet() const { return mDisabledSet; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
nsISupports* GetStateProperty() const { return mContentData; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetStateProperty(nsISupports* aProperty) { mContentData = aProperty; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
void SetDroppedDown(bool aDroppedDown) { mDroppedDown = aDroppedDown; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
bool GetDroppedDown() const { return mDroppedDown; }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
// MEMBER VARIABLES
|
|
Packit |
f0b94e |
protected:
|
|
Packit |
f0b94e |
nsCOMPtr<nsISupports> mContentData;
|
|
Packit |
f0b94e |
nsPoint mScrollState;
|
|
Packit |
f0b94e |
bool mAllowScrollOriginDowngrade;
|
|
Packit |
f0b94e |
float mResolution;
|
|
Packit |
f0b94e |
bool mScaleToResolution;
|
|
Packit |
f0b94e |
bool mDisabledSet;
|
|
Packit |
f0b94e |
bool mDisabled;
|
|
Packit |
f0b94e |
bool mDroppedDown;
|
|
Packit |
f0b94e |
};
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
#endif /* nsPresState_h_ */
|