зеркало из https://github.com/mozilla/gecko-dev.git
Bug 12350: selected read/write
This commit is contained in:
Родитель
8a673d7602
Коммит
0e7916f242
|
@ -52,6 +52,7 @@ public:
|
|||
NS_IMETHOD SetLabel(const nsString& aLabel)=0;
|
||||
|
||||
NS_IMETHOD GetSelected(PRBool* aSelected)=0;
|
||||
NS_IMETHOD SetSelected(PRBool aSelected)=0;
|
||||
|
||||
NS_IMETHOD GetValue(nsString& aValue)=0;
|
||||
NS_IMETHOD SetValue(const nsString& aValue)=0;
|
||||
|
@ -70,6 +71,7 @@ public:
|
|||
NS_IMETHOD GetLabel(nsString& aLabel); \
|
||||
NS_IMETHOD SetLabel(const nsString& aLabel); \
|
||||
NS_IMETHOD GetSelected(PRBool* aSelected); \
|
||||
NS_IMETHOD SetSelected(PRBool aSelected); \
|
||||
NS_IMETHOD GetValue(nsString& aValue); \
|
||||
NS_IMETHOD SetValue(const nsString& aValue); \
|
||||
|
||||
|
@ -87,6 +89,7 @@ public:
|
|||
NS_IMETHOD GetLabel(nsString& aLabel) { return _to GetLabel(aLabel); } \
|
||||
NS_IMETHOD SetLabel(const nsString& aLabel) { return _to SetLabel(aLabel); } \
|
||||
NS_IMETHOD GetSelected(PRBool* aSelected) { return _to GetSelected(aSelected); } \
|
||||
NS_IMETHOD SetSelected(PRBool aSelected) { return _to SetSelected(aSelected); } \
|
||||
NS_IMETHOD GetValue(nsString& aValue) { return _to GetValue(aValue); } \
|
||||
NS_IMETHOD SetValue(const nsString& aValue) { return _to SetValue(aValue); } \
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
attribute long index;
|
||||
attribute boolean disabled;
|
||||
attribute DOMString label;
|
||||
readonly attribute boolean selected;
|
||||
attribute boolean selected;
|
||||
attribute DOMString value;
|
||||
};
|
||||
|
||||
|
|
|
@ -327,6 +327,22 @@ SetHTMLOptionElementProperty(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
|
|||
|
||||
break;
|
||||
}
|
||||
case HTMLOPTIONELEMENT_SELECTED:
|
||||
{
|
||||
PRBool ok = PR_FALSE;
|
||||
secMan->CheckScriptAccess(scriptCX, obj, "htmloptionelement.selected", PR_TRUE, &ok);
|
||||
if (!ok) {
|
||||
return nsJSUtils::nsReportError(cx, NS_ERROR_DOM_SECURITY_ERR);
|
||||
}
|
||||
PRBool prop;
|
||||
if (PR_FALSE == nsJSUtils::nsConvertJSValToBool(&prop, cx, *vp)) {
|
||||
return nsJSUtils::nsReportError(cx, NS_ERROR_DOM_NOT_BOOLEAN_ERR);
|
||||
}
|
||||
|
||||
a->SetSelected(prop);
|
||||
|
||||
break;
|
||||
}
|
||||
case HTMLOPTIONELEMENT_VALUE:
|
||||
{
|
||||
PRBool ok = PR_FALSE;
|
||||
|
@ -412,7 +428,7 @@ static JSPropertySpec HTMLOptionElementProperties[] =
|
|||
{"index", HTMLOPTIONELEMENT_INDEX, JSPROP_ENUMERATE},
|
||||
{"disabled", HTMLOPTIONELEMENT_DISABLED, JSPROP_ENUMERATE},
|
||||
{"label", HTMLOPTIONELEMENT_LABEL, JSPROP_ENUMERATE},
|
||||
{"selected", HTMLOPTIONELEMENT_SELECTED, JSPROP_ENUMERATE | JSPROP_READONLY},
|
||||
{"selected", HTMLOPTIONELEMENT_SELECTED, JSPROP_ENUMERATE},
|
||||
{"value", HTMLOPTIONELEMENT_VALUE, JSPROP_ENUMERATE},
|
||||
{0}
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче