home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 November: Tool Chest / Dev.CD Nov 00 TC Disk 1.toast / Sample Code / Archive / Games / Soundboard / CFilterControl.h < prev    next >
Encoding:
Text File  |  2000-09-28  |  1.6 KB  |  65 lines  |  [TEXT/MMCC]

  1. // ===========================================================================
  2. //    CFilterControl.h            ©1995 Apple Computer, Inc. All rights reserved.
  3. // ===========================================================================
  4.  
  5. #pragma once
  6.  
  7. #include <LModelObject.h>
  8. #include "CSliderControl.h"
  9.  
  10.  
  11. enum {
  12.     SliderAttr_Enabled            = 0x80000000
  13. };
  14.  
  15. typedef    Uint32    ESliderAttr;
  16.  
  17. const long    ae_SetValue            = 10001;
  18. const long    ae_SetMax            = 10002;
  19.  
  20. enum {
  21.     cSlider                        = 'Sldr',
  22.     kAESetValue                    = 'sVal',
  23.     kAESetMax                    = 'sMax',
  24.     pValue                        = 'sVal',
  25.     pMaxValue                    = 'sMax',
  26.     pLabel                        = 'sLbl'
  27. };
  28.  
  29. class    CFilterControl : public CSliderControl,
  30.                           public LModelObject {
  31. public:
  32.     enum { 
  33.         class_ID = 'Filt'
  34.     };
  35.     LCaption             *mLabel;
  36.     unsigned short        mLabelChanges;
  37.  
  38.     static CFilterControl*    CreateFilterControlStream(LStream *inStream);
  39.     
  40.                         CFilterControl(LStream *inStream);
  41.  
  42.     virtual                ~CFilterControl();
  43.  
  44.     virtual void        SendAESetValue(Int32 value, Boolean inExecute = false);
  45.     virtual void        SendAESetMax(Int32 max);
  46.  
  47.         // •• AppleEvent Object Model Support ••
  48.                                               
  49.     virtual void        GetAEProperty(DescType inProperty,
  50.                                         const AEDesc &inRequestedType,
  51.                                         AEDesc& outPropertyDesc) const;
  52.     virtual void        SetAEProperty(DescType inProperty,
  53.                                         const AEDesc &inValue,
  54.                                         AEDesc& outAEReply);
  55.  
  56.     virtual void        HandleAppleEvent(
  57.                                         const AppleEvent    &inAppleEvent,
  58.                                         AppleEvent            &outAEReply,
  59.                                         AEDesc                &outResult,
  60.                                         Int32                inAENumber);
  61. protected:
  62.  
  63.     virtual void        SliderAction(short newPos);
  64.     virtual void        TrackSlider(Point origMouseLoc);
  65. };