libidxgui
|
00001 /*************************************************************************** 00002 * Copyright (C) 2009 by Pierre Sermanet * 00003 * pierre.sermanet@gmail.com * 00004 * 00005 * Redistribution and use in source and binary forms, with or without 00006 * modification, are permitted provided that the following conditions are met: 00007 * * Redistributions of source code must retain the above copyright 00008 * notice, this list of conditions and the following disclaimer. 00009 * * Redistributions in binary form must reproduce the above copyright 00010 * notice, this list of conditions and the following disclaimer in the 00011 * documentation and/or other materials provided with the distribution. 00012 * * Redistribution under a license not approved by the Open Source 00013 * Initiative (http://www.opensource.org) must display the 00014 * following acknowledgement in all advertising material: 00015 * This product includes software developed at the Courant 00016 * Institute of Mathematical Sciences (http://cims.nyu.edu). 00017 * * The names of the authors may not be used to endorse or promote products 00018 * derived from this software without specific prior written permission. 00019 * 00020 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED 00021 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 00022 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00023 * DISCLAIMED. IN NO EVENT SHALL ThE AUTHORS BE LIABLE FOR ANY 00024 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 00025 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 00026 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 00027 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00028 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 00029 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00030 ***************************************************************************/ 00031 00032 #ifndef SCROLL_BOX0_H_ 00033 #define SCROLL_BOX0_H_ 00034 00035 #include <QtGui/QPixmap> 00036 #include <QtGui/QWidget> 00037 #include <QtGui/QtGui> 00038 #include <QtGui/QResizeEvent> 00039 #include <QtGui/QPushButton> 00040 #include <math.h> 00041 #include <iostream> 00042 #include "defines.h" 00043 00044 using namespace std; 00045 00046 namespace ebl { 00047 00048 class EXPORT scroll_box0 { 00049 public: 00050 scroll_box0(); 00051 virtual ~scroll_box0(); 00052 virtual void set_parent(void *parent) = 0; 00053 virtual void display_next() = 0; 00054 virtual void display_previous() = 0; 00055 virtual unsigned int max_pages () = 0; 00056 virtual void display_controls() = 0; 00057 virtual scroll_box0* copy() = 0; 00058 virtual bool next_page(); 00059 virtual bool previous_page(); 00060 00061 protected: 00062 unsigned int page_number; 00063 QPushButton *button_next; 00064 QPushButton *button_previous; 00065 unsigned int _h0; 00066 unsigned int _w0; 00067 unsigned int _h1; 00068 unsigned int _w1; 00069 }; 00070 00071 } // namespace ebl { 00072 00073 #endif /* SCROLL_BOX0_H_ */