gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ./ChangeLog server/Date.cpp server/Date.h


From: Michael Carlson
Subject: [Gnash-commit] gnash ./ChangeLog server/Date.cpp server/Date.h
Date: Thu, 02 Feb 2006 17:30:42 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Branch:         
Changes by:     Michael Carlson <address@hidden>        06/02/02 17:30:42

Modified files:
        .              : ChangeLog 
        server         : Date.cpp Date.h 

Log message:
        Implement Date's default constructor, and basic time reading operations.
        A little digital clock animation I have now works.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/ChangeLog.diff?tr1=1.64&tr2=1.65&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/server/Date.cpp.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/gnash/gnash/server/Date.h.diff?tr1=1.1&tr2=1.2&r1=text&r2=text

Patches:
Index: gnash/ChangeLog
diff -u gnash/ChangeLog:1.64 gnash/ChangeLog:1.65
--- gnash/ChangeLog:1.64        Thu Feb  2 17:24:43 2006
+++ gnash/ChangeLog     Thu Feb  2 17:30:42 2006
@@ -16,6 +16,9 @@
        * server/textformat.cpp: fix typo in textformat_new log message
        * server/action.cpp: modulus operand in actionscript now returns
        NaN on division by zero
+       * server/Date.h: Setup basic time storage variables
+       * server/Date.cpp: Implement default constructor, basic time
+       reading operations
 
 2006-02-01  Rob Savoye  <address@hidden>
 
Index: gnash/server/Date.cpp
diff -u gnash/server/Date.cpp:1.1 gnash/server/Date.cpp:1.2
--- gnash/server/Date.cpp:1.1   Wed Feb  1 23:52:44 2006
+++ gnash/server/Date.cpp       Thu Feb  2 17:30:42 2006
@@ -22,6 +22,8 @@
 
 #include "log.h"
 #include "Date.h"
+#include <time.h>
+#include <sys/time.h>
 
 namespace gnash {
 
@@ -296,31 +298,56 @@
     date_obj->set_member("tostring", &date_tostring);
     date_obj->set_member("utc", &date_utc);
 
+    if (fn.nargs == 0)
+    {
+        struct timeval tEnd;
+        gettimeofday(&tEnd,NULL);
+        date_obj->obj.millisecond = tEnd.tv_usec;
+        time_t t = time(&t);
+        struct tm *ti = localtime(&t);
+        date_obj->obj.second = ti->tm_sec;
+        date_obj->obj.minute = ti->tm_min;
+        date_obj->obj.hour = ti->tm_hour;
+        date_obj->obj.date = ti->tm_mday;
+        date_obj->obj.month = ti->tm_mon;
+        date_obj->obj.year = ti->tm_year;
+        date_obj->obj.dayWeek = ti->tm_wday;
+    }
+    else
+        log_error("date_new constructor with %d arguments 
unimplemented!",fn.nargs);
+
     fn.result->set_as_object_interface(date_obj);
 }
 void date_get(const fn_call& fn) {
     log_msg("%s:unimplemented \n", __FUNCTION__);
 }
 void date_getday(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.dayWeek);
 }
 void date_getfullyear(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.year + 1900);
 }
 void date_gethours(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.hour);
 }
 void date_getmilliseconds(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.millisecond);
 }
 void date_getminutes(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.minute);
 }
 void date_getmonth(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.month);
 }
 void date_getseconds(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.second);
 }
 void date_gettime(const fn_call& fn) {
     log_msg("%s:unimplemented \n", __FUNCTION__);
@@ -353,7 +380,8 @@
     log_msg("%s:unimplemented \n", __FUNCTION__);
 }
 void date_getyear(const fn_call& fn) {
-    log_msg("%s:unimplemented \n", __FUNCTION__);
+    date_as_object* date = (date_as_object*) (as_object*) fn.this_ptr;
+    fn.result->set_int(date->obj.year);
 }
 void date_set(const fn_call& fn) {
     log_msg("%s:unimplemented \n", __FUNCTION__);
Index: gnash/server/Date.h
diff -u gnash/server/Date.h:1.1 gnash/server/Date.h:1.2
--- gnash/server/Date.h:1.1     Wed Feb  1 23:52:44 2006
+++ gnash/server/Date.h Thu Feb  2 17:30:42 2006
@@ -69,6 +69,9 @@
    void setYear();
    void toString();
    void UTC();
+
+   long year,month,date,hour,minute,second,millisecond;
+   int dayWeek;
 private:
 };
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]