Gnash  0.8.11dev
Date_as.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
3 // Free Software Foundation, Inc
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18 
19 #ifndef GNASH_ASOBJ_DATE_H
20 #define GNASH_ASOBJ_DATE_H
21 
22 #include <string>
23 #include "ClockTime.h"
24 #include "Relay.h"
25 
26 namespace gnash {
27  class as_object;
28  struct ObjectURI;
29 }
30 
31 namespace gnash {
32 
33 class Date_as : public Relay
34 {
35 public:
36 
37  explicit Date_as(double value = clocktime::getTicks());
38 
39  void setTimeValue(const double& value) { _timeValue = value; }
40 
41  double getTimeValue() const { return _timeValue; }
42 
43  std::string toString() const;
44 
45 private:
46 
47  double _timeValue;
48 
49 };
50 
51 void registerDateNative(as_object& global);
52 
53 void date_class_init(as_object& where, const ObjectURI& uri);
54 
55 } // end of gnash namespace
56 
57 #endif
58 
gnash::isInf
bool isInf(const T &num)
Definition: as_value.h:56
gnash::Date_as
Definition: Date_as.h:34
gnash::toNumber
double toNumber(const as_value &v, const VM &vm)
Convert an as_value to a double.
Definition: VM.cpp:451
gnash::as_object::set_member_flags
void set_member_flags(const ObjectURI &uri, int setTrue, int setFalse=0)
Set member flags (probably used by ASSetPropFlags)
Definition: as_object.cpp:753
gnash::isNaN
bool isNaN(const T &num)
Definition: GnashNumeric.h:62
gnash::toInt
std::int32_t toInt(const as_value &v, const VM &vm)
AS2-compatible conversion to 32bit integer.
Definition: VM.cpp:463
gnash::key::d
@ d
Definition: GnashKey.h:150
gnash::as_object
The base class for all ActionScript objects.
Definition: as_object.h:162
hour
std::int32_t hour
Definition: Date_as.cpp:95
year
std::int32_t year
Definition: Date_as.cpp:99
gnash::key::T
@ T
Definition: GnashKey.h:132
gnash::key::i
@ i
Definition: GnashKey.h:155
_
#define _(String)
Definition: log.h:44
gnash::as_object::init_member
void init_member(const std::string &name, const as_value &val, int flags=DefaultFlags)
Initialize a member value by string.
Definition: as_object.cpp:669
gnash::VM
The AVM1 virtual machine.
Definition: VM.h:72
gnash
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:41
weekday
std::int32_t weekday
Definition: Date_as.cpp:97
timeZoneOffset
std::int32_t timeZoneOffset
Definition: Date_as.cpp:100
gnash::clocktime::getTimeZoneOffset
DSOEXPORT std::int32_t getTimeZoneOffset(double time)
Definition: ClockTime.cpp:99
second
std::int32_t second
Definition: Date_as.cpp:93
NativeFunction.h
Global_as.h
gnash::getGlobal
Global_as & getGlobal(const as_environment &env)
Definition: as_environment.cpp:651
gnash::NSV::PROP_CONSTRUCTOR
@ PROP_CONSTRUCTOR
Definition: namedStrings.h:68
gnash::getVM
VM & getVM(const as_environment &env)
Definition: as_environment.h:222
gnash::getMember
as_value getMember(as_object &o, const ObjectURI &uri)
Get a member of an object using AS lookup rules.
Definition: as_object.h:756
gnash::createObject
as_object * createObject(const Global_as &gl)
Definition: Global_as.cpp:303
gnash::isFinite
bool isFinite(double d)
Definition: GnashNumeric.h:47
gnash::as_object::DefaultFlags
static const int DefaultFlags
The most common flags for built-in properties.
Definition: as_object.h:192
gnash::key::t
@ t
Definition: GnashKey.h:166
gnash::clocktime::getTicks
DSOEXPORT std::uint64_t getTicks()
Wall clock timer, returns current POSIX time in milliseconds.
Definition: ClockTime.cpp:61
ClockTime.h
gnash::fn_call::Args
FunctionArgs< as_value > Args
Definition: fn_call.h:121
gnash::Relay
This is the base class for type-specific object data.
Definition: Relay.h:50
gnash::Global_as::createClass
as_object * createClass(Global_as::ASFunction ctor, as_object *prototype)
Create an ActionScript class.
Definition: Global_as.cpp:180
gnash::as_value::to_function
as_function * to_function() const
Return the value as a function only if it is a function.
Definition: as_value.cpp:499
gnash::NSV::CLASS_DATE
@ CLASS_DATE
Definition: namedStrings.h:208
IF_VERBOSE_ASCODING_ERRORS
#define IF_VERBOSE_ASCODING_ERRORS(x)
Definition: log.h:397
gnash::constructInstance
as_object * constructInstance(as_function &ctor, const as_environment &env, fn_call::Args &args)
Definition: as_function.cpp:47
gnash::VM::registerNative
void registerNative(as_c_function_ptr fun, unsigned int x, unsigned int y)
Definition: VM.cpp:268
GnashNumeric.h
gnash::Date_as::Date_as
Date_as(double value=clocktime::getTicks())
Definition: Date_as.cpp:159
VM.h
gnash::log_aserror
void log_aserror(StringType msg, Args... args)
Definition: log.h:331
Relay.h
log.h
fn_call.h
namedStrings.h
gnash::Global_as
The Global object ultimately contains all objects in an ActionScript run.
Definition: Global_as.h:50
millisecond
std::int32_t millisecond
Definition: Date_as.cpp:92
minute
std::int32_t minute
Definition: Date_as.cpp:94
test.uri
uri
Definition: test.py:12
gnash::Date_as::getTimeValue
double getTimeValue() const
Definition: Date_as.h:41
month
std::int32_t month
Definition: Date_as.cpp:98
gnash::NSV::PROP_uuPROTOuu
@ PROP_uuPROTOuu
Definition: namedStrings.h:118
gnash::getURI
ObjectURI getURI(const VM &vm, const std::string &str, bool lowerCaseHint=false)
Definition: VM.h:290
gnash::date_class_init
void date_class_init(as_object &global, const ObjectURI &uri)
Definition: Date_as.cpp:205
gnash::key::o
@ o
Definition: GnashKey.h:161
Date_as.h
gnash::PropFlags::readOnly
@ readOnly
Protect from assigning a value.
Definition: PropFlags.h:42
gnash::NSV::PROP_PROTOTYPE
@ PROP_PROTOTYPE
Definition: namedStrings.h:87
gnash::ObjectURI
A URI for describing as_objects.
Definition: ObjectURI.h:45
GnashException.h
gnash::Date_as::toString
std::string toString() const
Definition: Date_as.cpp:166
monthday
std::int32_t monthday
Definition: Date_as.cpp:96
gnash::Date_as::setTimeValue
void setTimeValue(const double &value)
Definition: Date_as.h:39
gnash::registerDateNative
void registerDateNative(as_object &global)
Definition: Date_as.cpp:227