132b3986cSPhilippe Houdoin /* 205cf63e3SJohn Scipione * Copyright 2009 Vincent Duvert, vincent.duvert@free.fr 305cf63e3SJohn Scipione * Copyright 2014 Haiku, Inc. All rights reserved. 405cf63e3SJohn Scipione * 505cf63e3SJohn Scipione * Distributed under the terms of the MIT License. 605cf63e3SJohn Scipione * 705cf63e3SJohn Scipione * Authors: 8*1c56a03cSJohn Scipione * Vincent Duvert, vincent.duvert@free.fr 905cf63e3SJohn Scipione * John Scipione, jscipione@gmail.com 1032b3986cSPhilippe Houdoin */ 1132b3986cSPhilippe Houdoin #ifndef ICONS_SAVER_H 1232b3986cSPhilippe Houdoin #define ICONS_SAVER_H 1332b3986cSPhilippe Houdoin 143cbb1132SJohn Scipione 15*1c56a03cSJohn Scipione #include <ObjectList.h> 1632b3986cSPhilippe Houdoin #include <ScreenSaver.h> 1732b3986cSPhilippe Houdoin 1832b3986cSPhilippe Houdoin 19*1c56a03cSJohn Scipione struct vector_icon; 20*1c56a03cSJohn Scipione 21*1c56a03cSJohn Scipione 2232b3986cSPhilippe Houdoin class IconDisplay; 2332b3986cSPhilippe Houdoin 2432b3986cSPhilippe Houdoin 2532b3986cSPhilippe Houdoin class IconsSaver: public BScreenSaver { 2632b3986cSPhilippe Houdoin public: 2732b3986cSPhilippe Houdoin IconsSaver(BMessage* archive, image_id); 2832b3986cSPhilippe Houdoin virtual ~IconsSaver(); 2932b3986cSPhilippe Houdoin 3032b3986cSPhilippe Houdoin virtual status_t StartSaver(BView *view, bool preview); 3132b3986cSPhilippe Houdoin virtual void StopSaver(); 3232b3986cSPhilippe Houdoin 3332b3986cSPhilippe Houdoin virtual void Draw(BView *view, int32 frame); 3432b3986cSPhilippe Houdoin 3532b3986cSPhilippe Houdoin virtual void StartConfig(BView* view); 3632b3986cSPhilippe Houdoin 3732b3986cSPhilippe Houdoin private: 380def0b0dSJohn Scipione void _GetVectorIcons(); 390def0b0dSJohn Scipione 40*1c56a03cSJohn Scipione BObjectList<vector_icon> fVectorIcons; 4132b3986cSPhilippe Houdoin IconDisplay* fIcons; 4232b3986cSPhilippe Houdoin 4332b3986cSPhilippe Houdoin BBitmap* fBackBitmap; 4432b3986cSPhilippe Houdoin BView* fBackView; 4532b3986cSPhilippe Houdoin 463cbb1132SJohn Scipione uint16 fMinSize; 473cbb1132SJohn Scipione uint16 fMaxSize; 4832b3986cSPhilippe Houdoin }; 4932b3986cSPhilippe Houdoin 503cbb1132SJohn Scipione 513cbb1132SJohn Scipione #endif // ICONS_SAVER_H 52