1 /*****************************************************************************/ 2 // SlideShowConfigView 3 // Written by Michael Wilber 4 // 5 // SlideShowConfigView.h 6 // 7 // This BView based object displays the SlideShowSaver settings options 8 // 9 // 10 // Copyright (C) Haiku 11 // 12 // Permission is hereby granted, free of charge, to any person obtaining a 13 // copy of this software and associated documentation files (the "Software"), 14 // to deal in the Software without restriction, including without limitation 15 // the rights to use, copy, modify, merge, publish, distribute, sublicense, 16 // and/or sell copies of the Software, and to permit persons to whom the 17 // Software is furnished to do so, subject to the following conditions: 18 // 19 // The above copyright notice and this permission notice shall be included 20 // in all copies or substantial portions of the Software. 21 // 22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 23 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 24 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 25 // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 26 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 27 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 28 // DEALINGS IN THE SOFTWARE. 29 /*****************************************************************************/ 30 31 #ifndef SLIDE_SHOW_CONFIG_VIEW_H 32 #define SLIDE_SHOW_CONFIG_VIEW_H 33 34 #include <View.h> 35 #include <CheckBox.h> 36 #include <PopUpMenu.h> 37 #include <MenuField.h> 38 #include <MenuItem.h> 39 #include <Button.h> 40 #include <FilePanel.h> 41 #include "LiveSettings.h" 42 43 // SlideShowSaver Settings 44 enum { 45 CHANGE_CAPTION, 46 CHANGE_BORDER, 47 CHOOSE_DIRECTORY, CHANGE_DIRECTORY, 48 CHANGE_DELAY 49 }; 50 #define SAVER_SETTING_CAPTION "slidesaver /caption" 51 #define SAVER_SETTING_BORDER "slidesaver /border" 52 #define SAVER_SETTING_DIRECTORY "slidesaver /directory" 53 #define SAVER_SETTING_DELAY "slidesaver /delay" 54 55 class SlideShowConfigView : public BView { 56 public: 57 SlideShowConfigView(const BRect &frame, const char *name, uint32 resize, 58 uint32 flags, LiveSettings *settings); 59 // sets up the view 60 61 ~SlideShowConfigView(); 62 // releases the settings 63 64 virtual void AllAttached(); 65 virtual void MessageReceived(BMessage *message); 66 67 virtual void Draw(BRect area); 68 // draws information about the slide show screen saver 69 private: 70 BCheckBox *fShowCaption; 71 BCheckBox *fShowBorder; 72 BPopUpMenu *fDelayMenu; 73 BMenuField *fDelayMenuField; 74 BButton *fChooseFolder; 75 76 BFilePanel *fFilePanel; 77 78 LiveSettings *fSettings; 79 // the actual settings for the screen saver, 80 // shared with the screen saver 81 }; 82 83 #endif // #ifndef SLIDE_SHOW_CONFIG_VIEW_H 84