PEBL 2.2
Psychology Experiment Building Language - Cross-platform psychological experiment development system
sdl/PlatformImageBox.h
Go to the documentation of this file.
1//* -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*- */
3// Name: src/platforms/sdl/PlatformImageBox.h
4// Purpose: Contains SDL platform-specific Image interface
5// Author: Shane T. Mueller, Ph.D.
6// Copyright: (c) 2003-2026 Shane T. Mueller <smueller@obereed.net>
7// License: GPL 2
8//
9//
10//
11// This file is part of the PEBL project.
12//
13// PEBL is free software; you can redistribute it and/or modify
14// it under the terms of the GNU General Public License as published by
15// the Free Software Foundation; either version 2 of the License, or
16// (at your option) any later version.
17//
18// PEBL is distributed in the hope that it will be useful,
19// but WITHOUT ANY WARRANTY; without even the implied warranty of
20// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21// GNU General Public License for more details.
22//
23// You should have received a copy of the GNU General Public License
24// along with PEBL; if not, write to the Free Software
25// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
27#ifndef __PLATFORMIMAGEBOX_H__
28#define __PLATFORMIMAGEBOX_H__
29
30#include "PlatformWidget.h"
31#include "../../objects/PImageBox.h"
32#include "../../base/PEBLObject.h"
33
34
35#ifdef PEBL_OSX
36#include "SDL.h"
37#include "SDL_image.h"
38#else
39#include "SDL.h"
40#include "SDL_image.h"
41#endif
42
43
44#include <string>
48
49
50class PlatformImageBox: virtual public PImageBox,
51 virtual public PlatformWidget
52{
53public:
54
56 virtual ~PlatformImageBox();
57
58 virtual bool LoadImage(const std::string & imagefilename);
59
60 virtual bool Draw();
61 virtual std::string ObjectName() const{return "PlatformImageBox\n";};
62 virtual void SetZoomX(pDouble x);
63 virtual void SetZoomY(pDouble x);
64
65protected:
67 virtual std::ostream & SendToStream(std::ostream& out) const;
68
69private:
70
71};
72
73
74#endif
#define pDouble
Definition Defs.h:7
Validator platform image box - no image loading, used only for compilation.
virtual ~PlatformImageBox()
Standard Destructor.
virtual std::string ObjectName() const
virtual std::ostream & SendToStream(std::ostream &out) const
An inheritable printing class used by PEBLObjectBase::operator<<.
virtual void SetZoomX(pDouble x)
This sets the widget's position on its parent widget.
virtual void SetZoomY(pDouble x)
This sets the widget's position on its parent widget.
PlatformImageBox()
Standard Constructor.
virtual bool LoadImage(const std::string &imagefilename)