ia-Redmonk-JavaFXPreviewSDKDemoWithNandiniRamani953

8:53 · SRT · archive.org · all RedMonk TV

0:00

Some job effects in action, and also the SDK. So why don't we launch into that? Okay. So this one shows you, like I was saying, we have audio, video, and HD, and all of that support coming in 1.0. So this is what you can look forward to, and here's a demo of high def video. This is in case you don't have time to watch each of those previews on their own, right? Yeah. And then if you do want to watch it, just one on its own, there you go. Right. So what are the sort of video encoders that these are being done in? Okay. This particular demo uses native, so on this one it's core video. Okay. But when we launched 1.0, we did announce at Java 1 this deal with ONTO. Oh, right. So we'll have a cross-platform codec. Okay. That will be across all platforms. And in addition, we will also support native video on all platforms, because I know when I talk to people, they seem to want both, cross-platform as well as support for whatever is on your platform as well, so we will have both. And in fact, the preview SDK already has native support. So I'm going to exit out of that and show you now what you can do with the IDE. So this is sort of the SDK that we're seeing here. Yes. Okay. And you can download it, and to everything we talked about how you import assets, I already have some here and I can show you. There's a sample project, the JavaFX sample project. There's a weather application which will come with the preview SDK. Uh-huh. And I've already got it running on mine, and I can show you the various things that are in the weather application. So right here, I was talking to you about Project Nile and what you can import from it. Right. When I run the demo, you'll see it.

2:00

So let me first start by running the demo so you know what I'm talking about. And then, and I'll walk you through some code on how to do this in JavaFX. It's looking up weather data. So it's actually tying into the back end to a weather service. Uh-huh. So this is live data of weather in Prague, Paris, and Palo Alto. And then here's the animations, sunny in Palo Alto as always. So we're sort of focusing in on the temperature part, the highs and the lows. Yes. And then you can see it's raining in Paris. I don't know if that's visible, but. Right. And it's, you can see that it's the dark, it's night in Prague. This is the tomorrow part. All right. So there's sort of the environmental things are visually represented. All of it. And these assets were created using the Adobe Photoshop and Illustrator. Uh-huh. So we imported those assets in and then scripted in the animation. So when I click here, this mouse click and the transitions are written in JavaFX script. Everything else was directly exported out of the tool. Right. So I can now take you to some of the code and show you how this was done. So right here is the actual application. This is the scripted code. Like if you take something as simple as how do I animate an image. Right. That's this piece of code right here that does the animation. And so I guess this is the FX script stuff that we're looking at, right? Yes. This is FX script and it has keyframe animations. It's got repeat count, timelines, and then what it is that you want to animate. And so you play for a while and then you pause. And all of it that it's doing, it's loading the original images that came from Photoshop. Right. And I'll show you now the images itself. So right here are the moon, the Prague, I think, had it because it's nighttime there.

4:05

There was a moon. There's the sun, which was in Palo Alto. Right. And you can choose to animate it or if it's raining, the animation for rain is all done in script code right here. Right. Right. So you're actually using the script code to sort of move the images around. Any interaction. Yes. We're saying, obviously. Everything that has interactivity is done using the code. Okay. On our end. But all of these PNGs, the lightning and thunder and all of these effects, were drawn by somebody else, an artist. Right. And we didn't have to do anything with it. You just import the code and it comes in. And here's the rain, PNG for rain. So each of these assets comes in as is. There's no coding involved. The only part of coding that you do is in these files where you're actually creating the animations and or movement or whatever you're calling it. That makes sense. Yeah, yeah. I think animation is the proper word. And also I want to draw your attention to this palette on the right side that lets you drag and drop components. It has support for swing components for more enterprise-ish applications. And we have the notion of common and extensions. Okay. So to the point about supporting multiple screens, we have one common set of APIs that'll be across all screens including mobile, TV, desktop, browser. And then there's extensions like Swing which will only work on desktop. That makes sense. And so you'd be able to divide out. Like if I'm running on a desktop, I want to use this functionality versus the thing that would be available everywhere. Exactly. And so going forward, when we do deploy to mobile, all of this will be grayed out and you cannot use it. Right. So can you sort of add your own sort of component if you come up with some other -- With extensions to the libraries? Well, currently the answer is no. We're doing what, you know, we can and we assume that anything you want to customize, you will do using your artwork or --

6:06

Right, right, right. And create it in Java effects. Right. So any other library, these are Java supporting libraries basically. That makes sense. So we don't allow extensions there. But you can still sort of achieve your own UI components. It just doesn't show up in the palette over there. Exactly, yes. At the moment. You can definitely do your own type of scroll bar or anything. Sure. Yeah. You can recreate Winamp. Yeah. I don't know if I'm allowed to answer that. Right. Well, yeah. So you were talking about how you can have something in a browser or out of a browser, things like that. I mean, can you show us a little bit of that? Yeah, sure. So I have a different application here, which is also a weather application. To the point that you can have different look and feel for each of your application. You can customize it any which way. So here's another one that shows weather of all my friends and where they are and what the temperature is in the city they are at. And so I can drag this off the web page onto my desktop. Right. And it continues to exist here as an applet. It was an applet in the browser and now it's a resident desktop application. And it will continue to function. I can... Let me move it here so you can see it. We can zoom in and track our friends. Exactly. And that's where he's located. And this is the actual NASA data of the WorldWin application. So it shows me where my friend is. Right. And I can keep this and kill the browser and it will still continue to stay open. There you go. And so, I mean, just to rehash the idea. I mean, what's sort of the usage that you see people using this for? Like why... I mean, when would they think to have this sort of feature? Well, anytime you want access to your file system, the local cache data, for these kind of things. Like maybe I just wanted to persist without the browser all the time. The other kind of thing would be when you want to upload pictures. I usually always put them on my laptop and then I have to get in a browser and then upload it. Whereas if it's here, I can always have access to my file system and then let this resident application upload it to Flickr whenever I'm connected.

8:15

Right. Instead of having to always be on a browser to do that. And then I assume there's more interactive drag and drop sort of thing. Sure. Like dropping the images. Oh, into this application. Right. Yes. Yeah. Right. So it kind of gives you, if you have a web application or a web thing going on, you can have sort of like a presence on the desktop. Yep. To manage not having that silly browse button that you always have to click. Oh, all of a sudden, yes. Was there other SDK things you wanted to show us? I think this is basically for the preview, this is what we have. Right. When we launch the 1.0, we'll have a whole lot more to show you. Right. Well, that'll be exciting. Well, thanks for showing that to us. Thank you.

RedMonk TV · 🍕 Get more pizza.