Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | Related Pages

label.h

00001 /*
00002   libwftk - Worldforge Toolkit - a widget library
00003   Copyright (C) 2002 Malcolm Walker <malcolm@worldforge.org>
00004   Based on code copyright  (C) 1999-2002  Karsten Laux 
00005 
00006   This library is free software; you can redistribute it and/or
00007   modify it under the terms of the GNU Lesser General Public
00008   License as published by the Free Software Foundation; either
00009   version 2.1 of the License, or (at your option) any later version.
00010   
00011   This library is distributed in the hope that it will be useful,
00012   but WITHOUT ANY WARRANTY; without even the implied warranty of
00013   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014   Lesser General Public License for more details.
00015   
00016   You should have received a copy of the GNU Lesser General Public
00017   License along with this library; if not, write to the
00018   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00019   Boston, MA  02111-1307, SA.
00020 */
00021 
00022 #ifndef _LABEL_H
00023 #define _LABEL_H
00024 
00025 #include <wftk/widget.h>
00026 #include <wftk/font.h>
00027 
00028 namespace wftk {
00029 
00031 class Label : public Widget
00032 {
00033  //OBJECT
00034 
00035  public:
00037   enum align_t {ALIGN_LEFT, ALIGN_RIGHT, ALIGN_CENTER};
00039   explicit Label(const std::string& text = "", const Font &font=Font());
00041   virtual ~Label();  
00043   void setTextColor(const Color& fontCol);
00045   void setAlign(align_t align) {align_ = align; invalidate();}
00046 
00048   void setText(const std::string&);
00050   const std::string& getText() const {return labelText_;}
00051 
00052  protected:
00054   virtual void draw(Surface&, const Point&, const Region&);
00056   virtual void setPackingInfo();
00057  private:
00059   std::string labelText_;
00061   Surface* text_;
00063   Font labelFont_;
00065   align_t align_;
00066 };
00067 
00068 } // namepspace wftk
00069 
00070 #endif // _LABEL_H

Generated Tue Oct 26 19:02:12 2004.
Copyright © 1998-2003 by the respective authors.

This document is licensed under the terms of the GNU Free Documentation License and may be freely distributed under the conditions given by this license.