http://vimeo.com/18645886 Flash with kinect
You should be able to listen to events at the phone level… and intercept them… like a before and after event for each event that actually happens…
the biggest ones I can think of are
BEFORE_PHONECALL, AFTER_PHONECALL, BEFORE_ENDCALL, AFTER_ENDCALL…
all of these could be used to log… or to fillter, or to add to your own application…
there are some requests out there for text and call blockers / filtering, and there are already some apps out there that do it, but I was just wondering CAN YOU EVEN DO THIS IN AIR?
as far as i know you can’t do this in air…
YOU SHOULD ALSO HAVE ACCESS TO THE NATIVE MENU WHERE THE BATTER ICONS SIT… a lot of apps add custom icons up there to show you things… can you do that in air either? it would be awesome!
Just published on the android market, built using AIR, and flex 4.5.
The application is used as car dyno, and gives you the following:
0-10, 0-20, 0-30……. 0-100 times
60ft, 330ft, 1/8 mile, 1000ft, 1/4mile times…
it has a GPS Mode that lets slower cars run as well, ( they have trouble triggering the accelerometer ).
search it up, called “AXJDyno”
any one who knows me, im a huge detroit lions fan… they just played chicago, and got to the end of the game and throughout the second half, hadn’t got one first down….
they were down 14 – 19… all they needed was a touchdown and to hold out the rest of the game… just a little under two minutes left!
they receive the kick off and start the drive, and drive it down the field looking like a completely different offense, and get up to somewhere around the 40, and throw up a pass to CALVIN JOHNSON #81… and he brings in the catch, and gets not one, not two, but then almost a half third before falling to the ground on his ass… then being absolutely thrilled that he had just pretty much won the game for them… he pushes the ball to the ground and gets up and runs celebrating!!!!
the refs ruled this an INCOMPLETE PASS!!!!!!!!!!!!!!! due to him letting go of the ball as he got up and ran to celebrate!!!!
SUCH F*ING BULLLLLLLLLLLLLLLLLLL!!!!!!!!!!!!!!!!!!
Here is a link to Step 1: Flex 4 – Skinning Intro – Part 1 if you missed it.
Step 2: Implementing Bezier Curve over the Application Background Skin
Now that you have your application background working, we can work on adding a layer on top of this. We will be adding a shape with a Cubic Bezier curve for a bottom border on top of the background creating a banner. To ensure that our Bezier curve is visible, we need to place it on top of the background (beneath the Rectangle in our code). s:Path is used to be given data to create a shape. Inside of the data property is where we define our shape. First off we have to set the data cursor to start at the X and Y values of 0,0 which would be the top left of the application. Now we make a line from 0,0 to 600,0 by using “l 600,0”. “l” stands for line. It is important to remember that these coordinates are based off of 0,0 being the last coordinates you left off on, not 0,0 being the top left of the application. Next, we need to create the rightmost border of our shape using 0,100. Again, think of this as saying, move horizontally from this location 0 pixels, move vertically from this location 100 pixels.
Now we are to the cubic Bezier curve. This part is a little tricky. To create a cubic Bezier curve and utilize control points, we use “c”. This takes 6 parameters, but you need to think of them as pairs, so three pairs of xy values. The last pair is the destination, so that part is easy. We will want our curve to reach the left side of the application, so the x value is -800, but we want our curve to end up a little lower on the left side, so we will give it a value of 50. The first two pairs are control points. Remember that our cursor is currently at the bottom right of our shape (800,100 in relation to the application). We now need to draw our curving line 300 pixels to the left, but up about 25 pixels. We do this by making our first control point -300, -25. Next we would like to draw our curving line 300 pixels to the left, but up about 50 pixels. We do this by making our other control point -300, 50. We already have our last coordinates set at -800,50. Our finished code for our cubic Bezier curve is, c -300 -25 -300 50 -800 50. To close up the left border of our shape all we have to do is use z which closes our path.
Finally, now that we have our shape, all we have to do is fill it. Just like the last step, we use s:Fill and inside of that we use s:RadialGradient to specify how to fill and s:GradientEntry to specify the colors.
I’m writing this post in regards to skinning in Flex 4 for people who are just starting Flex 4. Skinning is a very important part of Flex 4 and it will come up in pretty much every project that you make.
Step 1: Creating an Application Background Skin
First, you need to create the component. I like to put all of my skins in the same folder, so I created a skins folder. Right click on your folder and select New – MXML Skin. Name your skin, and make sure to specify the host component. In our case it will be “spark.components.Application”. Hit Finish, and this will give you the bare bones of your skin and include the states based on your host component. Since our host component is an Application, the only states we are given are disabled and normal. If we had specified our host component to Button, for example, we would be given the disabled, down, over, and up states.
Next we will be creating the first layer of our skin. It is important to remember that skins are based on layers and each layer you create will cover the one before it (the layer at the bottom of your code is the top layer). We will be using to cover the entire background which is a rectangle. Inside of this, we will use to fill the rectangle. Inside of the fill, we specify how we would like to fill the rectangle. In our example we are using a radial (circular) gradient, but we also could have used a linear gradient, solid color, etc. Inside of we specify the which are the two colors that are blended together. The first gradient entry is the color inside the radial, and the second gradient entry is outside.
Now that we have the Application Background Skin, we have to refer to it inside of our application declaration. You do this by using “skinClass” and referring to the skin file. Ex: skinClass=”com.skins.ApplicationBackgroundSkin”. Now you have a skin for the background of your application.
this link is a top 40 of somethings that are components people have released, and I wanted to remember it.
Its funny when you deal with graphic designers, and the hell they tend to put you through to make your application look good… but in the end it always gives me something to write about and keeps me working so its all good…
Flex 4, I’ve heard fixes the MultiLine Button issue fairly easily (I’ve heard) but I ran into the issue where the button not only needed to be multiline but also needed to be different font styles within the text…
The easiest way I could imagine would be to use the htmlText property of the flex 3, so after reading up on flex 4 and the changes to some of the base text classes, I decided to use the RichText component in flex. That way I can use the new text stuff they added.
Here is my example, and please don’t hesitate to call me stupid… Flex 4 just got released, and I took no time to mess with the beta (busy working) and so now I get to write up on the stuff I encounter.
This post is an example of how to create custom style metadata and pass different values into your degrafa skin dynamically.
I would like to give a shout out to John Yanarella, he and I have been working on a project, and he wrote the skin, and then I adapted it to be able to pass custom styles in via a stylesheet.
So the reason I wanted to cover this is because I find myself creating degrafa skins, and then creating them over and over and over to change things just SLIGHTLY, like corner radius, or a stroke here, or a border there, or different highlight colors, but in general the style is the same… and before I know it, I end up with 3 different variations of classes that are relatively simple…
Like flex by default, I would like to pass in styles via mxml or a stylesheet and have it pass through to the degrafa skin… Thats what this post shows you how to do…
lets say you create a style called “customFillColors”
and you want that to flow into your skin, what you can do is, in your Degrafa skin you have to override updateDisplayList, and get the style in actionscript, and then change the colors accordingly from the style.
override protected function updateDisplayList( unscaledWidth:Number, unscaledHeight:Number ):void
super.updateDisplayList( unscaledWidth, unscaledHeight );
var fillColors:Array = getStyle( "customFillColors" );
if ( ( fillColors != null ) && ( fillColors.length == 2 ) )
topFillColor = fillColors[ 0 ];
bottomFillColor = fillColors[ 1 ];
Here is the application, and you can right click to view source
This post is to show how to use custom degrafa states in non button classes… say you want up, down, over states in a class… a button already does that for you, so in degrafa you just use the GraphicBorderSkin and create different states within it… very simple… and a lot of examples out there of how to do… here are a couple of links to some blog posts that show how to do this.
What this post will show you how to do is, get those states in non button classes, like a canvas… say you want a canvas to have different states when you rollover and such… maybe you want to use it as a renderer…
I’m going to give credit where credit is due… all this codes is credited to my friend and co worker John Yanarella, he doesnt have a blog yet, and he just did this awesome stuff, and I wanted to be able to remember it… so I’m blogging on it… I fully asked his permission, and made sure he’s getting the credit… I didnt want to put the time into fixing the issue… so my round about solution was to put the degrafa right into the renderer instead of making it extend GraphicBorderSkin… his solution is far cleaner, and much more elegant than mine…
The key thing to look at is in the BoxItemRenderer, or CanvasItemRenderer, in updateDisplayList is setting the currentState to whatever it needs to be…
here is the code, and example
I tried to find all sorts of google searches on the headerRenderer for the Datagrid, and couldn’t find anything… so here is my two cents.
I was tasked with a simple datagrid header, one that didn’t have the default skin, but just had some link button type look to the headers…
You have to use the headerRenderer attribute of the DataGridColumn, and you can’t pass a button into it, that causes a run time error, so you have to hand it a container.
The next trick is to override set date(value:Object):void in the renderer, and invalidateProperties(), when you do that, the component will call commitProperties() and there you can access your button, wthout it being null.
Please check out the app to see the reference.
I have a project that needs 20 hours a week for the next 4 – 6 weeks.
I need someone advanced, and that lives in the US, and speaks fluent
english. its all remote, and all sub contracting… I need someone
that can possibly work the weekends… (possibly, it all depends on if you can work during the work week or not… )
have a tight deadline by the 15th of Jan. then a release in the beginning of feb.
email me at jensen (dot) axel (at) yahoo.com
The lockedColumnCount in the datagrid is a tricky little flag you have to remember to do a couple things especially if you are using it inside a container:
This post is a quick example of how to show circular progress for something… This is my first venture with Degrafa and I would have to say after the first couple of hours or so it came to me fairly quickly, I’m pretty pleased with the support out there on it, and the examples are all great.
This post posts a snippet of code of how to loop through an objects properties in order to get the key names.
About six months ago we had some convoluted way of doing something on the backend (PHP), and in order to get something back I was give an single object with a ton of properties and I had to loop over them. For the life of me I couldn’t find any snippets of code that let me loop through an objects properties and get the actual key names… its very simple to loop through an object and get the values, thats cake…. but I was like… hmmm how do I get the key names?
So I came across Dictionary, which I always thought was just an expansion of Object, and I could never really figure out what it did that object didn’t except for the fact that as3coreLib has a Dictionary Utility class that makes it so you can loop over an object and get the keys, and its a light weight .swc file, so I used it up, and started using dictionaries for that reason, and haven’t used Generic Objects ever since, because I figured they did the same thing except Dictionary classes gave me the ability to loop through them and get the keys….
The other day I ran across some code, and thought to myself, so I use a DictionaryUtility class, why didn’t I ever think to even look through the ObjectUtil class in as3… so anyway…. there is a function in that class called getClassInfo, that will give you an array of the properties back… I felt pretty stupid after that, but needless to say I found another way to make my life easier coding….
here is a really small snippet.
var classInfoProperties:Array = ObjectUtil.getClassInfo(a).properties as Array;
To the indian recruiters, I can’t understand you when you callll!!!!!!!!!! jeez!! some of the strongest accents I’ve ever heard! my god!
This flex project will talk to salesforce, grab data, be able to save multiple records at the same time, edit and save single records at the same time, and will demonstrate some simple flex charting and data binding.
John wrote up, and used screen shots, and outlined the application better than I did, but I built it, but he’s the one with the contacts at adobe that wanted the example apps of sfdc… glad I could be a part of it.
(it takes a minute to load)