{"action":"created","comment":{"url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/comments/46070827","id":46070827,"diff_hunk":"@@ -33,7 +33,10 @@ def Gooey(f=None,\n           optional_cols=2,\r\n           dump_build_config=False,\r\n           load_build_config=None,\r\n-          monospace_display=False):\r\n+          monospace_display=False,\r\n+          progress_regex=None,\r\n+          progress_expr=None,\r\n+          progress_animation=True):\r","path":"gooey/python_bindings/gooey_decorator.py","position":24,"original_position":24,"commit_id":"1095dca00eb91a27a8e034496c11c42d80e69c2b","original_commit_id":"1095dca00eb91a27a8e034496c11c42d80e69c2b","user":{"login":"chriskiehl","id":1408720,"avatar_url":"https://avatars.githubusercontent.com/u/1408720?v=3","gravatar_id":"","url":"https://api.github.com/users/chriskiehl","html_url":"https://github.com/chriskiehl","followers_url":"https://api.github.com/users/chriskiehl/followers","following_url":"https://api.github.com/users/chriskiehl/following{/other_user}","gists_url":"https://api.github.com/users/chriskiehl/gists{/gist_id}","starred_url":"https://api.github.com/users/chriskiehl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriskiehl/subscriptions","organizations_url":"https://api.github.com/users/chriskiehl/orgs","repos_url":"https://api.github.com/users/chriskiehl/repos","events_url":"https://api.github.com/users/chriskiehl/events{/privacy}","received_events_url":"https://api.github.com/users/chriskiehl/received_events","type":"User","site_admin":false},"body":"The display of the `stop` button should be configurable here. ","created_at":"2015-11-27T21:36:06Z","updated_at":"2015-11-27T21:36:06Z","html_url":"https://github.com/chriskiehl/Gooey/pull/120#discussion_r46070827","pull_request_url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120","_links":{"self":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/comments/46070827"},"html":{"href":"https://github.com/chriskiehl/Gooey/pull/120#discussion_r46070827"},"pull_request":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120"}}},"pull_request":{"url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120","id":48600879,"html_url":"https://github.com/chriskiehl/Gooey/pull/120","diff_url":"https://github.com/chriskiehl/Gooey/pull/120.diff","patch_url":"https://github.com/chriskiehl/Gooey/pull/120.patch","issue_url":"https://api.github.com/repos/chriskiehl/Gooey/issues/120","number":120,"state":"open","locked":false,"title":"Implement Stop button and progress bar","user":{"login":"Shura1oplot","id":1537165,"avatar_url":"https://avatars.githubusercontent.com/u/1537165?v=3","gravatar_id":"","url":"https://api.github.com/users/Shura1oplot","html_url":"https://github.com/Shura1oplot","followers_url":"https://api.github.com/users/Shura1oplot/followers","following_url":"https://api.github.com/users/Shura1oplot/following{/other_user}","gists_url":"https://api.github.com/users/Shura1oplot/gists{/gist_id}","starred_url":"https://api.github.com/users/Shura1oplot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shura1oplot/subscriptions","organizations_url":"https://api.github.com/users/Shura1oplot/orgs","repos_url":"https://api.github.com/users/Shura1oplot/repos","events_url":"https://api.github.com/users/Shura1oplot/events{/privacy}","received_events_url":"https://api.github.com/users/Shura1oplot/received_events","type":"User","site_admin":false},"body":"Added Stop button to the screen with status of running program. Depend on the OS it uses os.kill to terminale the process or TASKKILL.EXE windows program.\r\n\r\nAdded progress bar support. Two new `Gooey()` options added: `progress_regex` and `progress_expr`. The first one should be regular expression which is applied to each line of the program output. At least one group in the regex should be defined. If the regexp matchs a line, progress bar is updated. In case `progress_expr` is not set, the group should contain a float number between 0 and 100, otherwise `progress_expr` is applied as an argument to `expr()` function. All unnamed regexp groups are passed as `x` variable with `list` type, named groups are passed as variables. If a group value can be converted to float, it will be. For usage please refer to `example_progress_bar_*.py`.\r\n\r\n![gooey_progress_bar](https://cloud.githubusercontent.com/assets/1537165/10864716/52a46c78-8008-11e5-84a1-416344e09d35.png)","created_at":"2015-10-23T16:27:50Z","updated_at":"2015-11-27T21:36:06Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a8c73a688bed937365d154adb5a4673784c27f35","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120/commits","review_comments_url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120/comments","review_comment_url":"https://api.github.com/repos/chriskiehl/Gooey/pulls/comments{/number}","comments_url":"https://api.github.com/repos/chriskiehl/Gooey/issues/120/comments","statuses_url":"https://api.github.com/repos/chriskiehl/Gooey/statuses/1095dca00eb91a27a8e034496c11c42d80e69c2b","head":{"label":"Shura1oplot:progress_bar","ref":"progress_bar","sha":"1095dca00eb91a27a8e034496c11c42d80e69c2b","user":{"login":"Shura1oplot","id":1537165,"avatar_url":"https://avatars.githubusercontent.com/u/1537165?v=3","gravatar_id":"","url":"https://api.github.com/users/Shura1oplot","html_url":"https://github.com/Shura1oplot","followers_url":"https://api.github.com/users/Shura1oplot/followers","following_url":"https://api.github.com/users/Shura1oplot/following{/other_user}","gists_url":"https://api.github.com/users/Shura1oplot/gists{/gist_id}","starred_url":"https://api.github.com/users/Shura1oplot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shura1oplot/subscriptions","organizations_url":"https://api.github.com/users/Shura1oplot/orgs","repos_url":"https://api.github.com/users/Shura1oplot/repos","events_url":"https://api.github.com/users/Shura1oplot/events{/privacy}","received_events_url":"https://api.github.com/users/Shura1oplot/received_events","type":"User","site_admin":false},"repo":{"id":44811817,"name":"Gooey","full_name":"Shura1oplot/Gooey","owner":{"login":"Shura1oplot","id":1537165,"avatar_url":"https://avatars.githubusercontent.com/u/1537165?v=3","gravatar_id":"","url":"https://api.github.com/users/Shura1oplot","html_url":"https://github.com/Shura1oplot","followers_url":"https://api.github.com/users/Shura1oplot/followers","following_url":"https://api.github.com/users/Shura1oplot/following{/other_user}","gists_url":"https://api.github.com/users/Shura1oplot/gists{/gist_id}","starred_url":"https://api.github.com/users/Shura1oplot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Shura1oplot/subscriptions","organizations_url":"https://api.github.com/users/Shura1oplot/orgs","repos_url":"https://api.github.com/users/Shura1oplot/repos","events_url":"https://api.github.com/users/Shura1oplot/events{/privacy}","received_events_url":"https://api.github.com/users/Shura1oplot/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Shura1oplot/Gooey","description":"Turn (almost) any Python command line program into a full GUI application with one line","fork":true,"url":"https://api.github.com/repos/Shura1oplot/Gooey","forks_url":"https://api.github.com/repos/Shura1oplot/Gooey/forks","keys_url":"https://api.github.com/repos/Shura1oplot/Gooey/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Shura1oplot/Gooey/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Shura1oplot/Gooey/teams","hooks_url":"https://api.github.com/repos/Shura1oplot/Gooey/hooks","issue_events_url":"https://api.github.com/repos/Shura1oplot/Gooey/issues/events{/number}","events_url":"https://api.github.com/repos/Shura1oplot/Gooey/events","assignees_url":"https://api.github.com/repos/Shura1oplot/Gooey/assignees{/user}","branches_url":"https://api.github.com/repos/Shura1oplot/Gooey/branches{/branch}","tags_url":"https://api.github.com/repos/Shura1oplot/Gooey/tags","blobs_url":"https://api.github.com/repos/Shura1oplot/Gooey/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Shura1oplot/Gooey/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Shura1oplot/Gooey/git/refs{/sha}","trees_url":"https://api.github.com/repos/Shura1oplot/Gooey/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Shura1oplot/Gooey/statuses/{sha}","languages_url":"https://api.github.com/repos/Shura1oplot/Gooey/languages","stargazers_url":"https://api.github.com/repos/Shura1oplot/Gooey/stargazers","contributors_url":"https://api.github.com/repos/Shura1oplot/Gooey/contributors","subscribers_url":"https://api.github.com/repos/Shura1oplot/Gooey/subscribers","subscription_url":"https://api.github.com/repos/Shura1oplot/Gooey/subscription","commits_url":"https://api.github.com/repos/Shura1oplot/Gooey/commits{/sha}","git_commits_url":"https://api.github.com/repos/Shura1oplot/Gooey/git/commits{/sha}","comments_url":"https://api.github.com/repos/Shura1oplot/Gooey/comments{/number}","issue_comment_url":"https://api.github.com/repos/Shura1oplot/Gooey/issues/comments{/number}","contents_url":"https://api.github.com/repos/Shura1oplot/Gooey/contents/{+path}","compare_url":"https://api.github.com/repos/Shura1oplot/Gooey/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Shura1oplot/Gooey/merges","archive_url":"https://api.github.com/repos/Shura1oplot/Gooey/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Shura1oplot/Gooey/downloads","issues_url":"https://api.github.com/repos/Shura1oplot/Gooey/issues{/number}","pulls_url":"https://api.github.com/repos/Shura1oplot/Gooey/pulls{/number}","milestones_url":"https://api.github.com/repos/Shura1oplot/Gooey/milestones{/number}","notifications_url":"https://api.github.com/repos/Shura1oplot/Gooey/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Shura1oplot/Gooey/labels{/name}","releases_url":"https://api.github.com/repos/Shura1oplot/Gooey/releases{/id}","created_at":"2015-10-23T12:29:12Z","updated_at":"2015-10-23T12:29:12Z","pushed_at":"2015-11-16T12:24:46Z","git_url":"git://github.com/Shura1oplot/Gooey.git","ssh_url":"git@github.com:Shura1oplot/Gooey.git","clone_url":"https://github.com/Shura1oplot/Gooey.git","svn_url":"https://github.com/Shura1oplot/Gooey","homepage":"","size":3069,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"chriskiehl:master","ref":"master","sha":"20a13e5f6893f6e62fac88d48abddf2245112493","user":{"login":"chriskiehl","id":1408720,"avatar_url":"https://avatars.githubusercontent.com/u/1408720?v=3","gravatar_id":"","url":"https://api.github.com/users/chriskiehl","html_url":"https://github.com/chriskiehl","followers_url":"https://api.github.com/users/chriskiehl/followers","following_url":"https://api.github.com/users/chriskiehl/following{/other_user}","gists_url":"https://api.github.com/users/chriskiehl/gists{/gist_id}","starred_url":"https://api.github.com/users/chriskiehl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriskiehl/subscriptions","organizations_url":"https://api.github.com/users/chriskiehl/orgs","repos_url":"https://api.github.com/users/chriskiehl/repos","events_url":"https://api.github.com/users/chriskiehl/events{/privacy}","received_events_url":"https://api.github.com/users/chriskiehl/received_events","type":"User","site_admin":false},"repo":{"id":15570122,"name":"Gooey","full_name":"chriskiehl/Gooey","owner":{"login":"chriskiehl","id":1408720,"avatar_url":"https://avatars.githubusercontent.com/u/1408720?v=3","gravatar_id":"","url":"https://api.github.com/users/chriskiehl","html_url":"https://github.com/chriskiehl","followers_url":"https://api.github.com/users/chriskiehl/followers","following_url":"https://api.github.com/users/chriskiehl/following{/other_user}","gists_url":"https://api.github.com/users/chriskiehl/gists{/gist_id}","starred_url":"https://api.github.com/users/chriskiehl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chriskiehl/subscriptions","organizations_url":"https://api.github.com/users/chriskiehl/orgs","repos_url":"https://api.github.com/users/chriskiehl/repos","events_url":"https://api.github.com/users/chriskiehl/events{/privacy}","received_events_url":"https://api.github.com/users/chriskiehl/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/chriskiehl/Gooey","description":"Turn (almost) any Python command line program into a full GUI application with one line","fork":false,"url":"https://api.github.com/repos/chriskiehl/Gooey","forks_url":"https://api.github.com/repos/chriskiehl/Gooey/forks","keys_url":"https://api.github.com/repos/chriskiehl/Gooey/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chriskiehl/Gooey/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chriskiehl/Gooey/teams","hooks_url":"https://api.github.com/repos/chriskiehl/Gooey/hooks","issue_events_url":"https://api.github.com/repos/chriskiehl/Gooey/issues/events{/number}","events_url":"https://api.github.com/repos/chriskiehl/Gooey/events","assignees_url":"https://api.github.com/repos/chriskiehl/Gooey/assignees{/user}","branches_url":"https://api.github.com/repos/chriskiehl/Gooey/branches{/branch}","tags_url":"https://api.github.com/repos/chriskiehl/Gooey/tags","blobs_url":"https://api.github.com/repos/chriskiehl/Gooey/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chriskiehl/Gooey/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chriskiehl/Gooey/git/refs{/sha}","trees_url":"https://api.github.com/repos/chriskiehl/Gooey/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chriskiehl/Gooey/statuses/{sha}","languages_url":"https://api.github.com/repos/chriskiehl/Gooey/languages","stargazers_url":"https://api.github.com/repos/chriskiehl/Gooey/stargazers","contributors_url":"https://api.github.com/repos/chriskiehl/Gooey/contributors","subscribers_url":"https://api.github.com/repos/chriskiehl/Gooey/subscribers","subscription_url":"https://api.github.com/repos/chriskiehl/Gooey/subscription","commits_url":"https://api.github.com/repos/chriskiehl/Gooey/commits{/sha}","git_commits_url":"https://api.github.com/repos/chriskiehl/Gooey/git/commits{/sha}","comments_url":"https://api.github.com/repos/chriskiehl/Gooey/comments{/number}","issue_comment_url":"https://api.github.com/repos/chriskiehl/Gooey/issues/comments{/number}","contents_url":"https://api.github.com/repos/chriskiehl/Gooey/contents/{+path}","compare_url":"https://api.github.com/repos/chriskiehl/Gooey/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chriskiehl/Gooey/merges","archive_url":"https://api.github.com/repos/chriskiehl/Gooey/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chriskiehl/Gooey/downloads","issues_url":"https://api.github.com/repos/chriskiehl/Gooey/issues{/number}","pulls_url":"https://api.github.com/repos/chriskiehl/Gooey/pulls{/number}","milestones_url":"https://api.github.com/repos/chriskiehl/Gooey/milestones{/number}","notifications_url":"https://api.github.com/repos/chriskiehl/Gooey/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chriskiehl/Gooey/labels{/name}","releases_url":"https://api.github.com/repos/chriskiehl/Gooey/releases{/id}","created_at":"2014-01-01T21:06:05Z","updated_at":"2015-11-27T11:37:02Z","pushed_at":"2015-11-21T03:40:49Z","git_url":"git://github.com/chriskiehl/Gooey.git","ssh_url":"git@github.com:chriskiehl/Gooey.git","clone_url":"https://github.com/chriskiehl/Gooey.git","svn_url":"https://github.com/chriskiehl/Gooey","homepage":"","size":2987,"stargazers_count":3752,"watchers_count":3752,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":178,"mirror_url":null,"open_issues_count":13,"forks":178,"open_issues":13,"watchers":3752,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120"},"html":{"href":"https://github.com/chriskiehl/Gooey/pull/120"},"issue":{"href":"https://api.github.com/repos/chriskiehl/Gooey/issues/120"},"comments":{"href":"https://api.github.com/repos/chriskiehl/Gooey/issues/120/comments"},"review_comments":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120/comments"},"review_comment":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/chriskiehl/Gooey/pulls/120/commits"},"statuses":{"href":"https://api.github.com/repos/chriskiehl/Gooey/statuses/1095dca00eb91a27a8e034496c11c42d80e69c2b"}}}}