Logo Search packages:      
Sourcecode: codeblocks version File versions  Download package

configurationpanel.h

/*
 * This file is part of the Code::Blocks IDE and licensed under the GNU Lesser General Public License, version 3
 * http://www.gnu.org/licenses/lgpl-3.0.html
 */

#ifndef CONFIGURATIONPANEL_H
#define CONFIGURATIONPANEL_H

#include "settings.h"
#include <wx/dialog.h>
#include <wx/panel.h>
#include <wx/string.h>

class wxButton;
class wxWindow;

/** @brief Base class for plugin configuration panels. */
00018 class DLLIMPORT cbConfigurationPanel : public wxPanel
{
    public:
        cbConfigurationPanel(){}
        virtual ~cbConfigurationPanel(){}

        /// @return the panel's title.
        virtual wxString GetTitle() const = 0;
        /// @return the panel's bitmap base name. You must supply two bitmaps: <basename>.png and <basename>-off.png...
        virtual wxString GetBitmapBaseName() const = 0;
        /// Called when the user chooses to apply the configuration.
        virtual void OnApply() = 0;
        /// Called when the user chooses to cancel the configuration.
        virtual void OnCancel() = 0;
};

/// @brief A simple dialog that wraps a cbConfigurationPanel.
00035 class DLLIMPORT cbConfigurationDialog : public wxDialog
{
      public:
            cbConfigurationDialog(wxWindow* parent, int id, const wxString& title);
            void AttachConfigurationPanel(cbConfigurationPanel* panel);
            ~cbConfigurationDialog();

            void EndModal(int retCode);
      protected:
        cbConfigurationPanel* m_pPanel;
        wxButton* m_pOK;
        wxButton* m_pCancel;
      private:

};

#endif // CONFIGURATIONPANEL_H

Generated by  Doxygen 1.6.0   Back to index