00001 #ifndef LIST_DISPLAY_H 00002 #define LIST_DISPLAY_H 00003 00004 #include "ActorFrame.h" 00005 #include "Quad.h" 00006 00007 class ListDisplay : public ActorFrame 00008 { 00009 public: 00010 ListDisplay(); 00011 00012 virtual void Update( float fDeltaTime ); 00013 virtual void DrawPrimitives(); 00014 00015 void Load( 00016 const vector<Actor*> &m_vpItems, 00017 int iNumItemsToShow, 00018 float fItemWidth, 00019 float fItemHeight, 00020 bool bLoop, 00021 float fSecondsPerItem, 00022 float fSecondsPauseBetweenItems, 00023 bool bSlide ); 00024 00025 float GetSecondsForCompleteScrollThrough(); 00026 00027 protected: 00028 int m_iNumItemsToShow; 00029 float m_fItemWidth; 00030 float m_fItemHeight; 00031 bool m_bLoop; 00032 float m_fSecondsPerItem; 00033 float m_fSecondsPauseBetweenItems; 00034 bool m_bSlide; 00035 00036 float m_fItemAtTopOfList; 00037 float m_fSecondsPauseCountdown; 00038 Quad m_quadMask; 00039 }; 00040 00041 #endif 00042 00043 /* 00044 * (c) 2003 Chris Danford 00045 * All rights reserved. 00046 * 00047 * Permission is hereby granted, free of charge, to any person obtaining a 00048 * copy of this software and associated documentation files (the 00049 * "Software"), to deal in the Software without restriction, including 00050 * without limitation the rights to use, copy, modify, merge, publish, 00051 * distribute, and/or sell copies of the Software, and to permit persons to 00052 * whom the Software is furnished to do so, provided that the above 00053 * copyright notice(s) and this permission notice appear in all copies of 00054 * the Software and that both the above copyright notice(s) and this 00055 * permission notice appear in supporting documentation. 00056 * 00057 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00058 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00059 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF 00060 * THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS 00061 * INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT 00062 * OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS 00063 * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 00064 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 00065 * PERFORMANCE OF THIS SOFTWARE. 00066 */