📄 html_formimpl.h
字号:
// used in case input type=image was clicked. int clickX() const { return xPos; } int clickY() const { return yPos; } virtual void defaultEventHandler(EventImpl *evt); virtual bool isEditable(); DOMString altText() const; virtual bool isURLAttribute(AttributeImpl *attr) const;#if APPLE_CHANGES long maxResults() const { return m_maxResults; }#endif protected: DOMString m_value; int xPos; short m_maxLen; short m_size; short yPos;#if APPLE_CHANGES short m_maxResults;#endif HTMLImageLoader* m_imageLoader; typeEnum m_type : 4; bool m_checked : 1; bool m_defaultChecked : 1; bool m_useDefaultChecked : 1; bool m_haveType : 1; bool m_activeSubmit : 1; bool m_autocomplete : 1;};// -------------------------------------------------------------------------class HTMLLabelElementImpl : public HTMLElementImpl{public: HTMLLabelElementImpl(DocumentPtr *doc); virtual ~HTMLLabelElementImpl(); virtual bool isFocusable() const; virtual Id id() const; virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); /** * the form element this label is associated to. */ ElementImpl *formElement(); private: DOMString m_formElementID;};// -------------------------------------------------------------------------class HTMLLegendElementImpl : public HTMLGenericFormElementImpl{public: HTMLLegendElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); virtual ~HTMLLegendElementImpl(); virtual bool isFocusable() const; virtual Id id() const; virtual khtml::RenderObject *createRenderer(RenderArena *, khtml::RenderStyle *); virtual DOMString type() const;};// -------------------------------------------------------------------------class HTMLSelectElementImpl : public HTMLGenericFormElementImpl{ friend class khtml::RenderSelect;public: HTMLSelectElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); ~HTMLSelectElementImpl(); virtual Id id() const; DOMString type() const; virtual void recalcStyle( StyleChange ); long selectedIndex() const; void setSelectedIndex( long index ); virtual bool isEnumeratable() const { return true; } long length() const; long minWidth() const { return m_minwidth; } long size() const { return m_size; } bool multiple() const { return m_multiple; } void add ( HTMLElementImpl *element, HTMLElementImpl *before ); void remove ( long index ); void blur(); void focus(); DOMString value(); void setValue(DOMStringImpl* value); HTMLOptionsCollectionImpl *options(); virtual bool maintainsState() { return true; } virtual QString state(); virtual void restoreState(QStringList &); virtual NodeImpl *insertBefore ( NodeImpl *newChild, NodeImpl *refChild, int &exceptioncode ); virtual NodeImpl *replaceChild ( NodeImpl *newChild, NodeImpl *oldChild, int &exceptioncode ); virtual NodeImpl *removeChild ( NodeImpl *oldChild, int &exceptioncode ); virtual NodeImpl *appendChild ( NodeImpl *newChild, int &exceptioncode ); virtual NodeImpl *addChild( NodeImpl* newChild ); virtual void childrenChanged(); virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); virtual khtml::RenderObject *createRenderer(RenderArena *, khtml::RenderStyle *); virtual bool encoding(const QTextCodec*, khtml::encodingList&, bool); // get the actual listbox index of the optionIndexth option int optionToListIndex(int optionIndex) const; // reverse of optionToListIndex - get optionIndex from listboxIndex int listToOptionIndex(int listIndex) const; void setRecalcListItems(); QMemArray<HTMLGenericFormElementImpl*> listItems() const { if (m_recalcListItems) const_cast<HTMLSelectElementImpl*>(this)->recalcListItems(); return m_listItems; } virtual void reset(); void notifyOptionSelected(HTMLOptionElementImpl *selectedOption, bool selected);#if APPLE_CHANGES virtual void defaultEventHandler(EventImpl *evt);#endif virtual void accessKeyAction();private: void recalcListItems();protected: mutable QMemArray<HTMLGenericFormElementImpl*> m_listItems; HTMLOptionsCollectionImpl *m_options; short m_minwidth; short m_size; bool m_multiple; bool m_recalcListItems;};// -------------------------------------------------------------------------class HTMLKeygenElementImpl : public HTMLSelectElementImpl{public: HTMLKeygenElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); virtual Id id() const; DOMString type() const; // ### this is just a rough guess virtual bool isEnumeratable() const { return false; } virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); virtual bool encoding(const QTextCodec*, khtml::encodingList&, bool);protected: AtomicString m_challenge; AtomicString m_keyType;};// -------------------------------------------------------------------------class HTMLOptGroupElementImpl : public HTMLGenericFormElementImpl{public: HTMLOptGroupElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); virtual ~HTMLOptGroupElementImpl(); virtual Id id() const; DOMString type() const; virtual bool isFocusable() const; virtual NodeImpl *insertBefore ( NodeImpl *newChild, NodeImpl *refChild, int &exceptioncode ); virtual NodeImpl *replaceChild ( NodeImpl *newChild, NodeImpl *oldChild, int &exceptioncode ); virtual NodeImpl *removeChild ( NodeImpl *oldChild, int &exceptioncode ); virtual NodeImpl *appendChild ( NodeImpl *newChild, int &exceptioncode ); virtual NodeImpl *addChild( NodeImpl* newChild ); virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); void recalcSelectOptions();};// ---------------------------------------------------------------------------class HTMLOptionElementImpl : public HTMLGenericFormElementImpl{ friend class khtml::RenderSelect; friend class DOM::HTMLSelectElementImpl;public: HTMLOptionElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); virtual bool isFocusable() const; virtual Id id() const; DOMString type() const; DOMString text() const; long index() const; void setIndex( long ); virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); DOMString value() const; void setValue(DOMStringImpl* value); bool selected() const { return m_selected; } void setSelected(bool _selected); HTMLSelectElementImpl *getSelect() const; virtual void childrenChanged();protected: DOMString m_value; bool m_selected;};// -------------------------------------------------------------------------class HTMLTextAreaElementImpl : public HTMLGenericFormElementImpl{ friend class khtml::RenderTextArea;public: enum WrapMethod { ta_NoWrap, ta_Virtual, ta_Physical }; HTMLTextAreaElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); ~HTMLTextAreaElementImpl(); virtual Id id() const; long cols() const { return m_cols; } long rows() const { return m_rows; } WrapMethod wrap() const { return m_wrap; } virtual bool isEnumeratable() const { return true; } DOMString type() const; virtual bool maintainsState() { return true; } virtual QString state(); virtual void restoreState(QStringList &); void select ( ); virtual void parseHTMLAttribute(HTMLAttributeImpl *attr); virtual khtml::RenderObject *createRenderer(RenderArena *, khtml::RenderStyle *); virtual bool encoding(const QTextCodec*, khtml::encodingList&, bool); virtual void reset(); DOMString value(); void setValue(DOMString _value); DOMString defaultValue(); void setDefaultValue(DOMString _defaultValue); void blur(); void focus(); virtual bool isEditable(); virtual void accessKeyAction(); protected: int m_rows; int m_cols; WrapMethod m_wrap; QString m_value; bool m_dirtyvalue;};// -------------------------------------------------------------------------class HTMLIsIndexElementImpl : public HTMLInputElementImpl{public: HTMLIsIndexElementImpl(DocumentPtr *doc, HTMLFormElementImpl *f = 0); virtual Id id() const; virtual void parseHTMLAttribute(HTMLAttributeImpl *attr);protected: DOMString m_prompt;};// -------------------------------------------------------------------------class HTMLOptionsCollectionImpl : public khtml::Shared<HTMLOptionsCollectionImpl>{public: HTMLOptionsCollectionImpl(HTMLSelectElementImpl *impl) : m_select(impl) { } unsigned long length() const; void setLength(unsigned long); NodeImpl *item(unsigned long index) const; NodeImpl *namedItem(const DOMString &name) const; void detach() { m_select = 0; }private: HTMLSelectElementImpl *m_select;};} //namespace#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -