-
Content Count
55 -
Joined
-
Last visited
About BlueInkAlchemist
-
Rank
Member [Level 1]
- Birthday 12/06/1978
Profile Information
-
Gender
Male
-
Location
Pennsylvania
-
Greetings, all! I'm using the techniques discussed in this thread on ActionScript.org to load formatted HTML text into flash. I also want to scroll said text, and for that purpose I'd like to use Flashscaper's scrollbar. I've run into a bit of a snag, however. The text displays fine. However, the scrollbar does not appear when initiated and the mask (a red rectangle) can be seen on the right side of the content area; not the entire thing, just a red area about 5-10 pixels wide. The text can be scrolled using the mouse wheel, so the scrollbar functionality is intact. I think this has something to do with the transition within the ContentText function, but when I comment that out, the text doesn't display at all, nor does the scrollbar. Listed below are the three components to this project. ContentText.as: package{ import flash.display.MovieClip; import flash.text.*; import fl.transitions.*; import fl.transitions.easing.*; import flash.text.StyleSheet; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.*; public class ContentText extends MovieClip { private var myURLLoader:URLLoader; private var myURLRequest:URLRequest; private var bodyTextField:TextField; public var contentPage:String; public var myTransitionManager:TransitionManager; public function ContentText(paraString:String) { contentPage = paraString; myURLLoader = new URLLoader(); myURLRequest = new URLRequest("data/styles.css"); myURLLoader.addEventListener(Event.COMPLETE, onLoadCSS); myURLLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); myURLLoader.load(myURLRequest); } private function ioErrorHandler(evt:IOErrorEvent):void { trace('download failed'); } private function onLoadCSS(event:Event):void { bodyTextField = new TextField(); var css:StyleSheet = new StyleSheet(); css.parseCSS(event.target.data); myURLRequest = new URLRequest(contentPage); bodyTextField.x = 50; bodyTextField.y = 50; bodyTextField.width = 200; bodyTextField.height = 200; bodyTextField.multiline = true; bodyTextField.wordWrap = true; bodyTextField.autoSize = TextFieldAutoSize.LEFT; bodyTextField.selectable = false; bodyTextField.styleSheet = css; bodyTextField.condenseWhite = true; addChild(bodyTextField); myURLLoader.removeEventListener(Event.COMPLETE, onLoadCSS); myURLLoader.addEventListener(Event.COMPLETE, onHTMLLoaded); myURLLoader.load(myURLRequest); } private function onHTMLLoaded(evt:Event):void {// trace(evt.target.data); bodyTextField.htmlText = evt.target.data; myTransitionManager = new TransitionManager(this); myTransitionManager.startTransition({type:Wipe, direction:Transition.IN, duration:5.5, easing:None.easeOut}); } }} Scrollbar.as: /** * Flashscaper Scrollbar Component * Customizable Scrollbar * * @author Li Jiansheng * @version 1.0.0 * @private * @website [url="http://forums.xisto.com/no_longer_exists/; */package { import caurina.transitions.*; import flash.display.*; import flash.events.*; import flash.geom.*; public class Scrollbar extends MovieClip { private var target:MovieClip; private var top:Number; private var bottom:Number; private var dragBot:Number; private var range:Number; private var ratio:Number; private var sPos:Number; private var sRect:Rectangle; private var ctrl:Number;//This is to adapt to the target's position private var trans:String; private var timing:Number; private var isUp:Boolean; private var isDown:Boolean; private var isArrow:Boolean; private var arrowMove:Number; private var upArrowHt:Number; private var downArrowHt:Number; private var sBuffer:Number; public var scroller:MovieClip; public var track:MovieClip; public var downArrow:MovieClip; public var upArrow:MovieClip; public function Scrollbar():void { scroller.addEventListener(MouseEvent.MOUSE_DOWN, dragScroll); } // public function init(t:MovieClip, tr:String,tt:Number,sa:Boolean,b:Number):void { target = t; trans = tr; timing = tt; isArrow = sa; sBuffer = b; if (target.height <= track.height) { this.visible = false; } scroller.addEventListener(MouseEvent.MOUSE_OUT, stopScroll); scroller.addEventListener(MouseEvent.MOUSE_UP, stopScroll); stage.addEventListener(MouseEvent.MOUSE_WHEEL,mouseWheelHandler); // upArrowHt = upArrow.height; downArrowHt = downArrow.height; if (isArrow) { top = scroller.y; dragBot = (scroller.y + track.height) - scroller.height; bottom = track.height - (scroller.height/sBuffer); } else { top = scroller.y; dragBot = (scroller.y + track.height) - scroller.height; bottom = track.height - (scroller.height/sBuffer); upArrowHt = 0; downArrowHt = 0; removeChild(upArrow); removeChild(downArrow); } range = bottom - top; sRect = new Rectangle(0,top,0,dragBot); ctrl = target.y; //set Mask isUp = false; isDown = false; arrowMove = 10; if (isArrow) { upArrow.addEventListener(Event.ENTER_FRAME, upArrowHandler); upArrow.addEventListener(MouseEvent.MOUSE_DOWN, upScroll); upArrow.addEventListener(MouseEvent.MOUSE_UP, stopScroll); // downArrow.addEventListener(Event.ENTER_FRAME, downArrowHandler); downArrow.addEventListener(MouseEvent.MOUSE_DOWN, downScroll); downArrow.addEventListener(MouseEvent.MOUSE_UP, stopScroll); } var square:Sprite = new Sprite(); square.graphics.beginFill(0xFF0000); square.graphics.drawRect(target.x, target.y, target.width+5, (track.height+upArrowHt+downArrowHt)); parent.addChild(square); target.mask = square; } public function upScroll(event:MouseEvent):void { isUp = true; } public function downScroll(event:MouseEvent):void { isDown = true; } public function upArrowHandler(event:Event):void { if (isUp) { if (scroller.y > top) { scroller.y-=arrowMove; if (scroller.y < top) { scroller.y = top; } startScroll(); } } } // public function downArrowHandler(event:Event):void { if (isDown) { if (scroller.y < dragBot) { scroller.y+=arrowMove; if (scroller.y > dragBot) { scroller.y = dragBot; } startScroll(); } } } // public function dragScroll(event:MouseEvent):void { scroller.startDrag(false, sRect); stage.addEventListener(MouseEvent.MOUSE_MOVE, moveScroll); } // public function mouseWheelHandler(event:MouseEvent):void { if (event.delta < 0) { if (scroller.y < dragBot) { scroller.y-=(event.delta*2); if (scroller.y > dragBot) { scroller.y = dragBot; } startScroll(); } } else { if (scroller.y > top) { scroller.y-=(event.delta*2); if (scroller.y < top) { scroller.y = top; } startScroll(); } } } // public function stopScroll(event:MouseEvent):void { isUp = false; isDown = false; scroller.stopDrag(); stage.removeEventListener(MouseEvent.MOUSE_MOVE, moveScroll); } // public function moveScroll(event:MouseEvent):void { startScroll(); } public function startScroll():void { ratio = (target.height - range)/range; sPos = (scroller.y * ratio)-ctrl; Tweener.addTween(target, {y:-sPos, time:timing, transition:trans}); } }} texttext.fla: import ContentText; var ct:ContentText; var sb:MovieClip;ct = new ContentText("data/loremipsum.htm");ct.x = 100.0;ct.y = 50.0;addChild(ct);sb = new Scrollbar;sb.x = 500.0;sb.y = 50.0;addChild(sb);sb.init(ct,"easeOutSine",2,true,2); I know it's a lot of code, but any help that you can provide would be greatly appreciated! :cool:
-
My wife and I have been separated for four years. I filed for divorce in 2005 while living in Butler County, PA. My wife never signed the papers, and I've been informed that as of October 18 of this year the case has been discontinued. I know for a fact my wife has no interest in reconciling with me, nor I with her.I now live in Montgomery County and have the option to e-file a new motion for divorce decree. How will my separation status affect the nature of the case? Butler County did not automatically grant the divorce, would law in Montgomery County different? Will I be able to do research at my local library, or is there a specific source I should be looking into?
-
What about XML? For example, within Flash, ActionScript will read the nodes of an XML file which contain external file names, corresponding variables, etc. On an event (a Mouse Click more than likely), the selected variable will load the corresponding external file in a content area. That's the rough idea.
-
Basically, what I want to do is, within a Flash movie, when a navigation button is selected, a content area (a MovieClip more than likely) should be populated with formatted text from an outside page. Also, this is going to be hosted on my domain which is currently held by Microsoft Office Live, meaning it's an ASP-based site. It'll be ASP wrapped around Flash, but still.
-
@ rayzoredge - Thanks for your response. I don't own an HD television or a surround sound rig separate from my PC's sound system, so I'm not worried about HDMI or component cables or any of that stuff. I wouldn't mind a headset, however, given that I'd like to be able to play Team Fortress 2 in a capacity other than a bullet-absorbing newb. Despite already having Half-Life 2 and Portal on my main PC under Steam, I plan on getting The Orange Box as one of my first XBox 360 purchases. That, BioShock and Assassin's Creed will probably be my firsts.
-
So I'm thinking of getting an XBox 360. But do I buy the Arcade or the Pro?The Arcade is much cheaper but does not include an HDD. I can buy that separately but I'd have to go without initially. The Pro comes with an HDD but also comes with games I don't necessarily want to play, and is more expensive.What is the opinion(s) of Trap 17?
-
I think it's subjective, to be honest. There's something for everyone if you know where to look. And if you're not into the subject matter or presentation, no matter how good the game engine is you're not going to like it.Say for example you like fantasy, but you prefer it "visceral" or "realistic". World of Warcraft isn't going to appeal to you. Conversely, if you're not really into Conan, Age of Conan won't be your thing. And Battlestar Galactica fans aren't going to enjoy either of those but will tend towards Eve Online.And then there's all of the free ones. Basically, just spend a little time on Google doing some research, and you'll find something that you're bound to enjoy.
-
Since ActionScript.org appears to be down, I'm going to annoy you all with more design questions. :)I know I can use the getURL and URLLoader classes to bring HTML content into Flash. But can these also be used if I only want to show part of an HTML page? For example, if the content I want to show is in a <div> tag, and that's all I want to show, how would I go about calling for that part of the HTML source?Thanks in advance...
-
Death doesn't really frighten me. Things die, it's part of life. I'm a Christian, so I believe in the persistence of the soul after death, but I also acknowledge the possibility of that being false. If it turns out to be false, I won't care, seeing as I'll be dead. If it's true, however, it's something to look forward to, so I focus on the possibility of encountering loved ones again rather than dwell on the futility of life itself. I'm not THAT emo.
-
BlueInkAlchemist started following What Is The Main Difference Between Religions?
-
Using Jquery Beginners Questions
BlueInkAlchemist replied to BlueInkAlchemist's topic in Websites and Web Designing
Thanks so much for your help, sonesay. Do you think it might be possible to call the code using Flash? I tried a couple of solutions that way but so far I haven't had any success.