package {
// Import Flash classes
import flash.display.*;
import flash.display.NativeWindow;
import flash.events.*;
import flash.text.TextField;
import flash.net.*;
import flash.desktop.*;
import flash.filesystem.*;
import flash.utils.setInterval;
public class clock extends MovieClip {
/*private function mosalastY(ang:Number) {//not Use this time
return -80 * Math.sin(ang * Math.PI / 180) + 92;
}
function mosalastX(ang:Number) {//not Use this time
return 80 * Math.cos(ang * Math.PI / 180) + 92;
// MONSAREF SHODAM AZ IN KAR :D
}*/
public function clock():void {
stage.nativeWindow.close();
//----------------------function(s)------------------------------
function closeApp() {
nw.stage.nativeWindow.close();
}
//-----------
function aboutThis() {
var about_w:NativeWindowInitOptions = new NativeWindowInitOptions();
about_w.maximizable = false;
about_w.minimizable = false;
about_w.transparent = false;
about_w.resizable = false;
about_w.type = "utility";
about_w.systemChrome = "standard";
var ab:about_ac = new about_ac;
var about_w_i:NativeWindow = new NativeWindow(about_w);
about_w_i.width = 200;
about_w_i.height = 350;
about_w_i.stage.addChild(ab);
ab.x = -61;
ab.y = -128;
about_w_i.title = "About AirClock ver:1.0";
about_w_i.stage.scaleMode = StageScaleMode.NO_SCALE;
about_w_i.activate();
}
//-----------
function moveWin(e:MouseEvent):void {
nw.stage.nativeWindow.startMove();
}
//------------------------------------------------------------------
var A1:sec_a = new sec_a;
A1.x = 84+50+47.5;
A1.y = -60+92.5;
var A3:hour_s = new hour_s;
A3.x = 84+50+47.5;
A3.y = -60+92.5;
var A2:min_s = new min_s;
A2.x = 84+50+47.5;
A2.y = -60+92.5;
var back1:GLass = new GLass;
back1.x = 84;
back1.y = -60;
back1.width = 200;
var back0:clock_rond = new clock_rond;
back0.x = 79;
back0.y = -66;
var back:clock_base = new clock_base;
back.x = 85;
back.y = -60;
var p12:mc12 = new mc12;
p12.x= 84+50+47.5;
p12.y = -40;
var p3:mc3 = new mc3;
p3.x= 260;
p3.y = 32;
var p6:mc6 = new mc6;
p6.x= 84+50+47.5;
p6.y = 115;
var p9:movieclipnoh = new movieclipnoh;
p9.x= 98;
p9.y = 26;
var da:date_v = new date_v;
da.x = 185;
da.y = 12;
//------------TrayIcon set :iconbitmap,menu,tooltip---------------------
var icon:Loader = new Loader();
NativeApplication.nativeApplication.icon.bitmaps = [];
icon.contentLoaderInfo.addEventListener(Event.COMPLETE, iconLoadComplete);
icon.load(new URLRequest("Icon(s)/clock-16x16.png"));
//var iconData:BitmapData = new BitmapData(128, 128, true, 0xFFFFFF);
//NativeApplication.nativeApplication.icon.bitmaps = [iconData];
function iconLoadComplete(event:Event):void {
NativeApplication.nativeApplication.icon.bitmaps = [event.target.content.bitmapData];
}
SystemTrayIcon(NativeApplication.nativeApplication .icon).tooltip = "AirClock ver:1.0";
SystemTrayIcon(NativeApplication.nativeApplication .icon).menu = createSystrayRootMenu();
//-----------
function createSystrayRootMenu():NativeMenu {
var menu:NativeMenu = new NativeMenu();
var about:NativeMenuItem = new NativeMenuItem("About");
var exitNativeMenuItem:NativeMenuItem = new NativeMenuItem("Exit");
exitNativeMenuItem.addEventListener(Event.SELECT, closeApp);
about.addEventListener(Event.SELECT, aboutThis);
menu.addItem(about);
menu.addItem(new NativeMenuItem("",true));
//separator
menu.addItem(exitNativeMenuItem);
return menu;
}
//-----------------------------------------------------------------------
var nwio:NativeWindowInitOptions = new NativeWindowInitOptions();
nwio.maximizable = false;
nwio.minimizable = false;
nwio.transparent = true;
nwio.resizable = false;
nwio.type = "lightweight";
nwio.systemChrome = "none";
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0x990000);
circle.graphics.drawCircle(183,33, 97.5);
circle.alpha = 0;
circle.graphics.endFill();
var nw:NativeWindow = new NativeWindow(nwio);
nw.width = 510;
nw.height = 250;
nw.x = 300;
nw.y = 300;
nw.title = "AirClock-Ver:1.0";
nw.stage.addChild(back0);
nw.stage.addChild(back);
nw.stage.addChild(A3);
nw.stage.addChild(A2);
nw.stage.addChild(A1);
nw.stage.addChild(back1);
nw.stage.addChild(p12);
nw.stage.addChild(p3);
nw.stage.addChild(p6);
nw.stage.addChild(p9);
nw.stage.addChild(da);
nw.stage.addChild(circle);//mover
nw.stage.scaleMode = StageScaleMode.NO_SCALE;
nw.activate();
nw.stage.nativeWindow.alwaysInFront = true;
function onMouseWheel(e:MouseEvent):void { // alpha Setting ...
var delta:int=e.delta < 0?-1:1;
if (back.alpha >= .1 || e.delta > 0) {
back.alpha+= delta / 50;
}
if (back.alpha >= 1.019) {
back.alpha=1.019;
}
if (back0.alpha >= .1 || e.delta > 0) {
back0.alpha+= delta / 50;
}
if (back0.alpha >= 1.019) {
back0.alpha=1.019;
}
}
circle.buttonMode = true;
circle.addEventListener(MouseEvent.MOUSE_DOWN,moveWin);
circle.addEventListener(MouseEvent.MOUSE_WHEEL,onMouseWheel);
da.date_c.text=date.todayDate()[2]; // --> {date.as}
function timer() { // Clock motion ...
var thisD:Date=new Date;
A1.rotation=thisD.getSeconds() * 6;
A2.rotation=thisD.getMinutes() * 6+ (thisD.getSeconds()/9.8);
A3.rotation=thisD.getHours() * 30 + (thisD.getMinutes()/1.96);
}
var time:uint=setInterval(timer,100);
}
}
}
/*----------------------------------------------------
Copyright 2008 © Kiafilm Inc rights reserved
Version: 1.5
Author:
Kiarash.M
[email protected]
-----------------------------------------------------*/
package {
public class date {
/**
* @helpid none
*/
public static function mydate() {
}
public static function FGR(a:Number,b:Number):Number {
return int(a / b);
}
public static function MiladiToShamsi(Miladiy:Number,Miladim:Number,Miladid:Number):Array {
var Miladidays_in_month:Array=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var Shamsidays_in_month:Array=new Array(31,31,31,31,31,31,30,30,30,30,30,29);
var Miladi_y:Number=int(Miladiy - 1600);
var Miladi_m:Number=int(Miladim - 1);
var Miladi_d:Number=int(Miladid - 1);
var Miladiday_no:Number=int(int(365) * Miladi_y + FGR(Miladi_y + 3,4) - FGR(Miladi_y + 99,100) + FGR(Miladi_y + 399,400));
for (var i=0; i < Miladi_m; ++i) {
Miladiday_no+= Miladidays_in_month[i];
}
if (Miladi_m > 1 && Miladi_y % 4 == 0 && Miladi_y % 100 != 0 || Miladi_y % 400 == 0) {
Miladiday_no++;
}
Miladiday_no+= Miladi_d;
var Shamsiday_no:Number=Miladiday_no - 79;
var Shamsinp:Number=FGR(Shamsiday_no,12053);
Shamsiday_no=Shamsiday_no % 12053;
var Shamsi_y:Number=979 + 33 * Shamsinp + 4 * FGR(Shamsiday_no,1461);
Shamsiday_no%= 1461;
if (Shamsiday_no >= 366) {
Shamsi_y+= FGR(Shamsiday_no - 1,365);
Shamsiday_no=Shamsiday_no - 1 % 365;
}
for (var j=0; j < 11 && Shamsiday_no >= int(Shamsidays_in_month[j]); ++j) {
Shamsiday_no-= Shamsidays_in_month[j];
}
var Shamsi_m:Number=j + 1;
var Shamsi_d:Number=Shamsiday_no + 1;
return new Array(Shamsi_y,Shamsi_m,Shamsi_d);
}
public static function todayDate():Array {
var thisMonth:Array = [1,2,3,4,5,6,7,8,9,10,11,12];
//var thisDay:Array = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31];
var thisDate:Date = new Date();
return new Array(MiladiToShamsi(thisDate.getFullYear(),thisMonth[thisDate.getMonth()],thisDate.getDate())[0],MiladiToShamsi(thisDate.getFullYear(),thisMonth[thisDate.getMonth()],thisDate.getDate())[1],MiladiToShamsi(thisDate.getFullYear(),thisMonth[thisDate.getMonth()],thisDate.getDate())[2]);
}
}
}