~s-cecilio/lenmus/v5.3

« back to all changes in this revision

Viewing changes to src/widgets/MusicSymbolList.h

  • Committer: cecilios
  • Date: 2012-09-07 17:42:21 UTC
  • Revision ID: svn-v4:2587a929-2f0e-0410-ae78-fe6f687d5efe:branches/TRY-5.0:721
initial commit with all changes for 5.1. See changelog

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//--------------------------------------------------------------------------------------
 
2
//    LenMus Phonascus: The teacher of music
 
3
//    Copyright (c) 2002-2008 Cecilio Salmeron
 
4
//
 
5
//    This program is free software; you can redistribute it and/or modify it under the
 
6
//    terms of the GNU General Public License as published by the Free Software Foundation,
 
7
//    either version 3 of the License, or (at your option) any later version.
 
8
//
 
9
//    This program is distributed in the hope that it will be useful, but WITHOUT ANY
 
10
//    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 
11
//    PARTICULAR PURPOSE.  See the GNU General Public License for more details.
 
12
//
 
13
//    You should have received a copy of the GNU General Public License along with this
 
14
//    program. If not, see <http://www.gnu.org/licenses/>.
 
15
//
 
16
//    For any comment, suggestion or feature request, please contact the manager of
 
17
//    the project at cecilios@users.sourceforge.net
 
18
//
 
19
//-------------------------------------------------------------------------------------
 
20
 
 
21
#ifndef __LM_MUSUCSYMBOLCBO_H__        //to avoid nested includes
 
22
#define __LM_MUSUCSYMBOLCBO_H__
 
23
 
 
24
#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 
25
#pragma interface "MusicSymbolCbo.cpp"
 
26
#endif
 
27
 
 
28
// For compilers that support precompilation, includes "wx/wx.h".
 
29
#include "wx/wxprec.h"
 
30
 
 
31
#ifdef __BORLANDC__
 
32
#pragma hdrstop
 
33
#endif
 
34
 
 
35
#ifndef WX_PRECOMP
 
36
#include "wx/wx.h"
 
37
 
 
38
#else
 
39
#include <wx/bmpcbox.h>
 
40
 
 
41
#endif
 
42
 
 
43
 
 
44
class lmMusicSymbolCboBase : public wxBitmapComboBox
 
45
{
 
46
public:
 
47
    // ctors and such
 
48
    wxBitmapComboBoxBase() { }
 
49
 
 
50
    virtual ~wxBitmapComboBoxBase() { }
 
51
 
 
52
    // Returns the image of the item with the given index.
 
53
    virtual wxBitmap GetItemBitmap(unsigned int n) const = 0;
 
54
 
 
55
    // Sets the image for the given item.
 
56
    virtual void SetItemBitmap(unsigned int n, const wxBitmap& bitmap) = 0;
 
57
 
 
58
    // Returns size of the image used in list
 
59
    virtual wxSize GetBitmapSize() const = 0;
 
60
 
 
61
protected:
 
62
    lmMusicSymbolCboBase(const wxString& sMessage, const wxString& sTitle);
 
63
    void CreateControls();
 
64
    void AddButton(const wxString& sLabel, const wxString& sDescr);
 
65
 
 
66
        wxStaticBitmap*     m_pBitmap;
 
67
        wxStaticText*       m_pMessage;
 
68
        const wxString&     m_sMessage;
 
69
        wxBoxSizer*         m_pButtonsSizer;
 
70
    int                 m_nNumButtons;
 
71
 
 
72
    DECLARE_EVENT_TABLE()
 
73
};
 
74
 
 
75
class lmErrorBox : public lmMusicSymbolCboBase
 
76
{
 
77
public:
 
78
    lmErrorBox(const wxString& sMessage, const wxString& sButtonText);
 
79
    ~lmErrorBox() {}
 
80
 
 
81
protected:
 
82
 
 
83
};
 
84
 
 
85
//class lmInfoBox : public lmMusicSymbolCboBase
 
86
//{
 
87
//public:
 
88
//    lmInfoBox();
 
89
//    ~lmInfoBox();
 
90
//
 
91
//protected:
 
92
//
 
93
//};
 
94
//
 
95
//class lmYesNoBox : public lmMusicSymbolCboBase
 
96
//{
 
97
//public:
 
98
//    lmYesNoBox();
 
99
//    ~lmYesNoBox();
 
100
//
 
101
//protected:
 
102
//
 
103
//};
 
104
 
 
105
class lmQuestionBox : public lmMusicSymbolCboBase
 
106
{
 
107
public:
 
108
    lmQuestionBox(const wxString& sMessage, int nNumButtons, ...);
 
109
    ~lmQuestionBox() {}
 
110
 
 
111
protected:
 
112
 
 
113
};
 
114
 
 
115
 
 
116
 
 
117
#endif    // __LM_MUSUCSYMBOLCBO_H__