📄 htmlediting_impl.h
字号:
virtual void doApply();
void deleteCharacter();
void input(const DOM::DOMString &text);
unsigned long charactersAdded() const { return m_charactersAdded; }
private:
DOM::Position prepareForTextInsertion(bool adjustDownstream);
void execute(const DOM::DOMString &text);
void insertSpace(DOM::TextImpl *textNode, unsigned long offset);
unsigned long m_charactersAdded;
};
//------------------------------------------------------------------------------------------
// InsertNodeBeforeCommandImpl
class InsertNodeBeforeCommandImpl : public EditCommandImpl
{
public:
InsertNodeBeforeCommandImpl(DOM::DocumentImpl *, DOM::NodeImpl *insertChild, DOM::NodeImpl *refChild);
virtual ~InsertNodeBeforeCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::NodeImpl *insertChild() const { return m_insertChild; }
DOM::NodeImpl *refChild() const { return m_refChild; }
private:
DOM::NodeImpl *m_insertChild;
DOM::NodeImpl *m_refChild;
};
//------------------------------------------------------------------------------------------
// InsertTextCommandImpl
class InsertTextCommandImpl : public EditCommandImpl
{
public:
InsertTextCommandImpl(DOM::DocumentImpl *document, DOM::TextImpl *, long, const DOM::DOMString &);
virtual ~InsertTextCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::TextImpl *node() const { return m_node; }
long offset() const { return m_offset; }
DOM::DOMString text() const { return m_text; }
private:
DOM::TextImpl *m_node;
long m_offset;
DOM::DOMString m_text;
};
//------------------------------------------------------------------------------------------
// JoinTextNodesCommandImpl
class JoinTextNodesCommandImpl : public EditCommandImpl
{
public:
JoinTextNodesCommandImpl(DOM::DocumentImpl *, DOM::TextImpl *, DOM::TextImpl *);
virtual ~JoinTextNodesCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::TextImpl *firstNode() const { return m_text1; }
DOM::TextImpl *secondNode() const { return m_text2; }
private:
DOM::TextImpl *m_text1;
DOM::TextImpl *m_text2;
unsigned long m_offset;
};
//------------------------------------------------------------------------------------------
// ReplaceSelectionCommandImpl
class ReplaceSelectionCommandImpl : public CompositeEditCommandImpl
{
public:
ReplaceSelectionCommandImpl(DOM::DocumentImpl *document, DOM::DocumentFragmentImpl *fragment, bool selectReplacement=true);
virtual ~ReplaceSelectionCommandImpl();
virtual int commandID() const;
virtual void doApply();
private:
DOM::DocumentFragmentImpl *m_fragment;
bool m_selectReplacement;
};
//------------------------------------------------------------------------------------------
// MoveSelectionCommandImpl
class MoveSelectionCommandImpl : public CompositeEditCommandImpl
{
public:
MoveSelectionCommandImpl(DOM::DocumentImpl *document, DOM::DocumentFragmentImpl *fragment, DOM::Position &position);
virtual ~MoveSelectionCommandImpl();
virtual int commandID() const;
virtual void doApply();
private:
DOM::DocumentFragmentImpl *m_fragment;
DOM::Position m_position;
};
//------------------------------------------------------------------------------------------
// RemoveCSSPropertyCommand
class RemoveCSSPropertyCommandImpl : public EditCommandImpl
{
public:
RemoveCSSPropertyCommandImpl(DOM::DocumentImpl *, DOM::CSSStyleDeclarationImpl *, int property);
virtual ~RemoveCSSPropertyCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::CSSStyleDeclarationImpl *styleDeclaration() const { return m_decl; }
int property() const { return m_property; }
private:
DOM::CSSStyleDeclarationImpl *m_decl;
int m_property;
DOM::DOMString m_oldValue;
bool m_important;
};
//------------------------------------------------------------------------------------------
// RemoveNodeAttributeCommandImpl
class RemoveNodeAttributeCommandImpl : public EditCommandImpl
{
public:
RemoveNodeAttributeCommandImpl(DOM::DocumentImpl *, DOM::ElementImpl *, DOM::NodeImpl::Id attribute);
virtual ~RemoveNodeAttributeCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::ElementImpl *element() const { return m_element; }
DOM::NodeImpl::Id attribute() const { return m_attribute; }
private:
DOM::ElementImpl *m_element;
DOM::NodeImpl::Id m_attribute;
DOM::DOMString m_oldValue;
};
//------------------------------------------------------------------------------------------
// RemoveNodeCommandImpl
class RemoveNodeCommandImpl : public EditCommandImpl
{
public:
RemoveNodeCommandImpl(DOM::DocumentImpl *, DOM::NodeImpl *);
virtual ~RemoveNodeCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::NodeImpl *node() const { return m_removeChild; }
private:
DOM::NodeImpl *m_parent;
DOM::NodeImpl *m_removeChild;
DOM::NodeImpl *m_refChild;
};
//------------------------------------------------------------------------------------------
// RemoveNodeAndPruneCommandImpl
class RemoveNodeAndPruneCommandImpl : public CompositeEditCommandImpl
{
public:
RemoveNodeAndPruneCommandImpl(DOM::DocumentImpl *, DOM::NodeImpl *pruneNode, DOM::NodeImpl *stopNode=0);
virtual ~RemoveNodeAndPruneCommandImpl();
virtual int commandID() const;
virtual void doApply();
DOM::NodeImpl *pruneNode() const { return m_pruneNode; }
DOM::NodeImpl *stopNode() const { return m_stopNode; }
private:
DOM::NodeImpl *m_pruneNode;
DOM::NodeImpl *m_stopNode;
};
//------------------------------------------------------------------------------------------
// RemoveNodePreservingChildrenCommandImpl
class RemoveNodePreservingChildrenCommandImpl : public CompositeEditCommandImpl
{
public:
RemoveNodePreservingChildrenCommandImpl(DOM::DocumentImpl *, DOM::NodeImpl *);
virtual ~RemoveNodePreservingChildrenCommandImpl();
virtual int commandID() const;
virtual void doApply();
DOM::NodeImpl *node() const { return m_node; }
private:
DOM::NodeImpl *m_node;
};
//------------------------------------------------------------------------------------------
// SetNodeAttributeCommandImpl
class SetNodeAttributeCommandImpl : public EditCommandImpl
{
public:
SetNodeAttributeCommandImpl(DOM::DocumentImpl *, DOM::ElementImpl *, DOM::NodeImpl::Id attribute, const DOM::DOMString &value);
virtual ~SetNodeAttributeCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::ElementImpl *element() const { return m_element; }
DOM::NodeImpl::Id attribute() const { return m_attribute; }
DOM::DOMString value() const { return m_value; }
private:
DOM::ElementImpl *m_element;
DOM::NodeImpl::Id m_attribute;
DOM::DOMString m_value;
DOM::DOMString m_oldValue;
};
//------------------------------------------------------------------------------------------
// SplitTextNodeCommandImpl
class SplitTextNodeCommandImpl : public EditCommandImpl
{
public:
SplitTextNodeCommandImpl(DOM::DocumentImpl *, DOM::TextImpl *, long);
virtual ~SplitTextNodeCommandImpl();
virtual int commandID() const;
virtual void doApply();
virtual void doUnapply();
DOM::TextImpl *node() const { return m_text2; }
long offset() const { return m_offset; }
private:
DOM::TextImpl *m_text1;
DOM::TextImpl *m_text2;
unsigned long m_offset;
};
//------------------------------------------------------------------------------------------
// TypingCommandImpl
class TypingCommandImpl : public CompositeEditCommandImpl
{
public:
TypingCommandImpl(DOM::DocumentImpl *document);
virtual ~TypingCommandImpl();
virtual int commandID() const;
virtual void doApply();
bool openForMoreTyping() const { return m_openForMoreTyping; }
void closeTyping() { m_openForMoreTyping = false; }
void insertText(const DOM::DOMString &text);
void insertNewline();
void deleteKeyPressed();
private:
void issueCommandForDeleteKey();
void removeCommand(const EditCommand &);
void typingAddedToOpenCommand();
bool m_openForMoreTyping;
};
//------------------------------------------------------------------------------------------
} // end namespace khtml
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -