This list is closed, nobody may subscribe to it.
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
(34) |
Sep
(63) |
Oct
(3) |
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
(3) |
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(8) |
2015 |
Jan
|
Feb
|
Mar
|
Apr
(36) |
May
|
Jun
|
Jul
|
Aug
(12) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
(38) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(12) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(2) |
Jun
(48) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2019 |
Jan
(7) |
Feb
|
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <su...@us...> - 2012-08-26 14:45:50
|
Revision: 1272 http://canorus.svn.sourceforge.net/canorus/?rev=1272&view=rev Author: suamor Date: 2012-08-26 14:45:44 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: - unused variable commented - Bug ? exportVoiceImpl missing several cases of music elements - && / || warning logic solved with additional braces - Bug ? Undefined marks not handled in exportMarks Modified Paths: -------------- trunk/src/export/canorusmlexport.cpp Modified: trunk/src/export/canorusmlexport.cpp =================================================================== --- trunk/src/export/canorusmlexport.cpp 2012-08-26 14:42:42 UTC (rev 1271) +++ trunk/src/export/canorusmlexport.cpp 2012-08-26 14:45:44 UTC (rev 1272) @@ -61,7 +61,7 @@ It uses DOM object internally for writing the XML output. */ void CACanorusMLExport::exportDocumentImpl( CADocument *doc ) { - int depth = 0; + //int depth = 0; out().setCodec("UTF-8"); @@ -321,6 +321,15 @@ break; } + case CAMusElement::MidiNote: + case CAMusElement::Slur: + case CAMusElement::Tuplet: + case CAMusElement::Syllable: + case CAMusElement::FunctionMark: + case CAMusElement::FiguredBassMark: + case CAMusElement::Mark: + case CAMusElement::Undefined: + break; } exportTime( curElt, dElt ); @@ -355,7 +364,7 @@ for (int i=0; i<elt->markList().size(); i++) { CAMark *mark = elt->markList()[i]; if ( !mark->isCommon() || elt->musElementType()!=CAMusElement::Note || - elt->musElementType()==CAMusElement::Note && static_cast<CANote*>(elt)->isFirstInChord() ) { + ( elt->musElementType()==CAMusElement::Note && static_cast<CANote*>(elt)->isFirstInChord() ) ) { QDomElement dMark = domElt.ownerDocument().createElement("mark"); domElt.appendChild(dMark); dMark.setAttribute("time-start", mark->timeStart()); dMark.setAttribute("time-length", mark->timeLength()); @@ -434,6 +443,8 @@ dMark.setAttribute(QString("finger%1").arg(i), CAFingering::fingerNumberToString(f->fingerList()[i])); break; } + case CAMark::Undefined: + break; } exportColor( mark, dMark ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:42:48
|
Revision: 1271 http://canorus.svn.sourceforge.net/canorus/?rev=1271&view=rev Author: suamor Date: 2012-08-26 14:42:42 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Start of a small Lyx documentation Added Paths: ----------- trunk/doc/HOWTO_Lyx.txt Added: trunk/doc/HOWTO_Lyx.txt =================================================================== --- trunk/doc/HOWTO_Lyx.txt (rev 0) +++ trunk/doc/HOWTO_Lyx.txt 2012-08-26 14:42:42 UTC (rev 1271) @@ -0,0 +1,14 @@ + +Hints for using lyx for Canorus documentation +============================================= + +Canorus Style ? (LaTeX, Logo etc.) for every doc for identification +License ? (Common License type similar to GPL) + +Main document: +- Contains all documents (including plugin docs etc.) +- Using "include" way to integrate sub documents +- New page for every sub document automatically created +- includeonly line can be created by cmake if some plugins + or parts of canorus are not built. + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:31:54
|
Revision: 1270 http://canorus.svn.sourceforge.net/canorus/?rev=1270&view=rev Author: suamor Date: 2012-08-26 14:31:43 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Add new indexer preferences (recent eclipse) Modified Paths: -------------- trunk/.settings/org.eclipse.cdt.core.prefs Modified: trunk/.settings/org.eclipse.cdt.core.prefs =================================================================== --- trunk/.settings/org.eclipse.cdt.core.prefs 2012-08-26 14:31:02 UTC (rev 1269) +++ trunk/.settings/org.eclipse.cdt.core.prefs 2012-08-26 14:31:43 UTC (rev 1270) @@ -1,3 +1,15 @@ -#Mon Jul 17 17:43:54 CEST 2006 +#Sat Dec 03 18:21:06 CET 2011 eclipse.preferences.version=1 +indexer/filesToParseUpFront= +indexer/indexAllFiles=false +indexer/indexOnOpen=false +indexer/indexUnusedHeadersWithAlternateLang=false +indexer/indexUnusedHeadersWithDefaultLang=false +indexer/indexerId=org.eclipse.cdt.core.fastIndexer +indexer/skipFilesLargerThanMB=8 +indexer/skipImplicitReferences=false +indexer/skipMacroReferences=false +indexer/skipReferences=false +indexer/skipTypeReferences=false +indexer/useHeuristicIncludeResolution=true indexerId=org.eclipse.cdt.core.fastIndexer This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:31:08
|
Revision: 1269 http://canorus.svn.sourceforge.net/canorus/?rev=1269&view=rev Author: suamor Date: 2012-08-26 14:31:02 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Add Codan preferences (new with more recent eclipse) Added Paths: ----------- trunk/.settings/org.eclipse.cdt.codan.core.prefs Added: trunk/.settings/org.eclipse.cdt.codan.core.prefs =================================================================== --- trunk/.settings/org.eclipse.cdt.codan.core.prefs (rev 0) +++ trunk/.settings/org.eclipse.cdt.codan.core.prefs 2012-08-26 14:31:02 UTC (rev 1269) @@ -0,0 +1,66 @@ +#Sat Dec 03 18:21:06 CET 2011 +eclipse.preferences.version=1 +org.eclipse.cdt.codan.checkers.errnoreturn=-Warning +org.eclipse.cdt.codan.checkers.errnoreturn.params={implicit\=>false} +org.eclipse.cdt.codan.checkers.errreturnvalue=-Error +org.eclipse.cdt.codan.checkers.errreturnvalue.params={} +org.eclipse.cdt.codan.checkers.noreturn=-Error +org.eclipse.cdt.codan.checkers.noreturn.params={implicit\=>false} +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=-Error +org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=-Error +org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={} +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=-Error +org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={} +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={no_break_comment\=>"no break",last_case_param\=>true,empty_case_param\=>false} +org.eclipse.cdt.codan.internal.checkers.CatchByReference=-Warning +org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={unknown\=>false,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=-Error +org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.InvalidArguments=-Error +org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=-Error +org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=-Error +org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=-Error +org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info +org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={pattern\=>"^[a-z]",macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={} +org.eclipse.cdt.codan.internal.checkers.OverloadProblem=-Error +org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=-Error +org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={} +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={} +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={macro\=>true,exceptions\=>()} +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={paramNot\=>false} +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={else\=>false,afterelse\=>false} +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={macro\=>true} +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=-Warning +org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={macro\=>true,exceptions\=>("@(\#)","$Id")} +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=-Error +org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:28:17
|
Revision: 1268 http://canorus.svn.sourceforge.net/canorus/?rev=1268&view=rev Author: suamor Date: 2012-08-26 14:28:11 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Duma integration - commented for now Modified Paths: -------------- trunk/src/main.cpp Modified: trunk/src/main.cpp =================================================================== --- trunk/src/main.cpp 2012-08-26 14:26:59 UTC (rev 1267) +++ trunk/src/main.cpp 2012-08-26 14:28:11 UTC (rev 1268) @@ -21,6 +21,10 @@ #ifdef Q_WS_X11 #include <signal.h> + +//Duma leads to a crash on libfontconfig with Ubuntu (10.04/12.04) +//#include "duma.h" + void catch_sig(int) { qApp->quit(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:27:09
|
Revision: 1267 http://canorus.svn.sourceforge.net/canorus/?rev=1267&view=rev Author: suamor Date: 2012-08-26 14:26:59 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: - Bug: LyricsContext, FiguredBassContext not handled (marked ToDo) - && / || warning logic solved with additional braces - Bug: Some music elements not handled (those marked as ToDo) Modified Paths: -------------- trunk/src/core/transpose.cpp Modified: trunk/src/core/transpose.cpp =================================================================== --- trunk/src/core/transpose.cpp 2012-08-26 14:25:52 UTC (rev 1266) +++ trunk/src/core/transpose.cpp 2012-08-26 14:26:59 UTC (rev 1267) @@ -79,6 +79,9 @@ } break; } + case CAContext::LyricsContext: // ToDo + case CAContext::FiguredBassContext: // ToDo + break; } } @@ -96,8 +99,8 @@ */ void CATranspose::transposeByKeySig( CADiatonicKey from, CADiatonicKey to, int direction ) { CAInterval interval( from.diatonicPitch(), to.diatonicPitch() ); - if ( (direction<0) && (to.diatonicPitch().noteName()-from.diatonicPitch().noteName()>0) || - (direction>0) && (to.diatonicPitch().noteName()-from.diatonicPitch().noteName()<0) ) { + if ( ( (direction<0) && (to.diatonicPitch().noteName()-from.diatonicPitch().noteName()>0) ) || + ( (direction>0) && (to.diatonicPitch().noteName()-from.diatonicPitch().noteName()<0) ) ) { interval = ~interval; } @@ -126,6 +129,18 @@ case CAMusElement::FunctionMark: static_cast<CAFunctionMark*>(elt)->setKey( static_cast<CAFunctionMark*>(elt)->key() + interval ); break; + case CAMusElement::MidiNote: // ToDo + case CAMusElement::Clef: // ToDo + case CAMusElement::FiguredBassMark: // ToDo + case CAMusElement::Rest: + case CAMusElement::Barline: + case CAMusElement::TimeSignature: + case CAMusElement::Slur: + case CAMusElement::Tuplet: + case CAMusElement::Syllable: + case CAMusElement::Mark: + case CAMusElement::Undefined: + break; } } } @@ -166,6 +181,19 @@ keySig->setDiatonicKey( newDiatonicKey ); break; } + case CAMusElement::MidiNote: + case CAMusElement::Clef: + case CAMusElement::FunctionMark: + case CAMusElement::FiguredBassMark: + case CAMusElement::Rest: + case CAMusElement::Barline: + case CAMusElement::TimeSignature: + case CAMusElement::Slur: + case CAMusElement::Tuplet: + case CAMusElement::Syllable: + case CAMusElement::Mark: + case CAMusElement::Undefined: + break; } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:26:02
|
Revision: 1266 http://canorus.svn.sourceforge.net/canorus/?rev=1266&view=rev Author: suamor Date: 2012-08-26 14:25:52 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Signed/unsigned comparison (resolved unsigned) - No assignment in if! Possible bug! tar.read/dest.write only done when pad > 0 ? - Unused variables commented - Signed/unsigned comparison (resolved signed) - Bug: Comparison "< 0" against unsigned variable. Temporary fix was to cast this variable to signed. - Enlarging buffer size for stack protection - Commented some unused variables (including possible assignments) Modified Paths: -------------- trunk/src/core/tar.cpp Modified: trunk/src/core/tar.cpp =================================================================== --- trunk/src/core/tar.cpp 2012-08-26 14:22:57 UTC (rev 1265) +++ trunk/src/core/tar.cpp 2012-08-26 14:25:52 UTC (rev 1266) @@ -23,8 +23,8 @@ This class can create and read tar archives, which allow concatenation of multiple files (with directory structure) into a single file. The archive must be opened using \a open() before writing, and closed with close() when writing is done. Don't forget to close() the archive when you're done! + For more info on the Tar format see <http://en.wikipedia.org/wiki/Tar_(file_format)>. - For more info on the Tar format see <http://en.wikipedia.org/wiki/Tar_(file_format)>. */ const int CATar::CHUNK = 16384; @@ -134,11 +134,12 @@ tempfile = new QTemporaryFile; tempfile->open(); file->data = tempfile; - for(int i=0; i < file->hdr.size / CHUNK; i++) + for(unsigned int i=0; i < file->hdr.size / CHUNK; i++) file->data->write(tar.read(CHUNK)); file->data->write(tar.read(file->hdr.size % CHUNK)); file->data->flush(); - if(pad = file->hdr.size%512) + pad = file->hdr.size%512; + if(pad>0) tar.read(512-pad); _files << file; } @@ -323,10 +324,10 @@ */ qint64 CATar::write(QIODevice& dest, qint64 chunk) { - bool close = false; + //bool close = false; int ret, pad; qint64 total = 0; // Bytes written. - qint64 first_pos; + //qint64 first_pos; if(chunk < 512) return -1; @@ -338,7 +339,7 @@ return -2; // dest was not open()'d. CATarBufInfo& pos = _pos[&dest]; - first_pos = pos.pos; + //first_pos = pos.pos; if(!dest.isOpen()) { if(!dest.open( QIODevice::WriteOnly )) @@ -373,7 +374,8 @@ if(chunk == 0) break; - if(pad = f->data->size()%512) { + pad = f->data->size()%512; + if(pad>0) { ret = dest.write(QByteArray(qMin(chunk,qint64(512-pad)), (char)0)); // Fill up the 512-block with nulls. pos.pos += ret; total += ret; @@ -402,7 +404,7 @@ */ bool CATar::eof(QIODevice& dest) { - qint64 bufsize = _files.last()->data->size(); + //qint64 bufsize = _files.last()->data->size(); if(!_pos.contains(&dest)) return false; CATarBufInfo& pos = _pos[&dest]; @@ -424,8 +426,8 @@ { if(bufsize == -1) bufsize = len; - if(len<0) return dest; - while(bufsize-- > len) + if((int)len<0) return dest; + while(bufsize-- > (int)len) dest[bufsize] = 0; while(len--) dest[len] = src[len]; @@ -448,7 +450,7 @@ if(num >= pow(8, width)) return 0; // Crash somewhere else. if(num < pow(8,(width-1))) // null fits { - char len[5]; + char len[10]; sprintf(len, "%%0%do", width-1); snprintf(buf, width, len, num); // adds null } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:23:03
|
Revision: 1265 http://canorus.svn.sourceforge.net/canorus/?rev=1265&view=rev Author: suamor Date: 2012-08-26 14:22:57 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Several music element types were not handled Try to make && and || logic definite (compiler) Return false in configureTuplet method (not implemented) Modified Paths: -------------- trunk/src/core/muselementfactory.cpp Modified: trunk/src/core/muselementfactory.cpp =================================================================== --- trunk/src/core/muselementfactory.cpp 2012-08-26 14:16:06 UTC (rev 1264) +++ trunk/src/core/muselementfactory.cpp 2012-08-26 14:22:57 UTC (rev 1265) @@ -135,7 +135,7 @@ case CAPlayableLength::Sixteenth: if (_playableLength.dotted() > 2) _playableLength.setDotted(0); break; case CAPlayableLength::ThirtySecond: if (_playableLength.dotted() > 1) _playableLength.setDotted(0); break; case CAPlayableLength::SixtyFourth: if (_playableLength.dotted() > 0) _playableLength.setDotted(0); break; - default: ; + default: break; ; } }; @@ -422,7 +422,11 @@ } break; } + case CAMark::Undefined: { + fprintf(stderr,"Warning: CAMusElementFactory::configureMark - Undefined Mark"); + break; } + } if (success) { elt->addMark( static_cast<CAMark*>(mpoMusElement) ); @@ -460,7 +464,7 @@ Configures a new figured bass mark with \a timeStart and \a timeLength in context \a fbc. */ bool CAMusElementFactory::configureFiguredBassNumber( CAFiguredBassMark *fbm ) { - if ( _fbmNumber==0 && (!_fbmAccsVisible) || (!fbm) ) { + if ( (_fbmNumber==0 && (!_fbmAccsVisible)) || (!fbm) ) { return false; } @@ -498,7 +502,7 @@ Configures a new tuplet containing the given \a noteList. */ bool CAMusElementFactory::configureTuplet( QList<CAPlayable*> noteList ) { - + return false; } /*! This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:16:12
|
Revision: 1264 http://canorus.svn.sourceforge.net/canorus/?rev=1264&view=rev Author: suamor Date: 2012-08-26 14:16:06 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Changed initialization sequence Modified Paths: -------------- trunk/src/core/midirecorder.cpp Modified: trunk/src/core/midirecorder.cpp =================================================================== --- trunk/src/core/midirecorder.cpp 2012-08-26 14:14:48 UTC (rev 1263) +++ trunk/src/core/midirecorder.cpp 2012-08-26 14:16:06 UTC (rev 1264) @@ -25,7 +25,7 @@ close the stream. */ CAMidiRecorder::CAMidiRecorder( CAResource *r, CAMidiDevice *d ) - : QObject(), _resource(r), _curTime(0), _midiExport(0) { + : QObject(), _resource(r), _midiExport(0), _curTime(0) { _paused = false; connect( d, SIGNAL(midiInEvent( QVector<unsigned char> )), this, SLOT(onMidiInEvent( QVector<unsigned char> )) ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:14:55
|
Revision: 1263 http://canorus.svn.sourceforge.net/canorus/?rev=1263&view=rev Author: suamor Date: 2012-08-26 14:14:48 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Fixed bug that waitForFinished did not return a value Modified Paths: -------------- trunk/src/control/typesetctl.cpp Modified: trunk/src/control/typesetctl.cpp =================================================================== --- trunk/src/control/typesetctl.cpp 2012-08-26 14:13:53 UTC (rev 1262) +++ trunk/src/control/typesetctl.cpp 2012-08-26 14:14:48 UTC (rev 1263) @@ -272,7 +272,7 @@ */ bool CATypesetCtl::waitForFinished ( int iMSecs ) { - _poTypesetter->waitForFinished( iMSecs ); + return _poTypesetter->waitForFinished( iMSecs ); } /*! This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:13:59
|
Revision: 1262 http://canorus.svn.sourceforge.net/canorus/?rev=1262&view=rev Author: suamor Date: 2012-08-26 14:13:53 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Fixed several output format bugs (error cases) in programExited Modified Paths: -------------- trunk/src/control/externprogram.cpp Modified: trunk/src/control/externprogram.cpp =================================================================== --- trunk/src/control/externprogram.cpp 2012-08-26 14:12:44 UTC (rev 1261) +++ trunk/src/control/externprogram.cpp 2012-08-26 14:13:53 UTC (rev 1262) @@ -217,19 +217,19 @@ { if( getRunning() ) { - qCritical("ExternProgram: program %s reported error %s!", - QString( "%1 " + _poExternProgram->errorString() ).arg( _poExternProgram->error() ).toAscii().constData() ); + qCritical("%s", + QString( "ExternProgram: program %1 reported error %2!" + _poExternProgram->errorString() ).arg( _poExternProgram->error() ).toAscii().constData() ); return; } // Check if the program exited normally else put out error message if( _poExternProgram->exitStatus() != QProcess::NormalExit ) { - qCritical("ExternProgram: program %s didn't finish correctly! Exit code %d", _oProgramName.toAscii().constData(), + qCritical("ExternProgram: program %s didn't finish correctly! Exit code %s", _oProgramName.toAscii().constData(), QString( _poExternProgram->exitCode() + " " + _poExternProgram->errorString() ).toAscii().constData() ); emit programExited( _poExternProgram->exitCode() ); } if( _poExternProgram->error() == QProcess::FailedToStart ) { - qCritical("ExternProgram: program %s didn't start correctly! Error code %d", _oProgramName.toAscii().constData(), + qCritical("ExternProgram: program %s didn't start correctly! Error code %s", _oProgramName.toAscii().constData(), QString( _poExternProgram->error() + " " + _poExternProgram->errorString() ).toAscii().constData() ); emit programExited( -1 ); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:12:50
|
Revision: 1261 http://canorus.svn.sourceforge.net/canorus/?rev=1261&view=rev Author: suamor Date: 2012-08-26 14:12:44 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Large Warn Fixes: Fixed bug that waitForFinished did not return a value Modified Paths: -------------- trunk/src/control/externprogram.h Modified: trunk/src/control/externprogram.h =================================================================== --- trunk/src/control/externprogram.h 2012-08-26 14:10:58 UTC (rev 1260) +++ trunk/src/control/externprogram.h 2012-08-26 14:12:44 UTC (rev 1261) @@ -44,7 +44,7 @@ void addParameter( const QString &roParam, bool bAddDelimiter = true ); inline void clearParameters() { _oParameters.clear(); } bool execProgram( const QString &roCwd = "." ); - inline bool waitForFinished ( int iMSecs ) { _poExternProgram->waitForFinished( iMSecs ); } + inline bool waitForFinished ( int iMSecs ) { return _poExternProgram->waitForFinished( iMSecs ); } signals: void nextOutput( const QByteArray &roData ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <su...@us...> - 2012-08-26 14:11:08
|
Revision: 1260 http://canorus.svn.sourceforge.net/canorus/?rev=1260&view=rev Author: suamor Date: 2012-08-26 14:10:58 +0000 (Sun, 26 Aug 2012) Log Message: ----------- Duma integration - commented for now Modified Paths: -------------- trunk/src/canorus.h Modified: trunk/src/canorus.h =================================================================== --- trunk/src/canorus.h 2012-08-13 21:34:07 UTC (rev 1259) +++ trunk/src/canorus.h 2012-08-26 14:10:58 UTC (rev 1260) @@ -18,6 +18,9 @@ #include <QUndoStack> #include <QHash> +//Duma leads to a crash on libfontconfig with Ubuntu (10.04/12.04) +//#include "duma.h" + class CASettings; class CAMidiDevice; class CADocument; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-08-13 21:34:14
|
Revision: 1259 http://canorus.svn.sourceforge.net/canorus/?rev=1259&view=rev Author: matevz Date: 2012-08-13 21:34:07 +0000 (Mon, 13 Aug 2012) Log Message: ----------- Fixed bug #3557031 - Undo command doesn't correctly update the cloned sheet. Modified Paths: -------------- trunk/src/export/lilypondexport.cpp trunk/src/score/document.cpp Modified: trunk/src/export/lilypondexport.cpp =================================================================== --- trunk/src/export/lilypondexport.cpp 2012-05-11 21:15:52 UTC (rev 1258) +++ trunk/src/export/lilypondexport.cpp 2012-08-13 21:34:07 UTC (rev 1259) @@ -703,8 +703,7 @@ setCurSheet( sheet ); // we need to check if the document is not set, for example at exporting the first sheet - if (!curDocument()) { - + if (sheet->document()) { setCurDocument( sheet->document() ); } @@ -742,7 +741,6 @@ void CALilyPondExport::writeDocumentHeader() { out() << "\n\\header {\n"; indentMore(); - indent(); out() << "title = " << markupString( curDocument()->title() ) << "\n"; indent(); out() << "subtitle = " << markupString( curDocument()->subtitle() ) << "\n"; indent(); out() << "composer = " << markupString( curDocument()->composer() ) << "\n"; Modified: trunk/src/score/document.cpp =================================================================== --- trunk/src/score/document.cpp 2012-05-11 21:15:52 UTC (rev 1258) +++ trunk/src/score/document.cpp 2012-08-13 21:34:07 UTC (rev 1259) @@ -56,8 +56,11 @@ newDocument->setComments( comments() ); newDocument->setFileName( fileName() ); - for (int i=0; i<sheetList().size(); i++) - newDocument->addSheet( sheetList()[i]->clone() ); + for (int i=0; i<sheetList().size(); i++) { + CASheet *newSheet = sheetList()[i]->clone(); + newSheet->setDocument( newDocument ); + newDocument->addSheet( newSheet ); + } for (int i=0; i<resourceList().size(); i++) { newDocument->addResource( resourceList()[i] ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-05-11 21:15:58
|
Revision: 1258 http://canorus.svn.sourceforge.net/canorus/?rev=1258&view=rev Author: matevz Date: 2012-05-11 21:15:52 +0000 (Fri, 11 May 2012) Log Message: ----------- Added Lilypond export for forced accidentals. Added underscores as spaces in Lilypond export. Modified Paths: -------------- trunk/src/export/lilypondexport.cpp Modified: trunk/src/export/lilypondexport.cpp =================================================================== --- trunk/src/export/lilypondexport.cpp 2012-05-11 21:14:57 UTC (rev 1257) +++ trunk/src/export/lilypondexport.cpp 2012-05-11 21:15:52 UTC (rev 1258) @@ -169,6 +169,9 @@ // write the note name out() << relativePitchToString( note->diatonicPitch(), _lastNotePitch); + if (note->forceAccidentals()) { + out() << "!"; + } if ( !note->isPartOfChord() && _lastPlayableLength != note->playableLength() ) { out() << playableLengthToLilyPond( note->playableLength() ); @@ -655,6 +658,9 @@ // wrap the text with quotes text = (QString("\"")+text+"\""); + // replace underscore with space + text = text.replace("_", " "); + if (s->hyphenStart()) text += " --"; else if (s->melismaStart()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-05-11 21:15:03
|
Revision: 1257 http://canorus.svn.sourceforge.net/canorus/?rev=1257&view=rev Author: matevz Date: 2012-05-11 21:14:57 +0000 (Fri, 11 May 2012) Log Message: ----------- Fixed compilation errors on using Swig2. Modified Paths: -------------- trunk/src/scripting/canoruspython.i Modified: trunk/src/scripting/canoruspython.i =================================================================== --- trunk/src/scripting/canoruspython.i 2012-03-12 22:43:53 UTC (rev 1256) +++ trunk/src/scripting/canoruspython.i 2012-05-11 21:14:57 UTC (rev 1257) @@ -342,31 +342,31 @@ PyObject *CASwigPython::toPythonObject(void *object, CASwigPython::CAClassType type) { switch (type) { case CASwigPython::String: { - return Py_BuildValue("s", ((QString*)object)->toUtf8().data()); + return Py_BuildValue("s", (static_cast<QString*>(object))->toUtf8().data()); break; } case CASwigPython::Document: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CADocument, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CADocument, 0); break; } case CASwigPython::Resource: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAResource, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAResource, 0); break; } case CASwigPython::Sheet: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CASheet, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CASheet, 0); break; } case CASwigPython::Context: { switch (static_cast<CAContext*>(object)->contextType()) { case CAContext::Staff: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAStaff, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAStaff, 0); case CAContext::LyricsContext: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CALyricsContext, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CALyricsContext, 0); case CAContext::FiguredBassContext: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAFiguredBassContext, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAFiguredBassContext, 0); case CAContext::FunctionMarkContext: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAFunctionMarkContext, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAFunctionMarkContext, 0); default: std::cerr << "canoruspython.i: Wrong CAContext::contextType()!" << std::endl; return 0; @@ -374,38 +374,38 @@ break; } case CASwigPython::Voice: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAVoice, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAVoice, 0); break; } case CASwigPython::MusElement: { CAMusElement *elt = static_cast<CAMusElement*>(object); switch (elt->musElementType()) { case CAMusElement::Note: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CANote, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CANote, 0); case CAMusElement::Rest: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CARest, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CARest, 0); case CAMusElement::KeySignature: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAKeySignature, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAKeySignature, 0); case CAMusElement::TimeSignature: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CATimeSignature, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CATimeSignature, 0); case CAMusElement::Clef: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAClef, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAClef, 0); case CAMusElement::Barline: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CABarline, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CABarline, 0); case CAMusElement::FiguredBassMark: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAFiguredBassMark, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAFiguredBassMark, 0); case CAMusElement::FunctionMark: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAFunctionMark, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAFunctionMark, 0); case CAMusElement::Syllable: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CASyllable, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CASyllable, 0); case CAMusElement::Mark: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAMark, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAMark, 0); case CAMusElement::Slur: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CASlur, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CASlur, 0); case CAMusElement::Tuplet: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CATuplet, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CATuplet, 0); case CAMusElement::MidiNote: - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAMidiNote, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAMidiNote, 0); default: std::cerr << "canoruspython.i: Wrong CAMusElement::musElementType()!" << std::endl; return 0; @@ -413,15 +413,15 @@ break; } case CASwigPython::PlayableLength: { - return SWIG_Python_NewPointerObj(new CAPlayableLength(*(static_cast<CAPlayableLength*>(object))), SWIGTYPE_p_CAPlayableLength, 0); + return SWIG_Python_NewPointerObj(0, new CAPlayableLength(*(static_cast<CAPlayableLength*>(object))), SWIGTYPE_p_CAPlayableLength, 0); break; } case CASwigPython::PyConsoleInterface: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAPyConsoleInterface, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAPyConsoleInterface, 0); break; } case CASwigPython::Plugin: { - return SWIG_Python_NewPointerObj(object, SWIGTYPE_p_CAPlugin, 0); + return SWIG_Python_NewPointerObj(0, object, SWIGTYPE_p_CAPlugin, 0); break; } default: { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-03-12 22:43:59
|
Revision: 1256 http://canorus.svn.sourceforge.net/canorus/?rev=1256&view=rev Author: matevz Date: 2012-03-12 22:43:53 +0000 (Mon, 12 Mar 2012) Log Message: ----------- Fixed Lilypond melismatic lyrics when used in combination with hyphens. Set autoBeamOff for printing when lyrics is applied to the voice because beams mean melismatic singing. Modified Paths: -------------- trunk/src/export/lilypondexport.cpp Modified: trunk/src/export/lilypondexport.cpp =================================================================== --- trunk/src/export/lilypondexport.cpp 2012-03-12 22:41:14 UTC (rev 1255) +++ trunk/src/export/lilypondexport.cpp 2012-03-12 22:43:53 UTC (rev 1256) @@ -653,7 +653,7 @@ text = text.replace("\"", "\\\""); // wrap the text with quotes - text = (text.isEmpty()?"_":QString("\"")+text+"\""); + text = (QString("\"")+text+"\""); if (s->hyphenStart()) text += " --"; @@ -880,6 +880,12 @@ curVoiceLilyCommand = "\\voice" + curVoiceLilyCommand; spellNumbers( curVoiceLilyCommand ); } + + // disable autoBeam, if lyrics applied to voice because beams mean melisma singing for singers + if ( s->voiceList()[v]->lyricsContextList().size() ) { + if (!curVoiceLilyCommand.isEmpty()) { curVoiceLilyCommand += " "; } + curVoiceLilyCommand += "\\autoBeamOff"; + } // Print Lily variable name QString voiceName; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2012-03-12 22:41:20
|
Revision: 1255 http://canorus.svn.sourceforge.net/canorus/?rev=1255&view=rev Author: matevz Date: 2012-03-12 22:41:14 +0000 (Mon, 12 Mar 2012) Log Message: ----------- Fixed CMake warning. Fixed deprecated PYTHON_INCLUDE_PATH -> PYTHON_INCLUDE_DIR. Modified Paths: -------------- trunk/src/CMakeLists.txt Added Paths: ----------- trunk/doc/CMakeLists.txt Added: trunk/doc/CMakeLists.txt =================================================================== Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2011-11-02 22:52:57 UTC (rev 1254) +++ trunk/src/CMakeLists.txt 2012-03-12 22:41:14 UTC (rev 1255) @@ -51,7 +51,7 @@ ENDIF(RUBY_INCLUDE_PATH AND NOT NO_RUBY) FIND_PACKAGE(PythonLibs) -IF(PYTHON_INCLUDE_PATH AND NOT NO_PYTHON) +IF(PYTHON_INCLUDE_DIRS AND NOT NO_PYTHON) MESSAGE("Python Library and Development files found. Python extensions enabled.") # PYTHON_LIBRARY points to C:\PythonXY\pythonXY.dll # PYTHON_LIB should point to C:\PythonXY\Lib @@ -68,10 +68,10 @@ ENDIF("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") SET(USE_PYTHON True) -ELSE(PYTHON_INCLUDE_PATH AND NOT NO_PYTHON) +ELSE(PYTHON_INCLUDE_DIRS AND NOT NO_PYTHON) MESSAGE("Python Library and Development files *not* found. Python extensions disabled!") SET(PYTHON_LIBRARY "") -ENDIF(PYTHON_INCLUDE_PATH AND NOT NO_PYTHON) +ENDIF(PYTHON_INCLUDE_DIRS AND NOT NO_PYTHON) ################################## # Poppler detection for printing # @@ -556,7 +556,7 @@ ENDIF(USE_RUBY) IF(USE_PYTHON) - INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) + INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}) SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_SOURCE_DIR}/scripting/canoruspython.i PROPERTIES CPLUSPLUS ON) SET(CANORUS_PYTHON_WRAP_CXX ${CMAKE_CURRENT_SOURCE_DIR}/scripting/canoruspythonPYTHON_wrap.cxx) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ma...@us...> - 2011-11-02 22:53:03
|
Revision: 1254 http://canorus.svn.sourceforge.net/canorus/?rev=1254&view=rev Author: matevz Date: 2011-11-02 22:52:57 +0000 (Wed, 02 Nov 2011) Log Message: ----------- Implemented colored shadow notes. Added helperElementsColor to Canorus settings file. Fixed shadow notes Y axis calculation. Fixed shadow note behaviour when leaving insert mode. Fixed selected context color. First implementation of adding notes and rests using new drawing API. Modified Paths: -------------- branches/graphicsscene/src/core/settings.cpp branches/graphicsscene/src/core/settings.h branches/graphicsscene/src/layout/drawablestaff.cpp branches/graphicsscene/src/ui/mainwin.cpp branches/graphicsscene/src/widgets/scoreview.cpp branches/graphicsscene/src/widgets/scoreview.h Modified: branches/graphicsscene/src/core/settings.cpp =================================================================== --- branches/graphicsscene/src/core/settings.cpp 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/core/settings.cpp 2011-11-02 22:52:57 UTC (rev 1254) @@ -34,6 +34,7 @@ const QColor CASettings::DEFAULT_SELECTED_CONTEXT_COLOR = Qt::blue; const QColor CASettings::DEFAULT_HIDDEN_ELEMENTS_COLOR = Qt::green; const QColor CASettings::DEFAULT_DISABLED_ELEMENTS_COLOR = Qt::gray; +const QColor CASettings::DEFAULT_HELPER_ELEMENTS_COLOR = Qt::gray; #endif const int CASettings::DEFAULT_MIDI_IN_PORT = -1; @@ -123,6 +124,7 @@ setValue( "appearance/selectedcontextcolor", selectedContextColor() ); setValue( "appearance/hiddenelementscolor",hiddenElementsColor() ); setValue( "appearance/disabledelementscolor", disabledElementsColor() ); + setValue( "appearance/helperelementscolor", helperElementsColor() ); #endif setValue( "rtmidi/midioutport", midiOutPort() ); setValue( "rtmidi/midiinport", midiInPort() ); @@ -246,6 +248,11 @@ else setDisabledElementsColor( DEFAULT_DISABLED_ELEMENTS_COLOR ); + if ( contains("appearance/helperelementscolor") ) + setHelperElementsColor( value("appearance/helperelementscolor").value<QColor>() ); + else + setHelperElementsColor( DEFAULT_HELPER_ELEMENTS_COLOR ); + #endif // Playback settings if ( contains("rtmidi/midiinport") Modified: branches/graphicsscene/src/core/settings.h =================================================================== --- branches/graphicsscene/src/core/settings.h 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/core/settings.h 2011-11-02 22:52:57 UTC (rev 1254) @@ -93,11 +93,14 @@ inline void setSelectedContextColor( QColor selectedContextColor ) { _selectedContextColor = selectedContextColor; } static const QColor DEFAULT_SELECTED_CONTEXT_COLOR; inline QColor hiddenElementsColor() { return _hiddenElementsColor; } - inline void setDisabledElementsColor( QColor disabledElementsColor ) { _disabledElementsColor = disabledElementsColor; } + inline void setHiddenElementsColor( QColor hiddenElementsColor ) { _hiddenElementsColor = hiddenElementsColor; } static const QColor DEFAULT_HIDDEN_ELEMENTS_COLOR; inline QColor disabledElementsColor() { return _disabledElementsColor; } - inline void setHiddenElementsColor( QColor hiddenElementsColor ) { _hiddenElementsColor = hiddenElementsColor; } + inline void setDisabledElementsColor( QColor disabledElementsColor ) { _disabledElementsColor = disabledElementsColor; } static const QColor DEFAULT_DISABLED_ELEMENTS_COLOR; + inline QColor helperElementsColor() { return _helperElementsColor; } + inline void setHelperElementsColor( QColor helperElementsColor ) { _helperElementsColor = helperElementsColor; } + static const QColor DEFAULT_HELPER_ELEMENTS_COLOR; #endif /////////////////////// @@ -180,6 +183,7 @@ QColor _selectedContextColor; QColor _hiddenElementsColor; QColor _disabledElementsColor; + QColor _helperElementsColor; #endif /////////////////////// // Playback settings // Modified: branches/graphicsscene/src/layout/drawablestaff.cpp =================================================================== --- branches/graphicsscene/src/layout/drawablestaff.cpp 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/layout/drawablestaff.cpp 2011-11-02 22:52:57 UTC (rev 1254) @@ -18,7 +18,7 @@ const double CADrawableStaff::STAFFLINE_WIDTH = 0.8; const double CADrawableStaff::LINE_SPACE = 10; -const double CADrawableStaff::STAFF_WIDTH = 200; +const double CADrawableStaff::STAFF_WIDTH = 700; CADrawableStaff::CADrawableStaff(CAStaff *s) : CADrawableContext(s, CADrawableContext::DrawableStaff) { Modified: branches/graphicsscene/src/ui/mainwin.cpp =================================================================== --- branches/graphicsscene/src/ui/mainwin.cpp 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/ui/mainwin.cpp 2011-11-02 22:52:57 UTC (rev 1254) @@ -2381,7 +2381,7 @@ success = musElementFactory()->configureMark( v->musElementsAt( coords )[0]->musElement() ); break; } -/* case CAMusElement::Note: { // TODO: fix this to use our new drawing api -Matevz + case CAMusElement::Note: { CAVoice *voice = currentVoice(); if ( !voice ) @@ -2391,17 +2391,17 @@ CADrawableMusElement *dright = v->nearestRightElement( coords.x(), coords.y(), voice ); if ( left && left->musElement() && left->musElement()->musElementType() == CAMusElement::Note && - left->xPos() <= coords.x() && (left->width() + left->xPos() >= coords.x()) ) { + left->x() <= coords.x() && (left->boundingRect().width() + left->x() >= coords.x()) ) { // user clicked inside x borders of the note - add a note to the chord - if ( voice->containsPitch( drawableStaff->calculatePitch(coords.x(), coords.y()), left->musElement()->timeStart() ) ) + if ( voice->containsPitch( drawableStaff->calculatePitch(QPointF(coords.x(), coords.y())), left->musElement()->timeStart() ) ) break; // user clicked on an already placed note or wanted to place illegal length (not the one the chord is of) - return and do nothing - success = musElementFactory()->configureNote( drawableStaff->calculatePitch(coords.x(), coords.y()), voice, left->musElement(), true ); + success = musElementFactory()->configureNote( drawableStaff->calculatePitch(QPointF(coords.x(), coords.y())), voice, left->musElement(), true ); } else if ( left && left->musElement() && left->musElement()->musElementType() == CAMusElement::Rest && - left->xPos() <= coords.x() && (left->width() + left->xPos() >= coords.x()) ) { + left->x() <= coords.x() && (left->boundingRect().width() + left->x() >= coords.x()) ) { // user clicked inside x borders of the rest - replace the rest/rests with the note // same code for the Rest insertion @@ -2441,7 +2441,7 @@ next = rests[rests.size()-1]; } - success = musElementFactory()->configureNote( drawableStaff->calculatePitch(coords.x(), coords.y()), voice, next, false ); + success = musElementFactory()->configureNote( drawableStaff->calculatePitch(QPointF(coords.x(), coords.y())), voice, next, false ); if ( success && CACanorus::settings()->autoBar() ) CAStaff::placeAutoBar( static_cast<CAPlayable*>(musElementFactory()->musElement()) ); @@ -2459,7 +2459,7 @@ delete static_cast<CAPlayable*>(dright->musElement())->tuplet(); } - success = musElementFactory()->configureNote( drawableStaff->calculatePitch(coords.x(), coords.y()), voice, dright?dright->musElement():0, false ); + success = musElementFactory()->configureNote( drawableStaff->calculatePitch(QPointF(coords.x(), coords.y())), voice, dright?dright->musElement():0, false ); if ( success && CACanorus::settings()->autoBar() ) CAStaff::placeAutoBar( static_cast<CAPlayable*>(musElementFactory()->musElement()) ); @@ -2499,7 +2499,7 @@ CADrawableMusElement *dright = v->nearestRightElement( coords.x(), coords.y(), voice ); if ( left && left->musElement() && left->musElement()->isPlayable() && - left->xPos() <= coords.x() && (left->width() + left->xPos() >= coords.x()) ) { + left->x() <= coords.x() && (left->boundingRect().width() + left->x() >= coords.x()) ) { // user clicked inside x borders of the rest or note - replace the rest/rests with the rest // same code for the Note insertion @@ -2565,7 +2565,7 @@ } break; - }*/ + } case CAMusElement::Slur: { // Insert tie, slur or phrasing slur if ( v->selection().size() ) { // start note has to always be selected Modified: branches/graphicsscene/src/widgets/scoreview.cpp =================================================================== --- branches/graphicsscene/src/widgets/scoreview.cpp 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/widgets/scoreview.cpp 2011-11-02 22:52:57 UTC (rev 1254) @@ -195,12 +195,13 @@ // set default parameters setBackgroundBrush( CACanorus::settings()->backgroundColor() ); - setForegroundColor( CACanorus::settings()->backgroundColor() ); + setForegroundColor( CACanorus::settings()->foregroundColor() ); setSelectionColor( CACanorus::settings()->selectionColor() ); setSelectionAreaBrush( CACanorus::settings()->selectionAreaColor() ); setSelectedContextColor( CACanorus::settings()->selectedContextColor() ); setHiddenElementsColor( CACanorus::settings()->hiddenElementsColor() ); setDisabledElementsColor( CACanorus::settings()->disabledElementsColor() ); + setShadowNoteColor( CACanorus::settings()->helperElementsColor() ); } CAScoreView::~CAScoreView() { @@ -284,6 +285,7 @@ _shadowDrawableNote << new CADrawableNote(_shadowNote.back(), elt); _shadowNoteName = new QGraphicsTextItem(); + _shadowNoteName->setDefaultTextColor( shadowNoteColor() ); QFont font("FreeSans"); font.setPixelSize( 20 ); _shadowNoteName->setFont( font ); @@ -318,6 +320,18 @@ return 0; } +void CAScoreView::setCurrentContext(CADrawableContext *c) { + _currentContext = c; + + for (int i=0; i<_drawableCList.size(); i++) { + _drawableCList.at(i)->setColor( foregroundColor() ); + } + + if (c) { + c->setColor( selectedContextColor() ); + } +} + /*! Change the x-coord of the last mouse press coords to after the right most element on the given list. */ @@ -904,14 +918,22 @@ CADrawableContext *c = _shadowDrawableNote[i]->drawableContext(); delete _shadowDrawableNote[i]; _shadowDrawableNote[i] = new CADrawableNote(_shadowNote[i], c); + _shadowDrawableNote[i]->setColor( shadowNoteColor() ); _scene->addItem(_shadowDrawableNote[i]); - _shadowDrawableNote[i]->setPos(_lastMouseMoveCoords.x(), static_cast<CADrawableStaff*>(c)->calculateCenterYCoord(pitch, _lastMouseMoveCoords.x())); + _shadowDrawableNote[i]->setPos(_lastMouseMoveCoords.x(), static_cast<CADrawableStaff*>(c)->y()+static_cast<CADrawableStaff*>(c)->calculateCenterYCoord(pitch, _lastMouseMoveCoords.x())); } if (_shadowNoteName) { _shadowNoteName->setPlainText( CANote::generateNoteName(_shadowNote[0]->diatonicPitch().noteName(), _shadowNoteAccs) ); _shadowNoteName->setPos(_lastMouseMoveCoords.x()+10, _lastMouseMoveCoords.y()-10); + _shadowNoteName->show(); } + } else { + // clear shadow notes + for (int i=0; i<_shadowNote.size(); i++) { + _shadowDrawableNote[i]->hide(); + } + _shadowNoteName->hide(); } // Text edit widget Modified: branches/graphicsscene/src/widgets/scoreview.h =================================================================== --- branches/graphicsscene/src/widgets/scoreview.h 2011-07-28 22:51:09 UTC (rev 1253) +++ branches/graphicsscene/src/widgets/scoreview.h 2011-11-02 22:52:57 UTC (rev 1254) @@ -105,7 +105,7 @@ void setLastMousePressCoordsAfter(const QList<CAMusElement*> list); inline CADrawableContext *currentContext() { return _currentContext; } - inline void setCurrentContext(CADrawableContext *c) { _currentContext = c; } + void setCurrentContext(CADrawableContext *c); void selectAll(); void selectAllCurBar(); @@ -219,6 +219,9 @@ inline bool shadowNoteVisible() { return _shadowNoteVisible; } inline void setShadowNoteVisible(bool visible) { _shadowNoteVisible = visible; setShadowNoteVisibleOnLeave(visible); } + inline const QColor shadowNoteColor() { return _shadowNoteColor; } + inline void setShadowNoteColor(const QColor color) { _shadowNoteColor = color; } + inline bool drawShadowNoteAccs() { return _drawShadowNoteAccs; } inline void setDrawShadowNoteAccs(bool draw) { _drawShadowNoteAccs = draw; } @@ -307,7 +310,8 @@ ///////////// // Shadow note bool _shadowNoteVisible; // Should the shadow notes be rendered or not - QGraphicsTextItem *_shadowNoteName; // Text showing the current shadow note pitch + QColor _shadowNoteColor; // Shadow note color + QGraphicsTextItem *_shadowNoteName; // Text showing the current shadow note pitch bool _shadowNoteVisibleOnLeave; // When you leave the view, shadow note is always turned off. This property holds the value, if shadow note was enabled before you left the view. inline bool shadowNoteVisibleOnLeave() { return _shadowNoteVisibleOnLeave; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |