2
// Copyright (C) 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
4
// This program is free software; you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation; either version 3 of the License, or
7
// (at your option) any later version.
9
// This program is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
// GNU General Public License for more details.
14
// You should have received a copy of the GNU General Public License
15
// along with this program; if not, write to the Free Software
16
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
/* $Id: impl.h,v 1.52 2008/01/21 20:55:51 rsavoye Exp $ */
24
#include "gnashconfig.h"
27
#include "tu_config.h"
30
//#include "cxform.h" // for composition of display_info
31
//#include "matrix.h" // for display_info composition
34
#include "smart_ptr.h"
35
#include "swf/TagLoadersTable.h"
42
// Forward declarations
43
//class action_buffer;
44
class bitmap_character_def;
51
class sprite_instance;
53
DSOEXPORT void save_extern_movie(sprite_instance* m);
58
DSOEXPORT movie_root* get_current_root();
59
DSOEXPORT const char* get_workdir();
60
DSOEXPORT void set_workdir(const char* dir);
63
// Information about how to display a character.
69
cxform m_color_transform;
72
boost::uint16_t m_clip_depth;
83
void concatenate(const display_info& di)
84
// Concatenate the transforms from di into our
88
m_color_transform.concatenate(di.m_color_transform);
89
m_matrix.concatenate(di.m_matrix);
91
m_clip_depth = di.m_clip_depth;
101
// Register a loader function for a certain tag type. Most
102
// standard tags are handled within gnash. Host apps might want
103
// to call this in order to handle special tag types.
105
/// Register a tag loader for the given tag
106
void register_tag_loader(SWF::tag_type t,
107
SWF::TagLoadersTable::loader_function lf);
109
} // end namespace gnash
112
#endif // GNASH_IMPL_H
117
// indent-tabs-mode: t