{"action":"created","comment":{"url":"https://api.github.com/repos/musescore/MuseScore/pulls/comments/37981617","id":37981617,"diff_hunk":"@@ -173,13 +184,20 @@ void HairpinSegment::draw(QPainter* painter) const\n       else\n             color = hairpin()->curColor();\n       QPen pen(color, point(hairpin()->lineWidth()), hairpin()->lineStyle());\n+      if (hairpin()->lineStyle() == Qt::CustomDashLine) {\n+            QVector<qreal> pattern;\n+            pattern << 5.0 << 20.0;","path":"libmscore/hairpin.cpp","position":31,"original_position":31,"commit_id":"74170c3b94a8c3f0f682ff7598b35238b1dfc042","original_commit_id":"74170c3b94a8c3f0f682ff7598b35238b1dfc042","user":{"login":"lasconic","id":234271,"avatar_url":"https://avatars.githubusercontent.com/u/234271?v=3","gravatar_id":"","url":"https://api.github.com/users/lasconic","html_url":"https://github.com/lasconic","followers_url":"https://api.github.com/users/lasconic/followers","following_url":"https://api.github.com/users/lasconic/following{/other_user}","gists_url":"https://api.github.com/users/lasconic/gists{/gist_id}","starred_url":"https://api.github.com/users/lasconic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lasconic/subscriptions","organizations_url":"https://api.github.com/users/lasconic/orgs","repos_url":"https://api.github.com/users/lasconic/repos","events_url":"https://api.github.com/users/lasconic/events{/privacy}","received_events_url":"https://api.github.com/users/lasconic/received_events","type":"User","site_admin":false},"body":"Does that need to be space dependent?","created_at":"2015-08-26T13:37:14Z","updated_at":"2015-08-26T13:37:14Z","html_url":"https://github.com/musescore/MuseScore/pull/2181#discussion_r37981617","pull_request_url":"https://api.github.com/repos/musescore/MuseScore/pulls/2181","_links":{"self":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/comments/37981617"},"html":{"href":"https://github.com/musescore/MuseScore/pull/2181#discussion_r37981617"},"pull_request":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/2181"}}},"pull_request":{"url":"https://api.github.com/repos/musescore/MuseScore/pulls/2181","id":43127796,"html_url":"https://github.com/musescore/MuseScore/pull/2181","diff_url":"https://github.com/musescore/MuseScore/pull/2181.diff","patch_url":"https://github.com/musescore/MuseScore/pull/2181.patch","issue_url":"https://api.github.com/repos/musescore/MuseScore/issues/2181","number":2181,"state":"open","locked":false,"title":"fix #74171: cresc. and dim. lines","user":{"login":"MarcSabatella","id":1799936,"avatar_url":"https://avatars.githubusercontent.com/u/1799936?v=3","gravatar_id":"","url":"https://api.github.com/users/MarcSabatella","html_url":"https://github.com/MarcSabatella","followers_url":"https://api.github.com/users/MarcSabatella/followers","following_url":"https://api.github.com/users/MarcSabatella/following{/other_user}","gists_url":"https://api.github.com/users/MarcSabatella/gists{/gist_id}","starred_url":"https://api.github.com/users/MarcSabatella/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarcSabatella/subscriptions","organizations_url":"https://api.github.com/users/MarcSabatella/orgs","repos_url":"https://api.github.com/users/MarcSabatella/repos","events_url":"https://api.github.com/users/MarcSabatella/events{/privacy}","received_events_url":"https://api.github.com/users/MarcSabatella/received_events","type":"User","site_admin":false},"body":"This is a very simple/cheap implementation of crescendo and diminuendo as text lines.  Basically, I keep the existing Hairpin class but change it to inherit from TextLine rather than SLine to make it possible to have text.  I added a _useTextLine flag that I check to control whether we do the normal HairpinSegment layout & drawing or just pass it down to TextLineSegment.  I also check this flag when displaying the property menu so we can display Line Properties for these.\r\n\r\nI also added a new \"Wide dashed\" line style, which is made available to all lines.  Ultimately this could actually have style or property settings for dash length and gap between dashes, but I picked some defaults for now I thought looked good.  I check the _useTextLine flag in Hairpin::propertyDefault() for the LINE_STYLE property, so it defaults to \"Wide dashed\" or \"Continuous\" as appropriate.\r\n\r\nI added cresc. and dim. lines to the palette; these set _useTextLine and use \"Wide dashed\" line style.  And that's about it.","created_at":"2015-08-23T20:23:46Z","updated_at":"2015-08-26T13:37:14Z","closed_at":null,"merged_at":null,"merge_commit_sha":"50b6d2cba8790df856e755f5ea39eb34e3f28129","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/musescore/MuseScore/pulls/2181/commits","review_comments_url":"https://api.github.com/repos/musescore/MuseScore/pulls/2181/comments","review_comment_url":"https://api.github.com/repos/musescore/MuseScore/pulls/comments{/number}","comments_url":"https://api.github.com/repos/musescore/MuseScore/issues/2181/comments","statuses_url":"https://api.github.com/repos/musescore/MuseScore/statuses/74170c3b94a8c3f0f682ff7598b35238b1dfc042","head":{"label":"MarcSabatella:74171-cresc","ref":"74171-cresc","sha":"74170c3b94a8c3f0f682ff7598b35238b1dfc042","user":{"login":"MarcSabatella","id":1799936,"avatar_url":"https://avatars.githubusercontent.com/u/1799936?v=3","gravatar_id":"","url":"https://api.github.com/users/MarcSabatella","html_url":"https://github.com/MarcSabatella","followers_url":"https://api.github.com/users/MarcSabatella/followers","following_url":"https://api.github.com/users/MarcSabatella/following{/other_user}","gists_url":"https://api.github.com/users/MarcSabatella/gists{/gist_id}","starred_url":"https://api.github.com/users/MarcSabatella/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarcSabatella/subscriptions","organizations_url":"https://api.github.com/users/MarcSabatella/orgs","repos_url":"https://api.github.com/users/MarcSabatella/repos","events_url":"https://api.github.com/users/MarcSabatella/events{/privacy}","received_events_url":"https://api.github.com/users/MarcSabatella/received_events","type":"User","site_admin":false},"repo":{"id":14895853,"name":"MuseScore","full_name":"MarcSabatella/MuseScore","owner":{"login":"MarcSabatella","id":1799936,"avatar_url":"https://avatars.githubusercontent.com/u/1799936?v=3","gravatar_id":"","url":"https://api.github.com/users/MarcSabatella","html_url":"https://github.com/MarcSabatella","followers_url":"https://api.github.com/users/MarcSabatella/followers","following_url":"https://api.github.com/users/MarcSabatella/following{/other_user}","gists_url":"https://api.github.com/users/MarcSabatella/gists{/gist_id}","starred_url":"https://api.github.com/users/MarcSabatella/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MarcSabatella/subscriptions","organizations_url":"https://api.github.com/users/MarcSabatella/orgs","repos_url":"https://api.github.com/users/MarcSabatella/repos","events_url":"https://api.github.com/users/MarcSabatella/events{/privacy}","received_events_url":"https://api.github.com/users/MarcSabatella/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/MarcSabatella/MuseScore","description":"MuseScore is a open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!","fork":true,"url":"https://api.github.com/repos/MarcSabatella/MuseScore","forks_url":"https://api.github.com/repos/MarcSabatella/MuseScore/forks","keys_url":"https://api.github.com/repos/MarcSabatella/MuseScore/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MarcSabatella/MuseScore/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MarcSabatella/MuseScore/teams","hooks_url":"https://api.github.com/repos/MarcSabatella/MuseScore/hooks","issue_events_url":"https://api.github.com/repos/MarcSabatella/MuseScore/issues/events{/number}","events_url":"https://api.github.com/repos/MarcSabatella/MuseScore/events","assignees_url":"https://api.github.com/repos/MarcSabatella/MuseScore/assignees{/user}","branches_url":"https://api.github.com/repos/MarcSabatella/MuseScore/branches{/branch}","tags_url":"https://api.github.com/repos/MarcSabatella/MuseScore/tags","blobs_url":"https://api.github.com/repos/MarcSabatella/MuseScore/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MarcSabatella/MuseScore/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MarcSabatella/MuseScore/git/refs{/sha}","trees_url":"https://api.github.com/repos/MarcSabatella/MuseScore/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MarcSabatella/MuseScore/statuses/{sha}","languages_url":"https://api.github.com/repos/MarcSabatella/MuseScore/languages","stargazers_url":"https://api.github.com/repos/MarcSabatella/MuseScore/stargazers","contributors_url":"https://api.github.com/repos/MarcSabatella/MuseScore/contributors","subscribers_url":"https://api.github.com/repos/MarcSabatella/MuseScore/subscribers","subscription_url":"https://api.github.com/repos/MarcSabatella/MuseScore/subscription","commits_url":"https://api.github.com/repos/MarcSabatella/MuseScore/commits{/sha}","git_commits_url":"https://api.github.com/repos/MarcSabatella/MuseScore/git/commits{/sha}","comments_url":"https://api.github.com/repos/MarcSabatella/MuseScore/comments{/number}","issue_comment_url":"https://api.github.com/repos/MarcSabatella/MuseScore/issues/comments{/number}","contents_url":"https://api.github.com/repos/MarcSabatella/MuseScore/contents/{+path}","compare_url":"https://api.github.com/repos/MarcSabatella/MuseScore/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MarcSabatella/MuseScore/merges","archive_url":"https://api.github.com/repos/MarcSabatella/MuseScore/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MarcSabatella/MuseScore/downloads","issues_url":"https://api.github.com/repos/MarcSabatella/MuseScore/issues{/number}","pulls_url":"https://api.github.com/repos/MarcSabatella/MuseScore/pulls{/number}","milestones_url":"https://api.github.com/repos/MarcSabatella/MuseScore/milestones{/number}","notifications_url":"https://api.github.com/repos/MarcSabatella/MuseScore/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MarcSabatella/MuseScore/labels{/name}","releases_url":"https://api.github.com/repos/MarcSabatella/MuseScore/releases{/id}","created_at":"2013-12-03T14:25:39Z","updated_at":"2015-03-16T20:36:38Z","pushed_at":"2015-08-23T20:08:26Z","git_url":"git://github.com/MarcSabatella/MuseScore.git","ssh_url":"git@github.com:MarcSabatella/MuseScore.git","clone_url":"https://github.com/MarcSabatella/MuseScore.git","svn_url":"https://github.com/MarcSabatella/MuseScore","homepage":"http://musescore.org","size":206157,"stargazers_count":1,"watchers_count":1,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"musescore:master","ref":"master","sha":"a23ef389c0f3d3a5136b1b7371ccce9564e60671","user":{"login":"musescore","id":380563,"avatar_url":"https://avatars.githubusercontent.com/u/380563?v=3","gravatar_id":"","url":"https://api.github.com/users/musescore","html_url":"https://github.com/musescore","followers_url":"https://api.github.com/users/musescore/followers","following_url":"https://api.github.com/users/musescore/following{/other_user}","gists_url":"https://api.github.com/users/musescore/gists{/gist_id}","starred_url":"https://api.github.com/users/musescore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/musescore/subscriptions","organizations_url":"https://api.github.com/users/musescore/orgs","repos_url":"https://api.github.com/users/musescore/repos","events_url":"https://api.github.com/users/musescore/events{/privacy}","received_events_url":"https://api.github.com/users/musescore/received_events","type":"Organization","site_admin":false},"repo":{"id":4454793,"name":"MuseScore","full_name":"musescore/MuseScore","owner":{"login":"musescore","id":380563,"avatar_url":"https://avatars.githubusercontent.com/u/380563?v=3","gravatar_id":"","url":"https://api.github.com/users/musescore","html_url":"https://github.com/musescore","followers_url":"https://api.github.com/users/musescore/followers","following_url":"https://api.github.com/users/musescore/following{/other_user}","gists_url":"https://api.github.com/users/musescore/gists{/gist_id}","starred_url":"https://api.github.com/users/musescore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/musescore/subscriptions","organizations_url":"https://api.github.com/users/musescore/orgs","repos_url":"https://api.github.com/users/musescore/repos","events_url":"https://api.github.com/users/musescore/events{/privacy}","received_events_url":"https://api.github.com/users/musescore/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/musescore/MuseScore","description":"MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!","fork":false,"url":"https://api.github.com/repos/musescore/MuseScore","forks_url":"https://api.github.com/repos/musescore/MuseScore/forks","keys_url":"https://api.github.com/repos/musescore/MuseScore/keys{/key_id}","collaborators_url":"https://api.github.com/repos/musescore/MuseScore/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/musescore/MuseScore/teams","hooks_url":"https://api.github.com/repos/musescore/MuseScore/hooks","issue_events_url":"https://api.github.com/repos/musescore/MuseScore/issues/events{/number}","events_url":"https://api.github.com/repos/musescore/MuseScore/events","assignees_url":"https://api.github.com/repos/musescore/MuseScore/assignees{/user}","branches_url":"https://api.github.com/repos/musescore/MuseScore/branches{/branch}","tags_url":"https://api.github.com/repos/musescore/MuseScore/tags","blobs_url":"https://api.github.com/repos/musescore/MuseScore/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/musescore/MuseScore/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/musescore/MuseScore/git/refs{/sha}","trees_url":"https://api.github.com/repos/musescore/MuseScore/git/trees{/sha}","statuses_url":"https://api.github.com/repos/musescore/MuseScore/statuses/{sha}","languages_url":"https://api.github.com/repos/musescore/MuseScore/languages","stargazers_url":"https://api.github.com/repos/musescore/MuseScore/stargazers","contributors_url":"https://api.github.com/repos/musescore/MuseScore/contributors","subscribers_url":"https://api.github.com/repos/musescore/MuseScore/subscribers","subscription_url":"https://api.github.com/repos/musescore/MuseScore/subscription","commits_url":"https://api.github.com/repos/musescore/MuseScore/commits{/sha}","git_commits_url":"https://api.github.com/repos/musescore/MuseScore/git/commits{/sha}","comments_url":"https://api.github.com/repos/musescore/MuseScore/comments{/number}","issue_comment_url":"https://api.github.com/repos/musescore/MuseScore/issues/comments{/number}","contents_url":"https://api.github.com/repos/musescore/MuseScore/contents/{+path}","compare_url":"https://api.github.com/repos/musescore/MuseScore/compare/{base}...{head}","merges_url":"https://api.github.com/repos/musescore/MuseScore/merges","archive_url":"https://api.github.com/repos/musescore/MuseScore/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/musescore/MuseScore/downloads","issues_url":"https://api.github.com/repos/musescore/MuseScore/issues{/number}","pulls_url":"https://api.github.com/repos/musescore/MuseScore/pulls{/number}","milestones_url":"https://api.github.com/repos/musescore/MuseScore/milestones{/number}","notifications_url":"https://api.github.com/repos/musescore/MuseScore/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/musescore/MuseScore/labels{/name}","releases_url":"https://api.github.com/repos/musescore/MuseScore/releases{/id}","created_at":"2012-05-26T12:46:33Z","updated_at":"2015-08-26T12:19:43Z","pushed_at":"2015-08-26T13:35:50Z","git_url":"git://github.com/musescore/MuseScore.git","ssh_url":"git@github.com:musescore/MuseScore.git","clone_url":"https://github.com/musescore/MuseScore.git","svn_url":"https://github.com/musescore/MuseScore","homepage":"http://musescore.org","size":373936,"stargazers_count":744,"watchers_count":744,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":449,"mirror_url":null,"open_issues_count":50,"forks":449,"open_issues":50,"watchers":744,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/2181"},"html":{"href":"https://github.com/musescore/MuseScore/pull/2181"},"issue":{"href":"https://api.github.com/repos/musescore/MuseScore/issues/2181"},"comments":{"href":"https://api.github.com/repos/musescore/MuseScore/issues/2181/comments"},"review_comments":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/2181/comments"},"review_comment":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/musescore/MuseScore/pulls/2181/commits"},"statuses":{"href":"https://api.github.com/repos/musescore/MuseScore/statuses/74170c3b94a8c3f0f682ff7598b35238b1dfc042"}}}}