root/cafu/trunk/CaWE/EditorMaterialEngine.hpp

Revision 457, 2.3 KB (checked in by Carsten, 4 months ago)

Using UltraEdit's multi-line search-and-replace-in-files feature, replaced


^#ifndef _(CAFU|CF|CFS|CA)_(.*)_$
^#define _\1_\2_$

with

#ifndef CAFU_\2_INCLUDED
#define CAFU_\2_INCLUDED

and


^#ifndef _(.*)_HPP_$
^#define _\1_HPP_$

with

#ifndef CAFU_\1_HPP_INCLUDED
#define CAFU_\1_HPP_INCLUDED

Closes #91.

Line 
1/*
2=================================================================================
3This file is part of Cafu, the open-source game engine and graphics engine
4for multiplayer, cross-platform, real-time 3D action.
5Copyright (C) 2002-2012 Carsten Fuchs Software.
6
7Cafu is free software: you can redistribute it and/or modify it under the terms
8of the GNU General Public License as published by the Free Software Foundation,
9either version 3 of the License, or (at your option) any later version.
10
11Cafu is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
12without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13PURPOSE. See the GNU General Public License for more details.
14
15You should have received a copy of the GNU General Public License
16along with Cafu. If not, see <http://www.gnu.org/licenses/>.
17
18For support and more information about Cafu, visit us at <http://www.cafu.de>.
19=================================================================================
20*/
21
22#ifndef CAFU_EDITOR_MATERIAL_ENGINE_HPP_INCLUDED
23#define CAFU_EDITOR_MATERIAL_ENGINE_HPP_INCLUDED
24
25#include "wx/image.h"
26#include "EditorMaterial.hpp"
27
28
29/// This class implements the EditorMaterialI for materials that we
30/// have a material for in the MaterialSystems material manager.
31class EngineMaterialT : public EditorMaterialI
32{
33    public:
34
35    EngineMaterialT(MaterialT* MatSysMaterial_);
36    ~EngineMaterialT();
37
38    int GetWidth() const;
39    int GetHeight() const;
40
41    const wxString& GetName() const { return Name; }
42
43    void Draw(wxDC& dc, const wxRect& DestRect, int NameBoxHeight, bool DrawNameBox) const;
44    const wxImage& GetImage() const;
45
46    MatSys::RenderMaterialT* GetRenderMaterial(bool PreviewMode) const;
47    MaterialT* GetMaterial() const { return MatSysMaterial; }
48    bool IsTranslucent() const;
49    bool ShowInMaterialBrowser() const;
50
51
52    private:
53
54    const wxString                   Name;
55    MaterialT*                       MatSysMaterial;
56    mutable MatSys::RenderMaterialT* MatSysRenderMaterial_Normal;
57    mutable MatSys::RenderMaterialT* MatSysRenderMaterial_Editor;
58    mutable MaterialT*               Material_Editor;               ///< The material with which the MatSysRenderMaterial_Editor is built.
59    mutable wxImage*                 m_BrowserImage;
60};
61
62#endif
Note: See TracBrowser for help on using the browser.