MuseScore  3.4
Music composition and notation
Classes | Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Ms::MscxModeDiff Class Reference

Classes

struct  Tag
 

Public Member Functions

 MscxModeDiff ()
 
std::vector< TextDifflineModeDiff (const QString &s1, const QString &s2)
 
std::vector< TextDiffmscxModeDiff (const QString &s1, const QString &s2)
 

Private Types

enum  TagType { START_TAG, END_TAG }
 

Private Member Functions

void adjustSemanticsMscx (std::vector< TextDiff > &)
 
int adjustSemanticsMscxOneDiff (std::vector< TextDiff > &diffs, int index)
 
int nextDiffOnShiftIndex (const std::vector< TextDiff > &diffs, int index, bool down)
 
bool assessShiftDiff (const std::vector< TextDiff > &, const std::vector< Tag > &extraTags, int index, int lines)
 
int performShiftDiff (std::vector< TextDiff > &, int index, int lines)
 
void readMscx (const QString &xml, std::vector< Tag > &extraTags)
 
void handleTag (int line, TagType type, const QString &name, std::vector< Tag > &extraTags)
 

Static Private Member Functions

static DiffType fromDtlDiffType (dtl::edit_t dtlType)
 
static QString getOuterLines (const QString &str, int lines, bool start)
 

Private Attributes

const QRegularExpression tagRegExp
 

Static Private Attributes

static constexpr const char * tagRegExpStr = "</?(?<name>[A-z_][A-z_0-9\\-.:]*)( [A-z_0-9\\-.:\\s=\"]*)?/?>"
 

Member Enumeration Documentation

◆ TagType

Enumerator
START_TAG 
END_TAG 

Constructor & Destructor Documentation

◆ MscxModeDiff()

Ms::MscxModeDiff::MscxModeDiff ( )

Member Function Documentation

◆ adjustSemanticsMscx()

void Ms::MscxModeDiff::adjustSemanticsMscx ( std::vector< TextDiff > &  diffs)
private

◆ adjustSemanticsMscxOneDiff()

int Ms::MscxModeDiff::adjustSemanticsMscxOneDiff ( std::vector< TextDiff > &  diffs,
int  index 
)
private

◆ assessShiftDiff()

bool Ms::MscxModeDiff::assessShiftDiff ( const std::vector< TextDiff > &  diffs,
const std::vector< Tag > &  extraTags,
int  index,
int  lines 
)
private

◆ fromDtlDiffType()

DiffType Ms::MscxModeDiff::fromDtlDiffType ( dtl::edit_t  dtlType)
staticprivate

◆ getOuterLines()

QString Ms::MscxModeDiff::getOuterLines ( const QString &  str,
int  lines,
bool  start 
)
staticprivate

◆ handleTag()

void Ms::MscxModeDiff::handleTag ( int  line,
TagType  type,
const QString &  name,
std::vector< Tag > &  extraTags 
)
private

◆ lineModeDiff()

std::vector< TextDiff > Ms::MscxModeDiff::lineModeDiff ( const QString &  s1,
const QString &  s2 
)

◆ mscxModeDiff()

std::vector< TextDiff > Ms::MscxModeDiff::mscxModeDiff ( const QString &  s1,
const QString &  s2 
)

◆ nextDiffOnShiftIndex()

int Ms::MscxModeDiff::nextDiffOnShiftIndex ( const std::vector< TextDiff > &  diffs,
int  index,
bool  down 
)
private

◆ performShiftDiff()

int Ms::MscxModeDiff::performShiftDiff ( std::vector< TextDiff > &  diffs,
int  index,
int  lines 
)
private

◆ readMscx()

void Ms::MscxModeDiff::readMscx ( const QString &  xml,
std::vector< Tag > &  extraTags 
)
private

Member Data Documentation

◆ tagRegExp

const QRegularExpression Ms::MscxModeDiff::tagRegExp
private

◆ tagRegExpStr

constexpr const char* Ms::MscxModeDiff::tagRegExpStr = "</?(?<name>[A-z_][A-z_0-9\\-.:]*)( [A-z_0-9\\-.:\\s=\"]*)?/?>"
staticprivate

The documentation for this class was generated from the following file: