Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members Related Pages

# GUIDrawInterfaceI.h

    00001 //-------------------------------------------------------------------------
    00002 //
    00003 // File:        GUIDrawInterfaceI.h
    00004 // Desc:        GUI Draw interface.
    00005 // Author:      memon <memon@inside.org>
    00006 //
    00007 //-------------------------------------------------------------------------
    00008 //  Copyright (c) 2000-2002 Moppi Productions. All Rights Reserved.
    00009 //  This file is part of Moppi Demopaja SDK. For conditions of
    00010 //  distribution and use, see the accompanying license.txt file.
    00011 //  http://moppi.inside.org/demopaja/
    00012 //-------------------------------------------------------------------------
    00013
    00014 #ifndef __DEMOPAJA_GUIDRAWINTERFACEC_H__
    00015 #define __DEMOPAJA_GUIDRAWINTERFACEC_H__
    00016
    00017 #define WIN32_LEAN_AND_MEAN
    00018 #include <windows.h>
    00019
    00020 #include "PajaTypes.h"
    00021 #include "BBox2C.h"
    00022 #include "ColorC.h"
    00023 #include "Vector2C.h"
    00024 #include "DeviceInterfaceI.h"
    00025 #include "FileIO.h"
    00026
    00027 namespace PajaSystem {
    00028
    00029     const PluginClass::SuperClassIdC        GRAPHICSDEVICE_GUIDRAW_INTERFACE = PluginClass::SuperClassIdC( 0, 0x3000003 );
    00030
    00031
    00033
    00037     class GUIDrawInterfaceI : public DeviceInterfaceI
    00038     {
    00039     public:
    00040
    00041         virtual PluginClass::SuperClassIdC      get_super_class_id() const;
    00042         virtual PajaTypes::uint32               save( FileIO::SaveC* pSave );
    00043         virtual PajaTypes::uint32               load( FileIO::LoadC* pLoad );
    00044
    00046         virtual void    draw_layout( const PajaTypes::ColorC& rLayout ) = 0;
    00047
    00049         virtual void    begin_layout() = 0;
    00051         virtual void    end_layout() = 0;
    00052
    00054         virtual void    use_font( HFONT hFont ) = 0;
    00056         virtual void    draw_text( const PajaTypes::Vector2C& rPos, const char* szText ) = 0;
    00057
    00059         virtual void    set_color( const PajaTypes::ColorC& rColor ) = 0;
    00061         virtual void    set_point_size( PajaTypes::float32 f32Size ) = 0;
    00063         virtual void    draw_line( const PajaTypes::Vector2C& rFrom, const PajaTypes::Vector2C& rTo ) = 0;
    00065         virtual void    draw_point( const PajaTypes::Vector2C& rPos ) = 0;
    00067         virtual void    draw_grid( PajaTypes::float32 f32Width, PajaTypes::float32 f32Height, PajaTypes::float32 f32GridSize ) = 0;
    00069         virtual void    draw_selection_box( const PajaTypes::Vector2C& rMin, const PajaTypes::Vector2C& rMax ) = 0;
    00071         virtual void    draw_box( const PajaTypes::Vector2C& rMin, const PajaTypes::Vector2C& rMax ) = 0;
    00073         virtual void    draw_marker( const PajaTypes::Vector2C& rPos, PajaTypes::float32 f32Size ) = 0;
    00074
    00075     protected:
    00076         GUIDrawInterfaceI();
    00077         virtual ~GUIDrawInterfaceI();
    00078
    00079     };
    00080
    00081 };  // namespace
    00082
    00083 #endif