/Users/airy/Sources/augui/AUGUIFramework/Controls/TImagePopup.h

Go to the documentation of this file.
00001 /*
00002  *  TImagePopup.h
00003  *  Ritmo
00004  *
00005  *  Created by Chris Reed on Mon Feb 17 2003.
00006  *  Copyright (c) 2003 Chris Reed. All rights reserved.
00007  *
00008  */
00009 
00010 #include <Carbon/Carbon.h>
00011 
00012 #if !defined(_TImagePopup_h_)
00013 #define _TImagePopup_h_
00014 
00015 #include "TViewNoCompositingCompatible.h"
00016 
00019 #define kImagePopupControlValueImageDictTag FOUR_CHAR_CODE('VImg')
00020 
00023 #define kImagePopupControlValueImageFilenameDictTag FOUR_CHAR_CODE('VImF')
00024 
00027 #define kImagePopupControlUseImagesNotTextTag FOUR_CHAR_CODE('I!Tx')
00028 
00039 class TImagePopup : public TViewNoCompositingCompatible
00040 {
00041         AUGUIDefineControl(TImagePopup, TViewNoCompositingCompatible, "popup");
00042 protected:
00043         // Constructor/Destructor
00044         TImagePopup(HIViewRef inControl);
00045         virtual ~TImagePopup();
00046         
00047         virtual ControlKind GetKind();
00048         
00049         virtual OSStatus Initialize(TCarbonEvent& inEvent);
00050         virtual ControlPartCode HitTest(const HIPoint&  inWhere);
00051         virtual void CompatibleDraw(RgnHandle inLimitRgn, CGContextRef inContext, bool inCompositing);
00052         virtual OSStatus HiliteChanged(ControlPartCode inOriginalPart, ControlPartCode inCurrentPart, RgnHandle inInvalRgn);
00053         virtual OSStatus Track(TCarbonEvent& inEvent, ControlPartCode* outPart);
00054         virtual void TitleChanged();
00055         virtual void ValueChanged();
00056         
00057         virtual OSStatus SetData(OSType inTag, ControlPartCode inPart, Size inSize, const void* inPtr);
00058         virtual OSStatus GetData(OSType inTag, ControlPartCode inPart, Size inSize, Size* outSize, void* inPtr);
00059 
00060 private:
00061         CGImageRef mBackImage;
00062         MenuRef mPopupMenu;
00063         CFStringRef mSelectedItemText;
00064         ControlFontStyleRec mTextStyle;
00065         float mLeftInset;
00066         float mRightInset;
00067         CFStringRef mFilenameBase;
00068         bool mUseValueImages;
00069         CFMutableDictionaryRef mValueImageCache;
00070         
00071         CGImageRef GetImageForValue();
00072 };
00073 
00074 #endif _TImagePopup_h_





Generated on Sat Jul 8 13:02:18 2006 for AUGUI Framework by doxygen1.4.6

hosted on SourceForge.net Logo