Changeset 15869 for lang/actionscript
- Timestamp:
- 07/16/08 01:01:10 (4 months ago)
- Location:
- lang/actionscript/ascss/src
- Files:
-
- 7 modified
-
KyotoDemo.as (modified) (1 diff)
-
KyotoDemo.swf (modified) (previous)
-
css/CSSStyleSelector.as (modified) (2 diffs)
-
cssdom/IASCSSElement.as (modified) (1 diff)
-
cssdom/XMLElementWrapper.as (modified) (6 diffs)
-
kyotodemo/EdgeLayer.as (modified) (1 diff)
-
kyotodemo/XMLDocument.as (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/actionscript/ascss/src/KyotoDemo.as
r15862 r15869 127 127 tx.height = 300; 128 128 tx.textColor = 0xffffff; 129 tx.visible = false; 129 130 onXMLChanged(null); 130 131 } -
lang/actionscript/ascss/src/css/CSSStyleSelector.as
r15818 r15869 537 537 } 538 538 539 var result:Boolean, n:IASCSSElement; 539 540 if (sel.m_match == CSSSelector.PseudoClass) { 540 541 switch (sel.pseudoType()) { … … 556 557 break; 557 558 } 559 560 case CSSSelector.PseudoFirstChild: 561 { 562 // first-child matches the first child that is an element 563 if (e.parentNode && e.parentNode.isElementNode) 564 { 565 result = false; 566 n = e.previousSibling; 567 while (n && !n.isElementNode) 568 n = n.previousSibling; 569 if (!n) 570 result = true; 571 /* 572 if (!m_collectRulesOnly) 573 { 574 RenderStyle* childStyle = (m_element == e) ? m_style : e->renderStyle(); 575 RenderStyle* parentStyle = (m_element == e) ? m_parentStyle : e->parentNode()->renderStyle(); 576 if (parentStyle) 577 parentStyle->setChildrenAffectedByFirstChildRules(); 578 if (result && childStyle) 579 childStyle->setFirstChildState(); 580 } 581 */ 582 return result; 583 } 584 break; 585 } 558 586 } 559 587 return false; -
lang/actionscript/ascss/src/cssdom/IASCSSElement.as
r11978 r15869 11 11 function get firstChild():IASCSSElement; 12 12 function get parentNode():IASCSSElement; 13 function get previousSibling():IASCSSElement; 13 14 function getAttributeQ(qn:QualifiedName):String 14 15 function get document():IASCSSDocument 15 16 function get hovered():Boolean; 16 17 function get renderStyle():RenderStyle; 18 function get isElementNode():Boolean; 17 19 } 18 20 } -
lang/actionscript/ascss/src/cssdom/XMLElementWrapper.as
r15862 r15869 12 12 private var mElement:XML; 13 13 private var mParent:XMLElementWrapper; 14 private var mPreviousSibling:XMLElementWrapper; 14 15 private var mChildren:Array; 15 16 private var mClassNames:ClassNames; … … 73 74 */ 74 75 var len:uint = x.children().length(); 76 var prev:XMLElementWrapper = null; 75 77 for (var i:uint = 0;i < len;i++) 76 78 { … … 81 83 var ch_w:XMLElementWrapper = createFor(ch, d); 82 84 ch_w.parent = wrapper; 85 ch_w.setPreviousSibling(prev); 83 86 84 87 if (!wrapper.mChildren) … … 86 89 87 90 wrapper.mChildren.push(ch_w); 91 prev = ch_w; 88 92 } 89 93 … … 129 133 } 130 134 135 public function get previousSibling():IASCSSElement 136 { 137 return mPreviousSibling; 138 } 139 140 public function setPreviousSibling(s:XMLElementWrapper):void 141 { 142 mPreviousSibling = s; 143 } 144 131 145 public function get firstChild():IASCSSElement 132 146 { … … 150 164 { 151 165 return mDoc; 166 } 167 168 public function get isElementNode():Boolean 169 { 170 return true; 152 171 } 153 172 /* -
lang/actionscript/ascss/src/kyotodemo/EdgeLayer.as
r15862 r15869 15 15 function EdgeLayer() 16 16 { 17 mouseEnabled = false; 18 mouseChildren = false; 19 17 20 mOrderAnimation = new OrderAnimationThread(this); 18 21 mOrderAnimation.start(); -
lang/actionscript/ascss/src/kyotodemo/XMLDocument.as
r15818 r15869 44 44 } 45 45 46 private function checkLineno(x:XML, nest:int = 0, parent:ElementData = null): void46 private function checkLineno(x:XML, nest:int = 0, parent:ElementData = null):ElementData 47 47 { 48 48 var md:ElementData = null; … … 67 67 68 68 var list:XMLList = x.children(); 69 70 var chdata:ElementData; 71 var prevsib_chdata:ElementData = null; 72 69 73 for each(var ch:XML in list) 70 74 { 71 checkLineno(ch, nest + 1, md); 75 chdata = checkLineno(ch, nest + 1, md); 76 77 if (chdata) 78 { 79 chdata.wrapper.setPreviousSibling(prevsib_chdata ? prevsib_chdata.wrapper : null); 80 prevsib_chdata = chdata; 81 } 72 82 } 73 83 74 84 if (md) 75 85 md.end_lineno = mLineNo; 86 87 return md; 76 88 } 77 89
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)