Bug 550180 - initialize non static class members in all constructors and use mFoo notation; r=davidb,surkov

This commit is contained in:
timeless@mozdev.org 2010-03-18 21:24:46 -04:00
Родитель 2cc82da560
Коммит dacbbf4765
3 изменённых файлов: 108 добавлений и 85 удалений

Просмотреть файл

@ -740,27 +740,49 @@ PRUint32 nsARIAMap::gWAIUnivAttrMapLength = NS_ARRAY_LENGTH(nsARIAMap::gWAIUnivA
////////////////////////////////////////////////////////////////////////////////
// nsStateMapEntry
nsStateMapEntry:: nsStateMapEntry(nsIAtom **aAttrName, eStateValueType aType,
PRUint32 aPermanentState,
PRUint32 aTrueState, PRUint32 aTrueExtraState,
PRUint32 aFalseState, PRUint32 aFalseExtraState,
PRBool aDefinedIfAbsent) :
attributeName(aAttrName), isToken(PR_TRUE), permanentState(aPermanentState)
nsStateMapEntry::nsStateMapEntry() :
mAttributeName(nsnull),
mIsToken(PR_FALSE),
mPermanentState(0),
mValue1(nsnull),
mState1(0),
mExtraState1(0),
mValue2(nsnull),
mState2(0),
mExtraState2(0),
mValue3(nsnull),
mState3(0),
mExtraState3(0),
mDefaultState(0),
mDefaultExtraState(0),
mDefinedIfAbsent(PR_FALSE)
{}
nsStateMapEntry::nsStateMapEntry(nsIAtom **aAttrName, eStateValueType aType,
PRUint32 aPermanentState,
PRUint32 aTrueState, PRUint32 aTrueExtraState,
PRUint32 aFalseState, PRUint32 aFalseExtraState,
PRBool aDefinedIfAbsent) :
mAttributeName(aAttrName),
mIsToken(PR_TRUE),
mPermanentState(aPermanentState),
mValue1("false"),
mState1(aFalseState),
mExtraState1(aFalseExtraState),
mValue2(nsnull),
mState2(0),
mExtraState2(0),
mValue3(nsnull),
mState3(0),
mExtraState3(0),
mDefaultState(aTrueState),
mDefaultExtraState(aTrueExtraState),
mDefinedIfAbsent(aDefinedIfAbsent)
{
value1 = "false";
state1 = aFalseState;
extraState1 = aFalseExtraState;
if (aType == kMixedType) {
value2 = "mixed";
state2 = nsIAccessibleStates::STATE_MIXED;
extraState2 = 0;
mValue2 = "mixed";
mState2 = nsIAccessibleStates::STATE_MIXED;
}
defaultState = aTrueState;
defaultExtraState = aTrueExtraState;
definedIfAbsent = aDefinedIfAbsent;
}
nsStateMapEntry::nsStateMapEntry(nsIAtom **aAttrName,
@ -770,11 +792,11 @@ nsStateMapEntry::nsStateMapEntry(nsIAtom **aAttrName,
PRUint32 aState2, PRUint32 aExtraState2,
const char *aValue3,
PRUint32 aState3, PRUint32 aExtraState3) :
attributeName(aAttrName), isToken(PR_FALSE), permanentState(0),
value1(aValue1), state1(aState1), extraState1(aExtraState1),
value2(aValue2), state2(aState2), extraState2(aExtraState2),
value3(aValue3), state3(aState3), extraState3(aExtraState3),
defaultState(0), defaultExtraState(0), definedIfAbsent(PR_FALSE)
mAttributeName(aAttrName), mIsToken(PR_FALSE), mPermanentState(0),
mValue1(aValue1), mState1(aState1), mExtraState1(aExtraState1),
mValue2(aValue2), mState2(aState2), mExtraState2(aExtraState2),
mValue3(aValue3), mState3(aState3), mExtraState3(aExtraState3),
mDefaultState(0), mDefaultExtraState(0), mDefinedIfAbsent(PR_FALSE)
{
}
@ -786,15 +808,15 @@ nsStateMapEntry::nsStateMapEntry(nsIAtom **aAttrName,
PRUint32 aState2, PRUint32 aExtraState2,
const char *aValue3,
PRUint32 aState3, PRUint32 aExtraState3) :
attributeName(aAttrName), isToken(PR_TRUE), permanentState(0),
value1(aValue1), state1(aState1), extraState1(aExtraState1),
value2(aValue2), state2(aState2), extraState2(aExtraState2),
value3(aValue3), state3(aState3), extraState3(aExtraState3),
defaultState(0), defaultExtraState(0), definedIfAbsent(PR_TRUE)
mAttributeName(aAttrName), mIsToken(PR_TRUE), mPermanentState(0),
mValue1(aValue1), mState1(aState1), mExtraState1(aExtraState1),
mValue2(aValue2), mState2(aState2), mExtraState2(aExtraState2),
mValue3(aValue3), mState3(aState3), mExtraState3(aExtraState3),
mDefaultState(0), mDefaultExtraState(0), mDefinedIfAbsent(PR_TRUE)
{
if (aDefaultStateRule == eUseFirstState) {
defaultState = aState1;
defaultExtraState = aExtraState1;
mDefaultState = aState1;
mDefaultExtraState = aExtraState1;
}
}
@ -809,17 +831,17 @@ nsStateMapEntry::MapToStates(nsIContent *aContent,
const nsStateMapEntry& entry = nsARIAMap::gWAIStateMap[aStateMapEntryID];
if (entry.isToken) {
if (entry.mIsToken) {
// If attribute is considered as defined when it's absent then let's act
// attribute value is "false" supposedly.
PRBool hasAttr = aContent->HasAttr(kNameSpaceID_None, *entry.attributeName);
if (entry.definedIfAbsent && !hasAttr) {
if (entry.permanentState)
*aState |= entry.permanentState;
if (entry.state1)
*aState |= entry.state1;
if (aExtraState && entry.extraState1)
*aExtraState |= entry.extraState1;
PRBool hasAttr = aContent->HasAttr(kNameSpaceID_None, *entry.mAttributeName);
if (entry.mDefinedIfAbsent && !hasAttr) {
if (entry.mPermanentState)
*aState |= entry.mPermanentState;
if (entry.mState1)
*aState |= entry.mState1;
if (aExtraState && entry.mExtraState1)
*aExtraState |= entry.mExtraState1;
return PR_TRUE;
}
@ -832,66 +854,66 @@ nsStateMapEntry::MapToStates(nsIContent *aContent,
// attribute, for example: aria-label="" or aria-label="undefined", we will
// bail out and not explore a state mapping, which is safe.
if (!hasAttr ||
aContent->AttrValueIs(kNameSpaceID_None, *entry.attributeName,
aContent->AttrValueIs(kNameSpaceID_None, *entry.mAttributeName,
nsAccessibilityAtoms::_empty, eCaseMatters) ||
aContent->AttrValueIs(kNameSpaceID_None, *entry.attributeName,
aContent->AttrValueIs(kNameSpaceID_None, *entry.mAttributeName,
nsAccessibilityAtoms::_undefined, eCaseMatters)) {
if (entry.permanentState)
*aState &= ~entry.permanentState;
if (entry.mPermanentState)
*aState &= ~entry.mPermanentState;
return PR_TRUE;
}
if (entry.permanentState)
*aState |= entry.permanentState;
if (entry.mPermanentState)
*aState |= entry.mPermanentState;
}
nsAutoString attrValue;
if (!aContent->GetAttr(kNameSpaceID_None, *entry.attributeName, attrValue))
if (!aContent->GetAttr(kNameSpaceID_None, *entry.mAttributeName, attrValue))
return PR_TRUE;
// Apply states for matched value. If no values was matched then apply default
// states.
PRBool applyDefaultStates = PR_TRUE;
if (entry.value1) {
if (attrValue.EqualsASCII(entry.value1)) {
if (entry.mValue1) {
if (attrValue.EqualsASCII(entry.mValue1)) {
applyDefaultStates = PR_FALSE;
if (entry.state1)
*aState |= entry.state1;
if (entry.mState1)
*aState |= entry.mState1;
if (aExtraState && entry.extraState1)
*aExtraState |= entry.extraState1;
if (aExtraState && entry.mExtraState1)
*aExtraState |= entry.mExtraState1;
} else if (entry.value2) {
if (attrValue.EqualsASCII(entry.value2)) {
} else if (entry.mValue2) {
if (attrValue.EqualsASCII(entry.mValue2)) {
applyDefaultStates = PR_FALSE;
if (entry.state2)
*aState |= entry.state2;
if (entry.mState2)
*aState |= entry.mState2;
if (aExtraState && entry.extraState2)
*aExtraState |= entry.extraState2;
if (aExtraState && entry.mExtraState2)
*aExtraState |= entry.mExtraState2;
} else if (entry.value3) {
if (attrValue.EqualsASCII(entry.value3)) {
} else if (entry.mValue3) {
if (attrValue.EqualsASCII(entry.mValue3)) {
applyDefaultStates = PR_FALSE;
if (entry.state3)
*aState |= entry.state3;
if (entry.mState3)
*aState |= entry.mState3;
if (aExtraState && entry.extraState3)
*aExtraState |= entry.extraState3;
if (aExtraState && entry.mExtraState3)
*aExtraState |= entry.mExtraState3;
}
}
}
}
if (applyDefaultStates) {
if (entry.defaultState)
*aState |= entry.defaultState;
if (entry.defaultExtraState && aExtraState)
*aExtraState |= entry.defaultExtraState;
if (entry.mDefaultState)
*aState |= entry.mDefaultState;
if (entry.mDefaultExtraState && aExtraState)
*aExtraState |= entry.mDefaultExtraState;
}
return PR_TRUE;

Просмотреть файл

@ -194,7 +194,7 @@ public:
/**
* Used to create stub.
*/
nsStateMapEntry() {}
nsStateMapEntry();
/**
* Used for ARIA attributes having boolean or mixed values.
@ -240,33 +240,33 @@ public:
private:
// ARIA attribute name
nsIAtom** attributeName;
nsIAtom** mAttributeName;
// Indicates if attribute is token (can be undefined)
PRBool isToken;
PRBool mIsToken;
// State applied always if attribute is defined
PRUint32 permanentState;
PRUint32 mPermanentState;
// States applied if attribute value is matched to the stored value
const char* value1;
PRUint32 state1;
PRUint32 extraState1;
const char* mValue1;
PRUint32 mState1;
PRUint32 mExtraState1;
const char* value2;
PRUint32 state2;
PRUint32 extraState2;
const char* mValue2;
PRUint32 mState2;
PRUint32 mExtraState2;
const char* value3;
PRUint32 state3;
PRUint32 extraState3;
const char* mValue3;
PRUint32 mState3;
PRUint32 mExtraState3;
// States applied if no stored values above are matched
PRUint32 defaultState;
PRUint32 defaultExtraState;
PRUint32 mDefaultState;
PRUint32 mDefaultExtraState;
// Permanent and false states are applied if attribute is absent
PRBool definedIfAbsent;
PRBool mDefinedIfAbsent;
};

Просмотреть файл

@ -315,7 +315,8 @@ NS_IMPL_ISUPPORTS_INHERITED1(nsXFormsSelectableAccessible,
nsXFormsSelectableAccessible::
nsXFormsSelectableAccessible(nsIDOMNode* aNode, nsIWeakReference* aShell) :
nsXFormsEditableAccessible(aNode, aShell)
nsXFormsEditableAccessible(aNode, aShell),
mIsSelect1Element(nsnull)
{
nsCOMPtr<nsIContent> content(do_QueryInterface(mDOMNode));
if (!content)