Move class definition of nsHTMLCSSStyleSheet into its own header. (Bug 239008) r=bzbarsky
authorL. David Baron <dbaron@dbaron.org>
Thu, 31 Dec 2009 10:56:32 -0500
changeset 36781 133cc168d23df2d4203aab0d87174c7ad1dfd1b5
parent 36780 37c441117f709de6b8b1d8f6f41868b8cf4b47a2
child 36782 5dc1687eaa75cfc95dc4b8ae5c792e10888d218a
push id1
push userroot
push dateTue, 26 Apr 2011 22:38:44 +0000
treeherdermozilla-beta@bfdb6e623a36 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbzbarsky
bugs239008
milestone1.9.3a1pre
Move class definition of nsHTMLCSSStyleSheet into its own header. (Bug 239008) r=bzbarsky
layout/style/nsHTMLCSSStyleSheet.cpp
layout/style/nsHTMLCSSStyleSheet.h
--- a/layout/style/nsHTMLCSSStyleSheet.cpp
+++ b/layout/style/nsHTMLCSSStyleSheet.cpp
@@ -35,98 +35,32 @@
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 /*
  * style sheet and style rule processor representing style attributes
  */
 
-#include "nsIHTMLCSSStyleSheet.h"
+#include "nsHTMLCSSStyleSheet.h"
 #include "nsCRT.h"
 #include "nsIAtom.h"
 #include "nsIURL.h"
 #include "nsCSSPseudoElements.h"
 #include "nsIStyleRule.h"
 #include "nsIFrame.h"
 #include "nsICSSStyleRule.h"
 #include "nsIStyleRuleProcessor.h"
 #include "nsPresContext.h"
 #include "nsIDocument.h"
 #include "nsCOMPtr.h"
 #include "nsRuleWalker.h"
 #include "nsRuleData.h"
 #include "nsRuleProcessorData.h"
 
-// -----------------------------------------------------------
-
-class nsHTMLCSSStyleSheet : public nsIHTMLCSSStyleSheet,
-                            public nsIStyleRuleProcessor {
-public:
-  nsHTMLCSSStyleSheet();
-
-  NS_DECL_ISUPPORTS
-
-  // basic style sheet data
-  NS_IMETHOD Init(nsIURI* aURL, nsIDocument* aDocument);
-  NS_IMETHOD Reset(nsIURI* aURL);
-  NS_IMETHOD GetSheetURI(nsIURI** aSheetURL) const;
-  NS_IMETHOD GetBaseURI(nsIURI** aBaseURL) const;
-  NS_IMETHOD GetTitle(nsString& aTitle) const;
-  NS_IMETHOD GetType(nsString& aType) const;
-  NS_IMETHOD_(PRBool) HasRules() const;
-
-  NS_IMETHOD GetApplicable(PRBool& aApplicable) const;
-  
-  NS_IMETHOD SetEnabled(PRBool aEnabled);
-
-  NS_IMETHOD GetComplete(PRBool& aComplete) const;
-  NS_IMETHOD SetComplete();
-
-  // style sheet owner info
-  NS_IMETHOD GetParentSheet(nsIStyleSheet*& aParent) const;  // will be null
-  NS_IMETHOD GetOwningDocument(nsIDocument*& aDocument) const;
-  NS_IMETHOD SetOwningDocument(nsIDocument* aDocument);
-
-  // nsIStyleRuleProcessor api
-  NS_IMETHOD RulesMatching(ElementRuleProcessorData* aData);
-
-  NS_IMETHOD RulesMatching(PseudoElementRuleProcessorData* aData);
-
-  NS_IMETHOD RulesMatching(AnonBoxRuleProcessorData* aData);
-
-#ifdef MOZ_XUL
-  NS_IMETHOD RulesMatching(XULTreeRuleProcessorData* aData);
-#endif
-
-  virtual nsReStyleHint HasStateDependentStyle(StateRuleProcessorData* aData);
-
-  virtual nsReStyleHint
-    HasAttributeDependentStyle(AttributeRuleProcessorData* aData);
-  NS_IMETHOD MediumFeaturesChanged(nsPresContext* aPresContext,
-                                  PRBool* aResult);
-
-#ifdef DEBUG
-  virtual void List(FILE* out = stdout, PRInt32 aIndent = 0) const;
-#endif
-
-private: 
-  // These are not supported and are not implemented! 
-  nsHTMLCSSStyleSheet(const nsHTMLCSSStyleSheet& aCopy); 
-  nsHTMLCSSStyleSheet& operator=(const nsHTMLCSSStyleSheet& aCopy); 
-
-protected:
-  virtual ~nsHTMLCSSStyleSheet();
-
-protected:
-  nsIURI*         mURL;
-  nsIDocument*    mDocument;
-};
-
-
 nsHTMLCSSStyleSheet::nsHTMLCSSStyleSheet()
   : nsIHTMLCSSStyleSheet(),
     mRefCnt(0),
     mURL(nsnull),
     mDocument(nsnull)
 {
 }
 
