?? xbl_binding.h
字號:
#include "misc/loader_client.h"
#include "dom/dom_string.h"
namespace khtml
{
class CachedXBLDocument;
}
namespace DOM
{
class ElementImpl;
}
namespace XBL
{
class XBLPrototypeBinding;
class XBLBindingChain;
class XBLBinding: public khtml::CachedObjectClient
{
public:
XBLBinding(XBLBindingChain* chain, const DOM::DOMString& uri, XBLBinding* derivedBinding = 0);
virtual ~XBLBinding();
bool loaded() const;
bool hasStylesheets() const { return false; } // FIXME: Implement scoped sheets.
XBLBindingChain* chain() const { return m_chain; }
void setNextBinding(XBLBinding* n) { m_nextBinding = n; }
void setPreviousBinding(XBLBinding* p) { m_previousBinding = p; }
// CachedObjectClient
void setXBLDocument(const DOM::DOMString& url, XBL::XBLDocumentImpl* doc);
private:
XBLBindingChain* m_chain; // The owning binding chain.
khtml::CachedXBLDocument* m_xblDocument; // The prototype XBL document.
XBLPrototypeBinding* m_prototype; // The prototype binding that corresponds to our binding.
DOM::DOMString m_id; // The id of the binding.
XBLBinding* m_previousBinding; // The previous explicit connection.
XBLBinding* m_nextBinding; // The next explicit connection (e.g., a base binding specified via the extends attribute).
};
class XBLBindingChain
OOM_MODIFIED
{
public:
XBLBindingChain(DOM::ElementImpl* elt, const DOM::DOMString& uri, bool isStyleChain);
~XBLBindingChain();
const DOM::DOMString& uri() const { return m_uri; }
XBLBindingChain* firstStyleBindingChain();
XBLBindingChain* lastBindingChain() ;
void insertBindingChain(XBLBindingChain* bindingChain);
XBLBindingChain* nextChain() const { return m_nextChain; }
XBLBindingChain* previousChain() const { return m_previousChain; }
void setNextBindingChain(XBLBindingChain* bindingChain) { m_nextChain = bindingChain; }
void setPreviousBindingChain(XBLBindingChain* bindingChain) { m_previousChain = bindingChain; }
bool markedForDeath() const { return m_markedForDeath; }
void markForDeath();
bool loaded() const;
bool hasStylesheets() const;
DOM::ElementImpl* element() const { return m_element; }
void failed();
private:
DOM::DOMString m_uri; // The URI of the binding that is the leaf of this chain.
DOM::ElementImpl* m_element; // The bound element. All the bindings in the chain are attached to this element.
XBLBinding* m_binding; // The bindings contained within this chain.
XBLBindingChain* m_previousChain; // The previous implicit connection.
XBLBindingChain* m_nextChain; // The next implicit connection (e.g., from addBinding or multiple urls in a CSS binding declaration).
bool m_isStyleChain : 1;
bool m_markedForDeath : 1;
};
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -