00001 // This may look like C code, but it's really -*- C++ -*- 00002 /* 00003 * Copyright (C) 2008 Emweb bvba, Kessel-Lo, Belgium. 00004 * 00005 * See the LICENSE file for terms of use. 00006 */ 00007 #ifndef OPTIONLIST_H_ 00008 #define OPTIONLIST_H_ 00009 00010 #include <Wt/WContainerWidget> 00011 00012 using namespace Wt; 00013 00014 class Option; 00015 00020 00040 class OptionList : public WContainerWidget 00041 { 00042 public: 00045 OptionList(WContainerWidget *parent = 0); 00046 00049 void add(Option *option); 00050 00051 public slots: 00055 void update(); 00056 00057 private: 00059 std::vector<Option *> options_; 00060 00062 Option *optionNeedReset_; 00063 00065 void optionVisibilityChanged(Option *opt, bool hidden); 00066 00067 friend class Option; 00068 }; 00069 00072 #endif // OPTIONLIST_H_