new file mode 100644
--- /dev/null
+++ b/layout/style/nsHTMLCSSStyleSheet.h
@@ -0,0 +1,111 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is mozilla.org code.
+ *
+ * The Initial Developer of the Original Code is
+ * Netscape Communications Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 1998
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either of the GNU General Public License Version 2 or later (the "GPL"),
+ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+/*
+ * style sheet and style rule processor representing style attributes
+ */
+
+#ifndef nsHTMLCSSStyleSheet_h_
+#define nsHTMLCSSStyleSheet_h_
+
+#include "nsIHTMLCSSStyleSheet.h"
+#include "nsIStyleRuleProcessor.h"
+
+class nsHTMLCSSStyleSheet : public nsIHTMLCSSStyleSheet,
+                            public nsIStyleRuleProcessor {
+public:
+  nsHTMLCSSStyleSheet();
+
+  NS_DECL_ISUPPORTS
+
+  // basic style sheet data
+  NS_IMETHOD Init(nsIURI* aURL, nsIDocument* aDocument);
+  NS_IMETHOD Reset(nsIURI* aURL);
+  NS_IMETHOD GetSheetURI(nsIURI** aSheetURL) const;
+  NS_IMETHOD GetBaseURI(nsIURI** aBaseURL) const;
+  NS_IMETHOD GetTitle(nsString& aTitle) const;
+  NS_IMETHOD GetType(nsString& aType) const;
+  NS_IMETHOD_(PRBool) HasRules() const;
+
+  NS_IMETHOD GetApplicable(PRBool& aApplicable) const;
+
+  NS_IMETHOD SetEnabled(PRBool aEnabled);
+
+  NS_IMETHOD GetComplete(PRBool& aComplete) const;
+  NS_IMETHOD SetComplete();
+
+  // style sheet owner info
+  NS_IMETHOD GetParentSheet(nsIStyleSheet*& aParent) const;  // will be null
+  NS_IMETHOD GetOwningDocument(nsIDocument*& aDocument) const;
+  NS_IMETHOD SetOwningDocument(nsIDocument* aDocument);
+
+  // nsIStyleRuleProcessor api
+  NS_IMETHOD RulesMatching(ElementRuleProcessorData* aData);
+
+  NS_IMETHOD RulesMatching(PseudoElementRuleProcessorData* aData);
+
+  NS_IMETHOD RulesMatching(AnonBoxRuleProcessorData* aData);
+
+#ifdef MOZ_XUL
+  NS_IMETHOD RulesMatching(XULTreeRuleProcessorData* aData);
+#endif
+
+  virtual nsReStyleHint HasStateDependentStyle(StateRuleProcessorData* aData);
+
+  virtual nsReStyleHint
+    HasAttributeDependentStyle(AttributeRuleProcessorData* aData);
+  NS_IMETHOD MediumFeaturesChanged(nsPresContext* aPresContext,
+                                  PRBool* aResult);
+
+#ifdef DEBUG
+  virtual void List(FILE* out = stdout, PRInt32 aIndent = 0) const;
+#endif
+
+private: 
+  // These are not supported and are not implemented! 
+  nsHTMLCSSStyleSheet(const nsHTMLCSSStyleSheet& aCopy); 
+  nsHTMLCSSStyleSheet& operator=(const nsHTMLCSSStyleSheet& aCopy); 
+
+protected:
+  virtual ~nsHTMLCSSStyleSheet();
+
+protected:
+  nsIURI*         mURL;
+  nsIDocument*    mDocument;
+};
+
+#endif /* !defined(nsHTMLCSSStyleSheet_h_) */