
// ##########################################################################
// #                                                                        #
// #                               Group                                    #
// #                                                                        #
// #                          - Deklarationen -                             #
// #                                                                        #
// ##########################################################################


#ifndef _Group_H
#define _Group_H


#include"gui/txtlabel.h"
#include"ui/vobjcoll.h"
#include"ui/shadorec.h"

// IDS:

#define ID_GRP     6000
#define ID_GRP_TTL 6001


class Group : public UI_VObjCollection
{

  public:

	 Group (UI_VObjCollection*   parent,
			  const UI_Rectangle&  shape,
			  UI_ViewID            id,
           const UI_ViewDescriptor* dsc = NULL,
			  const char*          Ttl  = "",
			  unsigned             hTtl = 20
			 );

	 virtual const char* ClassName() const { return "Group";};

	 virtual CL_String&  Title();
	 UI_ShadowRectangle& rect ();


	 virtual bool ToggleBorder ();

	 virtual bool IsBorderShown() const;

	protected:


	 virtual            ~Group ();
	 virtual bool        MakeVisualElement();
	 virtual void        Initialize       ();
	 virtual bool        Paint            (const UI_Rectangle& r);
	 virtual bool        Reconfigure      (const UI_Rectangle&);
	 virtual bool       _ShapeRectChanged ();
    virtual bool       _DoShowBorder(bool b);
	 TextLabel*          Ttl;
	 UI_ShadowRectangle  Rect;
    unsigned            TtlHgt;
};

#endif _Group_H
