MuseScore/mscore/editstringdata.h
Maurizio M. Gavioli 99c8dc0de8 Open strings in StringData.
Allows to mark strings as open (non-fretted).
Defaults to fretted, keeping backward-compatibility with existing scores.
Adds an attribute `open="1"` in score (and instruments.xml) string data (defaults to "0").

Benefits:
- allows future support (also in TAB's) for string instruments with non-fretted strings (mainly but, I think, not only the lute family)
- gives correct fretting for non-fretted strings
- instrument range can more easily and automatically linked to actual string tuning
- as this will be eventually needed for better TAB support, the score reading/writing will be already able to manage it.
2014-08-15 02:15:24 +02:00

57 lines
1.8 KiB
C++

//=============================================================================
// MusE Score
// Linux Music Score Editor
//
// Copyright (C) 2002-2009 Werner Schweer and others
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//=============================================================================
#ifndef EDITSTRINGDATA_H
#define EDITSTRINGDATA_H
#include "ui_editstringdata.h"
#include "libmscore/stringdata.h"
namespace Ms {
//---------------------------------------------------------
// EditStringData
//---------------------------------------------------------
class EditStringData : public QDialog, private Ui::EditStringDataBase {
Q_OBJECT
int* _frets;
bool _modified;
QList<instrString>* _strings; // pointer to original string list
QList<instrString> _stringsLoc; // local working copy of string list
public:
EditStringData(QWidget *parent, QList<instrString> * strings, int * frets);
~EditStringData();
protected:
QString midiCodeToStr(int midiCode);
private slots:
void accept();
void deleteStringClicked();
void editStringClicked();
void listItemClicked(QTableWidgetItem * item);
void newStringClicked();
};
}
#endif // EDITSTRINGDATA_H