Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(963)

Unified Diff: Source/core/html/DOMFormData.h

Issue 564963002: New FormData methods: get, getAll, has, set, delete and iterable (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Remove stray comma Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/html/DOMFormData.h
diff --git a/Source/core/html/DOMFormData.h b/Source/core/html/DOMFormData.h
index afcfda2b8404204f356fc29b250586dbd712a53b..7eca16911e301952fa5093618f1aa9f52cbc3e75 100644
--- a/Source/core/html/DOMFormData.h
+++ b/Source/core/html/DOMFormData.h
@@ -31,6 +31,9 @@
#ifndef DOMFormData_h
#define DOMFormData_h
+#include "bindings/core/v8/ScriptState.h"
+#include "bindings/core/v8/UnionTypesCore.h"
+#include "core/dom/Iterable.h"
#include "core/html/FormDataList.h"
#include "platform/heap/Handle.h"
#include "wtf/Forward.h"
@@ -45,9 +48,14 @@ namespace blink {
class Blob;
class HTMLFormElement;
+class Iterator;
sof 2015/01/22 07:33:40 Not used in what follows. IterationSource is, but
jsbell 2015/01/22 19:05:38 Done.
-class DOMFormData final : public FormDataList, public ScriptWrappable {
+// Typedef from FormData.idl:
+typedef FileOrUSVString FormDataEntryValue;
+
+class DOMFormData final : public FormDataList, public ScriptWrappable, public PairIterable<String, FormDataEntryValue> {
DEFINE_WRAPPERTYPEINFO();
+
public:
static PassRefPtrWillBeRawPtr<DOMFormData> create(HTMLFormElement* form = 0)
{
@@ -59,12 +67,19 @@ public:
return adoptRefWillBeNoop(new DOMFormData(encoding));
}
+ // FormData interface.
void append(const String& name, const String& value);
void append(const String& name, Blob*, const String& filename = String());
+ void get(const String& name, FormDataEntryValue& result);
+ Vector<FormDataEntryValue> getAll(const String& name);
+ void set(const String& name, const String& value);
+ void set(const String& name, Blob*, const String& filename = String());
private:
explicit DOMFormData(const WTF::TextEncoding&);
explicit DOMFormData(HTMLFormElement*);
+
+ IterationSource* startIteration(ScriptState*, ExceptionState&) override;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698