Actionscript 3 :: Handling Multiple Events From A Single Listener?
Aug 18, 2011
I want to have a single event listener for multiple events and depending on the type of event i want to handle them separately.Something similar to Swiz framework see: 'Handling Multiple Events from a Single Method'.i have a piece of code like
var toolOptions:UIComponent=ToolOptions.createToolOptions(type);
if (options != null)
{[code]....
In above toolOptions is a mxml component which get dynamically created based on 'type'.Also which type of event should be dispatch the event from the component? eg: Event.SELECT. To be more precise the above is basically required for a toolbar.When user selects a tool,he is shown options for a tool and when he selects options,tool should apply them to object on the view.
I have multiple items in my app that I would like the user to click on.Some items are completely different classes.The classes dispatch events and then when the events are captured, some modifications are done to the transform properties of a loosely coupled display object.I want two separate classes to dispatch the same type of event, since I already have an image class that draws images based on a given url... I want the classes to dispatch the events, but then I think I want the difference to be detected when the event comes along... i.e., I would like to recognize the 'origin' or 'sub-type' of the event. Some sort of if/then logic would suffice.
I have a maven project that produces many artifacts. Of course it is kind of against maven best practice (one pom one artifact), but it is Adobe Flex project that produces many *swf modules and it is really makes no sence to create a separate project for each module.
For me it would be very convinient to handle all swf modules as a single zip archive eg. zip archive would be my artifact.
So I am looking for the way to pack and unpack my zip artifact with maven.
I have created a simple mxml file with code as follows: <s:application..........> <s:BorderContainer> <s:SkinnableContainer id="firstRow"/> <s:SkinnableContainer id="secondRow"/> <s:SkinnableContainer id="thirdRow"/> </s:BorderContainer> </s:application>
Now I want to apply different font size, font color and font type and background color on each row i.e each of the three skinnableContainers.Currently I have defined 3 different skin classes for each of row but I think this is a bad programing. I should create a single skin class for outermost container i.e BorderContainer and any how provide different fonts and background color to all the 3 child containers through that skin class. So, is it possible that I can create single skin class that can provide different decorations to each of the child container.
Can I create a single event listener for all mouse events ?
my understanding is no because: what's happening is that each listener is checking for a string in an event and comparing it for a match against a list which is the listener.
I want each item in a list to change to a totally unique view file. Instead of 10 items in a list all going to 1 new view but with different info being generated I want 10 different view, 1 per item in the list. I can't find any examples of how to do this and I have been tryingo to make it for for a while. This is for a mobile app.
According to Cairngorm architecture, we always have a fault handler in every command class for each service.How we can create a single Class for handling Fault handler event for all the services.
I'm trying to handle movement of my Hero Class by adding event listeners in my constructor. I'm trying to move my Hero object.Inside my hero constructor, I have:
I need to do something and I don't know if it's possible... in a proper way.
1 - I have an FULLSCREEN application that extends to two monitors in a Windows system. 2 - The graphic card is extending the single desktop to the two monitors, so the fullscreen fits everything correctly. 3 - Only one monitor is interactivity-enabled, with an interactive touch-sensitive foil on it, which works great. 4 - The second monitor is interactivity-disabled, it just displays stuff depending on what happens on the first monitor.
The Problem: The interactive foil on the interactivity-enabled monitor responds as if it is the *whole monitor*. But it only covers one monitor!! The *whole monitor*, are the two screens put together. I obviously can't cut the interactive foil in 2, and then stretch the two parts to fill a monitor each... So if one touches beyond 50% of the foil's width, the touch event will actually occur in the second monitor!
A fact for the solution is - if all Mouse Events occur with mouseX divided by 2, everything will work fine! How to make all Mouse Events's mouseX be divided by 2? Is there a way to do that in the core of the actionscript MouseEvents handling?
I have to create a custom header for the AdvancedDataGrid component. The custom header must have two buttons in it. The custom renderer must be applied to more than one column.
How I can fire, dispatch and handle events from the custom headers?
Is there any cross-platform-safe method for dealing with keyboard shortcuts in Flash? For example, on my Mac, pressing ctrl+f results in a KeyboardEvent where the keyCode is 6, but on Windows, the keyCode is 70.
i've created a socket extension class. the pseudo code below tries to make a socket connection using the passed parameters. if there is an security error, such as the port number not being an acceptable port number, i want to handle the security error.
however, i can't catch the security error. a popup window appears with a description of the error and my errorHandler function is never called.
I have just established a menu based-image in flash in the main html page. Also I do have a second page has details on each option of the menu of the main page. I am trying to whenever I click on any option of the menu in the main page; this should take me to the specific section in the second page describing this option.
I want a chart that has several separate series running in rows across. They are largely separate charts and should not overlap, but all share the same horizontal datetimeaxis. They don't share the same y-axis, however and that's where I'm getting stuck.I have tried having a linechart series and then a plotchart series, but it will only allow a single <mx:series> per chart without having them inside the same series which as far as I can tell will place the charts on top of each other in the z-axis. I can stack them and have them completely separate charts, but it was proving to be somewhat irritating having them align correctly.
Is there any reasonable way of combining multiple charts into one like this? Basically having rows in a table where each row is a different chart but the columns are consistent. or am I going to be best served just by stacking separate ones? an illustration of what i'm going for is here: http:[url]........
Can we use 2 timer events in a single application. I'm trying to use 2 timer events in a single application but the 2nd timer event is not working.... any one have an idea??? how to use 2 timer events in a single application.
In one of our project we are using flex for front end, blazeds/java in the backend. Its an existing code where services are prewritten. I have to make calls to 3 services in the backend (basically 3 remote objects) and get their result and store the result in an object and show the data of this object in a view. Now in front end we are using Flex and Parsley Framework. I was thinking of the following approaches.
1) Making commands for each service call and storing the result in a shared object (model) and then displaying this model in the view. In this approach the problem is some services are needed in some other web pages, but they donot need the same model. How should i handle this scenario ? Should i make a asynchronous remote call and fetch the result and then again dispatch and event with the event object storing the result.
2) Making a service call , wait for the result then make another call and wait for the result and then make other call, not sure if this is the right way ?
I am designing a instrument panel and am needing to essentially create an emulation of how the panel would actually work. Right now I have the panel set up to run through a systems test. So I have a button play a movie, and display a verification that the test was successful. On the real panel, you press the same button again to confirm the test. How do you setup the button to go to a different frame than the first time I clicked it? I have come across different possibilities, such as using an "if then" function, but really don't know how to use the syntax, or if that would even accomplish the task at hand.
I have a bit of code listens for a user to click a navigation item, however if they click another nav item then my code loads both of them and puts the content pages on top of each other.I am having loads of problems with this bit of code.
PHP Code: private function _menuSelectHandler (event : MenuEvent):void { if (! event.abstract) {
I have a problem with event handling. I'm working on a calendar, on which events can be listed. With actionscript i loop through an XML file with the days (and if there, the events for that day). So far so good. Where it goes wrong is this: I only want to display blocks with the day numbers on it. When you click on a day, a box pops up and shows the event's for that day.
This is what i did: created a movieclip with classname mc. loop trough the xml file and for each day create a new instance of mc with the day number as text on it. This al works, but now i want to add an eventhandler for each day. How to do this?
I have one movieclip inside which I created few movieclips...I applied drag drop functionality to main movieclip with which all movieclips inside of it also get dragged along with it..and I want inside movieclips to act as buttons meaning on clicking perticular movieclip it should perform perticular event assigned to it... How to make movieclips into buttons and the main movieclip containing these buttons with drag drop functionality?
I have an ArrayCollection bound to a view, I use a filterFunction on this view to only display parts of the contents. Additionally I have another component where I want to display other parts of the ArrayCollection.
What I would like to do is wrap ArrayCollections around each other, meaning I could have one ArrayCollection containing the model data, and then two separate outer ones where I can set the filterFunction property (setting this in the model seems inappropriate in all cases). Is this possible somehow? If not, how else can this be solved, preferably without forcing model logic to end up in my view?
I keep running into problems where I want to add an event listener onto a class instance RIGHT after it's instantiated, like this: Code: storiesXML = new XML(XMLdata); storyBook = new vStories(XML(storiesXML.stories)); storyBook.addEventListener("storyBookLoaded", storyBookLoaded); . . .
But by the time we arrive at the third line, the "storyBookLoaded" event has very often (inconsistent) already been dispatched from my class instance: Code: var evt:Event = new Event("storyBookLoaded", true, false); dispatchEvent( evt ); ...
(Even though quite a lot has happened in the class before that.) To be clear, I don't want to add storyBook as a display child, and even if I did, the addChild() method would have to be called after instantiation of storyBook, so we'd have the same problem. I know I could set a timer in the vStories class to artificially delay the dispatching of the event, but that seems really hack-ish, and would have a real compounding problem if I have to do it too often as everything builds up. How to make sure custom communication events happen after their listeners are set?
I have a couple of remote object methods that I want to respond to in different ways depending on the context, but I'd rather not set up a bunch of different RemoteObject aliases.Some background: Let's say I have an admin application that displays sales stats in different ways. The remote method looks like:
<mx:RemoteObject id="rpt" destination="AMFServer"> <mx:method name="getSalesStats" fault="getSalesStatsFault(event)" result = "getSalesStatsSuccess(event)" />[code]........
The getSalesStats method takes an employee ID and a sales type as its arguments. You'd call it like:
rpt.getSalesStats(120, "peanuts"); public function getSalesStatsSuccess(e:ResultEvent):void { salesdata:ArrayCollection = e.result.rows as ArrayCollection;[code]......
I'd like to pass something through the remote method to the responding function, like:
Below is simplified version of a game I am creating. Basically, the game have some circles. Each circle shoot bullets that is dispatched with timerEvent. When the circle is clicked it is removed from the stage. However, the bullet still keeps on dispatching. I couldn't figure out how to stop timerEvent of each individual circle when it is clicked.
var _timer:Timer = new Timer(1000); var speed:int = 20; for(var i:int=0; i<= 3; i++) { var _shape:MovieClip = new MovieClip(); _shape.graphics.beginFill(0x999999); [Code] .....
I have an instance of an object that starts and stops tweens for sub-movieclips. However I want to do stuff when the tween is finished.So I would like to assign a calling object to events; such as the attach() function does. However when using the attach() function on events it is called right away with the correct object, but when the event is triggered it is called with the object that executed the event (in my case the sub-movieclip).
If that's not possible; something similar to how Mouse events and MouseListeners work would also fit my needs Mouse.addListener(this). By adding a listener for specific events to the current object, then when these events are called they are called on our own object.
var myObject = this; myMovieClip.onTweenComplete = function() { myObject.doStuff(); }
This isn't an exact duplicate of AS3: add event listener to loaded swf, actually it seems to be a mirror situation with non-mirror solution..
I have a test flash file that registers its own listener at first frame's actions.
trace("it's going to be OK"); stage.addEventListener(KeyboardEvent.KEY_DOWN, aKey);
Unfortunately neither line works when .swf is loaded into another movie. Assuming that stage object is wrong for such situations, which object should be used to get listener?
Is it necessary to rewrite loader in parent swf, as said in the linked question?