BitmapTab.h

Go to the documentation of this file.
00001 /*
00002   -----------------------------------------------------------------------------
00003 
00004     File: BitmapTab.h
00005     
00006     Date: Thursday December 08, 2005
00007 
00008     Description: A Tab to go on a TabView which will show a bitmap and a label.
00009                  The label can be an empty string to just show a bitmap.
00010     
00011     
00012     Copyright 2004, yellowTAB GmbH, All rights reserved.
00013     
00014 
00015   -----------------------------------------------------------------------------
00016 */
00017 
00018 #ifndef _BITMAPTAB_H
00019 #define _BITMAPTAB_H
00020 
00021 #include <experimental/Tab.h>
00022 
00023 namespace Z {
00024 namespace Experimental {
00025 namespace Interface {
00026 
00027 class BitmapTab : public BStringTab
00028 {
00029     public:
00030                                 BitmapTab(BBitmap* _bitmap, const BString& _label, BView* _target);
00031                                 BitmapTab(BView* _target, BBitmap* _bitmap, const BString& _label = BString());
00032                                 BitmapTab(const BitmapTab& _other);
00033                                 
00034         virtual                 ~BitmapTab();
00035                     
00036                 BBitmap*        SwapBitmap(BBitmap* _bitmap);
00037                 void            SetBitmap(BBitmap* _bitmap);        
00038         const   BBitmap&        GetBitmap() const;
00039                     
00040         virtual void            DrawTab(BView& _owner, 
00041                                         const BRect& _frame, 
00042                                         tab_position _position, 
00043                                         tab_orientation _orientation,
00044                                         draw_state _state);
00045 
00046         virtual void            DrawFocusMarker(BView& _owner, 
00047                                                 const BRect& _frame, 
00048                                                 tab_position _position, 
00049                                                 tab_orientation _orientation,
00050                                                 draw_state _state);
00051 
00052     protected:
00053         virtual void            GetContentSize(const BView& _owner, BRect& _size);
00054         virtual void            DrawLabel(BView& _owner,
00055                                           const BRect& _frame, 
00056                                           tab_position _position, 
00057                                           tab_orientation _orientation,
00058                                           draw_state _state);
00059     
00060     private:
00061         BBitmap* fBitmap;
00062 
00063 };
00064 
00065 } // Interface
00066 } // Experimental
00067 } // Z
00068 
00069 #ifndef _ZETA_EXPLICIT_NAMESPACE_
00070 using Z::Experimental::Interface::BitmapTab;
00071 #endif
00072 
00073 typedef Z::Experimental::Interface::BitmapTab BBitmapTab;
00074 
00075 #endif

Copyright 2005 by yellowTAB GmbH, Be Inc., Palm Source Inc. and their respective legal successors
All rights reserved.