Main Page Class Hierarchy Compound List File List Compound Members File Members Related Pages Examples

# sdlgradientwidget.h

Go to the documentation of this file.

    00001 /*
    00002     ParaGUI - crossplatform widgetset
    00003     Copyright (C) 2000  Alexander Pipelka
    00004
    00005     This library is free software; you can redistribute it and/or
    00006     modify it under the terms of the GNU Library General Public
    00007     License as published by the Free Software Foundation; either
    00008     version 2 of the License, or (at your option) any later version.
    00009
    00010     This library is distributed in the hope that it will be useful,
    00011     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00012     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00013     Library General Public License for more details.
    00014
    00015     You should have received a copy of the GNU Library General Public
    00016     License along with this library; if not, write to the Free
    00017     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    00018
    00019     Alexander Pipelka
    00020     pipelka@teleweb.at
    00021
    00022     Last Update:      $Author: pipelka $
    00023     Update Date:      $Date: 2001/01/31 17:23:15 $
    00024     Source File:      $Source: /usr/local/CVSROOT/linux/paragui/doc/html/sdlgradientwidget_h-source.html,v $
    00025     CVS/RCS Revision: $Revision: 1.34 $
    00026     Status:           $State: Exp $
    00027 */
    00028
    00029 #ifndef SDLGRADIENTWIDGET_H
    00030 #define SDLGRADIENTWIDGET_H
    00031
    00032 #ifdef SWIG
    00033 %include "swigcommon.h"
    00034 %module sdlgradientwidget
    00035 %{
    00036 #include "sdlgradientwidget.h"
    00037 %}
    00038 #endif
    00039
    00040 #include "sdlwidgetdnd.h"
    00041
    00050 class DECLSPEC SDLGradientWidget : public SDLWidgetDnD  {
    00051 public:
    00052
    00053     SDLGradientWidget(SDLWidget* parent, SDL_Rect& r);
    00054     ~SDLGradientWidget();
    00055
    00056     void LoadThemeStyle(const char* widgettype);
    00057
    00058     void LoadThemeStyle(const char* widgettype, const char* objectname);
    00059
    00063     bool SetBackground(const char* filename, int mode=BKMODE_TILE);
    00064
    00068 #ifdef SWIG
    00069     %name(SetBackground2) bool SetBackground(SDL_Surface* surface, int mode=BKMODE_TILE);
    00070 #else
    00071     bool SetBackground(SDL_Surface* surface, int mode=BKMODE_TILE);
    00072 #endif
    00073
    00077     void SetBackgroundBlend(Uint8 backblend);
    00078
    00083     void SetGradient(SDL_Gradient& grad);
    00084
    00085 protected:
    00086
    00088     void eventDraw(SDL_Surface* surface, SDL_Rect* rect);
    00089
    00090     SDL_Gradient my_gradient;
    00091     SDL_Surface* my_background;
    00092
    00093     Uint8 my_blendLevel;
    00094     bool my_backgroundFree;
    00095     int my_backgroundMode;
    00096     int my_bordersize;
    00097
    00098 private:
    00099
    00100     SDLGradientWidget(const SDLGradientWidget&);
    00101     SDLGradientWidget& operator=(const SDLGradientWidget&);
    00102
    00106     void FreeSurface();
    00107 };
    00108
    00109 #endif // SDLGRADIENTWIDGET_H