File indexing completed on 2024-05-05 05:34:56

0001 #ifndef oxygenframedemowidget_h
0002 #define oxygenframedemowidget_h
0003 
0004 /*
0005 * this file is part of the oxygen gtk engine
0006 * SPDX-FileCopyrightText: 2010 Hugo Pereira Da Costa <hugo.pereira@free.fr>
0007 *
0008 * based on the Null Theme Engine for Gtk+.
0009 * SPDX-FileCopyrightText: 2008 Robert Staudinger <robert.staudinger@gmail.com>
0010 *
0011 * SPDX-License-Identifier: LGPL-2.0-or-later
0012 */
0013 
0014 #include "oxygendemowidget.h"
0015 #include "oxygensignal.h"
0016 
0017 #include <gtk/gtk.h>
0018 #include <map>
0019 
0020 namespace Oxygen
0021 {
0022 
0023     class FrameDemoWidget: public DemoWidget
0024     {
0025 
0026         public:
0027 
0028         //! constructor
0029         FrameDemoWidget( void );
0030 
0031         //! destructor
0032         virtual ~FrameDemoWidget( void );
0033 
0034         protected:
0035 
0036         //! orientation changed
0037         static void orientationChanged( GtkComboBox*, gpointer );
0038 
0039         //! shadow style changed
0040         static void shadowChanged( GtkToggleButton*, gpointer );
0041 
0042         private:
0043 
0044         //! frames box
0045         GtkWidget* _box;
0046 
0047         //! frame
0048         GtkWidget* _frame;
0049 
0050         //! map widget to frame shadow style
0051         typedef std::map<GtkWidget*, GtkShadowType> WidgetMap;
0052         WidgetMap _widgets;
0053 
0054     };
0055 
0056 }
0057 
0058 #endif