~s-cecilio/lenmus/v5.3

« back to all changes in this revision

Viewing changes to include/lenmus_art_provider.h

  • Committer: cecilios
  • Date: 2011-06-12 17:25:18 UTC
  • Revision ID: svn-v4:2587a929-2f0e-0410-ae78-fe6f687d5efe:branches/TRY-5.0:687
Initial update for v5.0 first working core using lomse

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//---------------------------------------------------------------------------------------
 
2
//    LenMus Phonascus: The teacher of music
 
3
//    Copyright (c) 2002-2011 LenMus project
 
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 __LENMUS_ART_PROVIDER_H__        //to avoid nested includes
 
22
#define __LENMUS_ART_PROVIDER_H__
 
23
 
 
24
#include <wx/wxprec.h>
 
25
#include <wx/artprov.h>
 
26
 
 
27
#include "lenmus_injectors.h"
 
28
 
 
29
 
 
30
namespace lenmus
 
31
{
 
32
 
 
33
//forward declarations
 
34
 
 
35
//---------------------------------------------------------------------------------------
 
36
// resources are identified by an wxArtId. This is just a string. To assign LenMus
 
37
// identifiers and not to collide with wxWidgets identifiers, mine will be
 
38
// just a number prefixed with characters "lm"
 
39
enum {                // ids for bitmaps, icons, etc.
 
40
    Tool_new = 0,
 
41
    Tool_open,
 
42
    Tool_save,
 
43
    Tool_copy,
 
44
    Tool_cut,
 
45
    Tool_paste,
 
46
    Tool_print,
 
47
    Tool_help,
 
48
    Tool_open_book,
 
49
    Tool_metronome,
 
50
    Tool_Max    //It must be the last one and it is used to compute size
 
51
};
 
52
 
 
53
 
 
54
//---------------------------------------------------------------------------------------
 
55
class ArtProvider : public wxArtProvider
 
56
{
 
57
protected:
 
58
    ApplicationScope& m_appScope;
 
59
 
 
60
public:
 
61
    ArtProvider(ApplicationScope& appScope);
 
62
 
 
63
protected:
 
64
    virtual wxBitmap CreateBitmap(const wxArtID& id, const wxArtClient& client,
 
65
                                  const wxSize& size);
 
66
};
 
67
 
 
68
 
 
69
#endif    // __LENMUS_ART_PROVIDER_H__
 
70
 
 
71
 
 
72
}   //namespace lenmus