webengine/osswebengine/DerivedSources/WebCore/JSHTMLFormElement.h
changeset 0 dd21522fd290
equal deleted inserted replaced
-1:000000000000 0:dd21522fd290
       
     1 /*
       
     2     This file is part of the WebKit open source project.
       
     3     This file has been generated by generate-bindings.pl. DO NOT MODIFY!
       
     4 
       
     5     This library is free software; you can redistribute it and/or
       
     6     modify it under the terms of the GNU Library General Public
       
     7     License as published by the Free Software Foundation; either
       
     8     version 2 of the License, or (at your option) any later version.
       
     9 
       
    10     This library is distributed in the hope that it will be useful,
       
    11     but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
       
    13     Library General Public License for more details.
       
    14 
       
    15     You should have received a copy of the GNU Library General Public License
       
    16     along with this library; see the file COPYING.LIB.  If not, write to
       
    17     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
       
    18     Boston, MA 02110-1301, USA.
       
    19 */
       
    20 
       
    21 #ifndef JSHTMLFormElement_H
       
    22 #define JSHTMLFormElement_H
       
    23 
       
    24 #include "JSHTMLElement.h"
       
    25 
       
    26 namespace WebCore {
       
    27 
       
    28 class HTMLFormElement;
       
    29 
       
    30 class JSHTMLFormElement : public JSHTMLElement {
       
    31 public:
       
    32     JSHTMLFormElement(KJS::ExecState*, HTMLFormElement*);
       
    33     virtual bool getOwnPropertySlot(KJS::ExecState*, const KJS::Identifier&, KJS::PropertySlot&);
       
    34     KJS::JSValue* getValueProperty(KJS::ExecState*, int token) const;
       
    35     virtual void put(KJS::ExecState*, const KJS::Identifier&, KJS::JSValue*, int attr = KJS::None);
       
    36     void putValueProperty(KJS::ExecState*, int, KJS::JSValue*, int attr);
       
    37     virtual const KJS::ClassInfo* classInfo() const { return &info; }
       
    38     static const KJS::ClassInfo info;
       
    39 
       
    40     static KJS::JSValue* getConstructor(KJS::ExecState*);
       
    41     enum {
       
    42         // Attributes
       
    43         ElementsAttrNum, LengthAttrNum, NameAttrNum, AcceptCharsetAttrNum, 
       
    44         ActionAttrNum, EncodingAttrNum, EnctypeAttrNum, MethodAttrNum, 
       
    45         TargetAttrNum, 
       
    46 
       
    47         // The Constructor Attribute
       
    48         ConstructorAttrNum, 
       
    49 
       
    50         // Functions
       
    51         SubmitFuncNum, ResetFuncNum
       
    52     };
       
    53 private:
       
    54     static KJS::JSValue* indexGetter(KJS::ExecState*, KJS::JSObject*, const KJS::Identifier&, const KJS::PropertySlot&);
       
    55 private:
       
    56     static bool canGetItemsForName(KJS::ExecState*, HTMLFormElement*, const KJS::Identifier&);
       
    57     static KJS::JSValue* nameGetter(KJS::ExecState*, KJS::JSObject*, const KJS::Identifier&, const KJS::PropertySlot&);
       
    58 };
       
    59 
       
    60 
       
    61 class JSHTMLFormElementPrototype : public KJS::JSObject {
       
    62 public:
       
    63     static KJS::JSObject* self(KJS::ExecState* exec);
       
    64     virtual const KJS::ClassInfo* classInfo() const { return &info; }
       
    65     static const KJS::ClassInfo info;
       
    66     bool getOwnPropertySlot(KJS::ExecState*, const KJS::Identifier&, KJS::PropertySlot&);
       
    67     JSHTMLFormElementPrototype(KJS::ExecState* exec)
       
    68         : KJS::JSObject(JSHTMLElementPrototype::self(exec)) { }
       
    69 };
       
    70 
       
    71 class JSHTMLFormElementPrototypeFunction : public KJS::InternalFunctionImp {
       
    72 public:
       
    73     JSHTMLFormElementPrototypeFunction(KJS::ExecState* exec, int i, int len, const KJS::Identifier& name)
       
    74         : KJS::InternalFunctionImp(static_cast<KJS::FunctionPrototype*>(exec->lexicalInterpreter()->builtinFunctionPrototype()), name)
       
    75         , id(i)
       
    76     {
       
    77         put(exec, exec->propertyNames().length, KJS::jsNumber(len), KJS::DontDelete|KJS::ReadOnly|KJS::DontEnum);
       
    78     }
       
    79     virtual KJS::JSValue* callAsFunction(KJS::ExecState*, KJS::JSObject*, const KJS::List&);
       
    80 
       
    81 private:
       
    82     int id;
       
    83 };
       
    84 
       
    85 } // namespace WebCore
       
    86 
       
    87 #endif