{"action":"created","comment":{"url":"https://api.github.com/repos/mantidproject/mantid/pulls/comments/71860706","id":71860706,"diff_hunk":"@@ -46,13 +46,13 @@ void QtReflMainView::initLayout() {\n   ui.splitterTables->setStretchFactor(0, 0);\n   ui.splitterTables->setStretchFactor(1, 1);\n \n+  // Create the DataProcessor presenter\n   ReflGenericDataProcessorPresenterFactory presenterFactory;","path":"MantidQt/CustomInterfaces/src/Reflectometry/QtReflRunsTabView.cpp","position":63,"original_position":63,"commit_id":"5614ec38ffc1c9818eb8d174299419c133f4b068","original_commit_id":"5614ec38ffc1c9818eb8d174299419c133f4b068","user":{"login":"raquelalvarezbanos","id":8956985,"avatar_url":"https://avatars.githubusercontent.com/u/8956985?v=3","gravatar_id":"","url":"https://api.github.com/users/raquelalvarezbanos","html_url":"https://github.com/raquelalvarezbanos","followers_url":"https://api.github.com/users/raquelalvarezbanos/followers","following_url":"https://api.github.com/users/raquelalvarezbanos/following{/other_user}","gists_url":"https://api.github.com/users/raquelalvarezbanos/gists{/gist_id}","starred_url":"https://api.github.com/users/raquelalvarezbanos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raquelalvarezbanos/subscriptions","organizations_url":"https://api.github.com/users/raquelalvarezbanos/orgs","repos_url":"https://api.github.com/users/raquelalvarezbanos/repos","events_url":"https://api.github.com/users/raquelalvarezbanos/events{/privacy}","received_events_url":"https://api.github.com/users/raquelalvarezbanos/received_events","type":"User","site_admin":false},"body":"OK, I can inject the factory into the constructor of `QtReflRunsTabView`, but `QtReflMainWindowView` will still need to create an object of type `ReflGenericDataProcessorPresenterFactory` and do something like:\r\n\r\n```\r\nvoid QtReflMainWindowView::initLayout() {\r\n  m_ui.setupUi(this);\r\n\r\n  ReflGenericDataProcessorPresenterFactory presenterFactory;\r\n\r\n  // Create the tabs\r\n  auto runsPresenter = createRunsTab(presenterFactory);\r\n  auto settingsPresenter = createSettingsTab();\r\n\r\n  // Create the presenter\r\n  m_presenter.reset(\r\n      new ReflMainWindowPresenter(this, runsPresenter, settingsPresenter));\r\n}\r\n```\r\n\r\nThen:\r\n\r\n```\r\nIReflRunsTabPresenter *QtReflMainWindowView::createRunsTab(const ReflGenericDataProcessorPresenterFactory &factory) {\r\n\r\n  QtReflRunsTabView *runsTab = new QtReflRunsTabView(this, factory);\r\n  m_ui.mainTab->addTab(runsTab, QString(\"Runs\"));\r\n\r\n  return runsTab->getPresenter();\r\n}\r\n```\r\n\r\nWhy do it at this level and not at the `RunsTab` level?","created_at":"2016-07-22T10:47:53Z","updated_at":"2016-07-22T10:47:53Z","html_url":"https://github.com/mantidproject/mantid/pull/16941#discussion_r71860706","pull_request_url":"https://api.github.com/repos/mantidproject/mantid/pulls/16941","_links":{"self":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/comments/71860706"},"html":{"href":"https://github.com/mantidproject/mantid/pull/16941#discussion_r71860706"},"pull_request":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/16941"}}},"pull_request":{"url":"https://api.github.com/repos/mantidproject/mantid/pulls/16941","id":78120003,"html_url":"https://github.com/mantidproject/mantid/pull/16941","diff_url":"https://github.com/mantidproject/mantid/pull/16941.diff","patch_url":"https://github.com/mantidproject/mantid/pull/16941.patch","issue_url":"https://api.github.com/repos/mantidproject/mantid/issues/16941","number":16941,"state":"open","locked":false,"title":"Split Reflectometry interface into tabs","user":{"login":"raquelalvarezbanos","id":8956985,"avatar_url":"https://avatars.githubusercontent.com/u/8956985?v=3","gravatar_id":"","url":"https://api.github.com/users/raquelalvarezbanos","html_url":"https://github.com/raquelalvarezbanos","followers_url":"https://api.github.com/users/raquelalvarezbanos/followers","following_url":"https://api.github.com/users/raquelalvarezbanos/following{/other_user}","gists_url":"https://api.github.com/users/raquelalvarezbanos/gists{/gist_id}","starred_url":"https://api.github.com/users/raquelalvarezbanos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raquelalvarezbanos/subscriptions","organizations_url":"https://api.github.com/users/raquelalvarezbanos/orgs","repos_url":"https://api.github.com/users/raquelalvarezbanos/repos","events_url":"https://api.github.com/users/raquelalvarezbanos/events{/privacy}","received_events_url":"https://api.github.com/users/raquelalvarezbanos/received_events","type":"User","site_admin":false},"body":"Description of work.\r\n\r\n**To test:**\r\n\r\n<!-- Instructions for testing. -->\r\n\r\nFixes #16869.\r\nAlso Fixes #16416.\r\n\r\n<!-- RELEASE NOTES\r\nEither edit the file in docs/source/release/... and it will be in your pull request or state\r\n*Does not need to be in the release notes.*\r\n-->\r\n\r\n---\r\n\r\n#### Reviewer ####\r\n\r\nPlease comment on the following ([full description](http://www.mantidproject.org/Individual_Ticket_Testing)):\r\n\r\n##### Code Review #####\r\n\r\n- [ ] Is the code of an acceptable quality?\r\n- [ ] Does the code conform to the [coding standards](http://www.mantidproject.org/Coding_Standards)? Is it well structured with small focussed classes/methods/functions?\r\n- [ ] Are there unit/system tests in place? Are the unit tests small and test the a class in isolation?\r\n- [ ] If there are changes in the release notes then do they describe the changes appropriately?\r\n\r\n##### Functional Tests #####\r\n\r\n- [ ] Do changes function as described? Add comments below that describe the tests performed?\r\n- [ ] How do the changes handle unexpected situations, e.g. bad input?\r\n- [ ] Has the relevant documentation been added/updated?\r\n- [ ] Is user-facing documentation written in a user-friendly manner?\r\n- [ ] Has developer documentation been updated if required?\r\n\r\n- Does everything look good? Comment with the ship it emoji but don't merge. A member of `@mantidproject/gatekeepers` will take care of it.\r\n","created_at":"2016-07-20T10:03:06Z","updated_at":"2016-07-22T10:47:53Z","closed_at":null,"merged_at":null,"merge_commit_sha":"106a84f76189e007449c5c356cd069f8cf351ab0","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/mantidproject/mantid/pulls/16941/commits","review_comments_url":"https://api.github.com/repos/mantidproject/mantid/pulls/16941/comments","review_comment_url":"https://api.github.com/repos/mantidproject/mantid/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mantidproject/mantid/issues/16941/comments","statuses_url":"https://api.github.com/repos/mantidproject/mantid/statuses/5614ec38ffc1c9818eb8d174299419c133f4b068","head":{"label":"mantidproject:16869_Split_interface_into_tabs","ref":"16869_Split_interface_into_tabs","sha":"5614ec38ffc1c9818eb8d174299419c133f4b068","user":{"login":"mantidproject","id":671496,"avatar_url":"https://avatars.githubusercontent.com/u/671496?v=3","gravatar_id":"","url":"https://api.github.com/users/mantidproject","html_url":"https://github.com/mantidproject","followers_url":"https://api.github.com/users/mantidproject/followers","following_url":"https://api.github.com/users/mantidproject/following{/other_user}","gists_url":"https://api.github.com/users/mantidproject/gists{/gist_id}","starred_url":"https://api.github.com/users/mantidproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mantidproject/subscriptions","organizations_url":"https://api.github.com/users/mantidproject/orgs","repos_url":"https://api.github.com/users/mantidproject/repos","events_url":"https://api.github.com/users/mantidproject/events{/privacy}","received_events_url":"https://api.github.com/users/mantidproject/received_events","type":"Organization","site_admin":false},"repo":{"id":2594116,"name":"mantid","full_name":"mantidproject/mantid","owner":{"login":"mantidproject","id":671496,"avatar_url":"https://avatars.githubusercontent.com/u/671496?v=3","gravatar_id":"","url":"https://api.github.com/users/mantidproject","html_url":"https://github.com/mantidproject","followers_url":"https://api.github.com/users/mantidproject/followers","following_url":"https://api.github.com/users/mantidproject/following{/other_user}","gists_url":"https://api.github.com/users/mantidproject/gists{/gist_id}","starred_url":"https://api.github.com/users/mantidproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mantidproject/subscriptions","organizations_url":"https://api.github.com/users/mantidproject/orgs","repos_url":"https://api.github.com/users/mantidproject/repos","events_url":"https://api.github.com/users/mantidproject/events{/privacy}","received_events_url":"https://api.github.com/users/mantidproject/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mantidproject/mantid","description":"Main repository for Mantid code","fork":false,"url":"https://api.github.com/repos/mantidproject/mantid","forks_url":"https://api.github.com/repos/mantidproject/mantid/forks","keys_url":"https://api.github.com/repos/mantidproject/mantid/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mantidproject/mantid/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mantidproject/mantid/teams","hooks_url":"https://api.github.com/repos/mantidproject/mantid/hooks","issue_events_url":"https://api.github.com/repos/mantidproject/mantid/issues/events{/number}","events_url":"https://api.github.com/repos/mantidproject/mantid/events","assignees_url":"https://api.github.com/repos/mantidproject/mantid/assignees{/user}","branches_url":"https://api.github.com/repos/mantidproject/mantid/branches{/branch}","tags_url":"https://api.github.com/repos/mantidproject/mantid/tags","blobs_url":"https://api.github.com/repos/mantidproject/mantid/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mantidproject/mantid/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mantidproject/mantid/git/refs{/sha}","trees_url":"https://api.github.com/repos/mantidproject/mantid/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mantidproject/mantid/statuses/{sha}","languages_url":"https://api.github.com/repos/mantidproject/mantid/languages","stargazers_url":"https://api.github.com/repos/mantidproject/mantid/stargazers","contributors_url":"https://api.github.com/repos/mantidproject/mantid/contributors","subscribers_url":"https://api.github.com/repos/mantidproject/mantid/subscribers","subscription_url":"https://api.github.com/repos/mantidproject/mantid/subscription","commits_url":"https://api.github.com/repos/mantidproject/mantid/commits{/sha}","git_commits_url":"https://api.github.com/repos/mantidproject/mantid/git/commits{/sha}","comments_url":"https://api.github.com/repos/mantidproject/mantid/comments{/number}","issue_comment_url":"https://api.github.com/repos/mantidproject/mantid/issues/comments{/number}","contents_url":"https://api.github.com/repos/mantidproject/mantid/contents/{+path}","compare_url":"https://api.github.com/repos/mantidproject/mantid/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mantidproject/mantid/merges","archive_url":"https://api.github.com/repos/mantidproject/mantid/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mantidproject/mantid/downloads","issues_url":"https://api.github.com/repos/mantidproject/mantid/issues{/number}","pulls_url":"https://api.github.com/repos/mantidproject/mantid/pulls{/number}","milestones_url":"https://api.github.com/repos/mantidproject/mantid/milestones{/number}","notifications_url":"https://api.github.com/repos/mantidproject/mantid/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mantidproject/mantid/labels{/name}","releases_url":"https://api.github.com/repos/mantidproject/mantid/releases{/id}","deployments_url":"https://api.github.com/repos/mantidproject/mantid/deployments","created_at":"2011-10-17T19:07:38Z","updated_at":"2016-07-15T19:42:24Z","pushed_at":"2016-07-22T10:41:18Z","git_url":"git://github.com/mantidproject/mantid.git","ssh_url":"git@github.com:mantidproject/mantid.git","clone_url":"https://github.com/mantidproject/mantid.git","svn_url":"https://github.com/mantidproject/mantid","homepage":"www.mantidproject.org","size":429353,"stargazers_count":46,"watchers_count":46,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":35,"mirror_url":null,"open_issues_count":1588,"forks":35,"open_issues":1588,"watchers":46,"default_branch":"master"}},"base":{"label":"mantidproject:master","ref":"master","sha":"88d29260ef8e79be451e9eef091566469baf82e3","user":{"login":"mantidproject","id":671496,"avatar_url":"https://avatars.githubusercontent.com/u/671496?v=3","gravatar_id":"","url":"https://api.github.com/users/mantidproject","html_url":"https://github.com/mantidproject","followers_url":"https://api.github.com/users/mantidproject/followers","following_url":"https://api.github.com/users/mantidproject/following{/other_user}","gists_url":"https://api.github.com/users/mantidproject/gists{/gist_id}","starred_url":"https://api.github.com/users/mantidproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mantidproject/subscriptions","organizations_url":"https://api.github.com/users/mantidproject/orgs","repos_url":"https://api.github.com/users/mantidproject/repos","events_url":"https://api.github.com/users/mantidproject/events{/privacy}","received_events_url":"https://api.github.com/users/mantidproject/received_events","type":"Organization","site_admin":false},"repo":{"id":2594116,"name":"mantid","full_name":"mantidproject/mantid","owner":{"login":"mantidproject","id":671496,"avatar_url":"https://avatars.githubusercontent.com/u/671496?v=3","gravatar_id":"","url":"https://api.github.com/users/mantidproject","html_url":"https://github.com/mantidproject","followers_url":"https://api.github.com/users/mantidproject/followers","following_url":"https://api.github.com/users/mantidproject/following{/other_user}","gists_url":"https://api.github.com/users/mantidproject/gists{/gist_id}","starred_url":"https://api.github.com/users/mantidproject/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mantidproject/subscriptions","organizations_url":"https://api.github.com/users/mantidproject/orgs","repos_url":"https://api.github.com/users/mantidproject/repos","events_url":"https://api.github.com/users/mantidproject/events{/privacy}","received_events_url":"https://api.github.com/users/mantidproject/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mantidproject/mantid","description":"Main repository for Mantid code","fork":false,"url":"https://api.github.com/repos/mantidproject/mantid","forks_url":"https://api.github.com/repos/mantidproject/mantid/forks","keys_url":"https://api.github.com/repos/mantidproject/mantid/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mantidproject/mantid/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mantidproject/mantid/teams","hooks_url":"https://api.github.com/repos/mantidproject/mantid/hooks","issue_events_url":"https://api.github.com/repos/mantidproject/mantid/issues/events{/number}","events_url":"https://api.github.com/repos/mantidproject/mantid/events","assignees_url":"https://api.github.com/repos/mantidproject/mantid/assignees{/user}","branches_url":"https://api.github.com/repos/mantidproject/mantid/branches{/branch}","tags_url":"https://api.github.com/repos/mantidproject/mantid/tags","blobs_url":"https://api.github.com/repos/mantidproject/mantid/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mantidproject/mantid/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mantidproject/mantid/git/refs{/sha}","trees_url":"https://api.github.com/repos/mantidproject/mantid/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mantidproject/mantid/statuses/{sha}","languages_url":"https://api.github.com/repos/mantidproject/mantid/languages","stargazers_url":"https://api.github.com/repos/mantidproject/mantid/stargazers","contributors_url":"https://api.github.com/repos/mantidproject/mantid/contributors","subscribers_url":"https://api.github.com/repos/mantidproject/mantid/subscribers","subscription_url":"https://api.github.com/repos/mantidproject/mantid/subscription","commits_url":"https://api.github.com/repos/mantidproject/mantid/commits{/sha}","git_commits_url":"https://api.github.com/repos/mantidproject/mantid/git/commits{/sha}","comments_url":"https://api.github.com/repos/mantidproject/mantid/comments{/number}","issue_comment_url":"https://api.github.com/repos/mantidproject/mantid/issues/comments{/number}","contents_url":"https://api.github.com/repos/mantidproject/mantid/contents/{+path}","compare_url":"https://api.github.com/repos/mantidproject/mantid/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mantidproject/mantid/merges","archive_url":"https://api.github.com/repos/mantidproject/mantid/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mantidproject/mantid/downloads","issues_url":"https://api.github.com/repos/mantidproject/mantid/issues{/number}","pulls_url":"https://api.github.com/repos/mantidproject/mantid/pulls{/number}","milestones_url":"https://api.github.com/repos/mantidproject/mantid/milestones{/number}","notifications_url":"https://api.github.com/repos/mantidproject/mantid/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mantidproject/mantid/labels{/name}","releases_url":"https://api.github.com/repos/mantidproject/mantid/releases{/id}","deployments_url":"https://api.github.com/repos/mantidproject/mantid/deployments","created_at":"2011-10-17T19:07:38Z","updated_at":"2016-07-15T19:42:24Z","pushed_at":"2016-07-22T10:41:18Z","git_url":"git://github.com/mantidproject/mantid.git","ssh_url":"git@github.com:mantidproject/mantid.git","clone_url":"https://github.com/mantidproject/mantid.git","svn_url":"https://github.com/mantidproject/mantid","homepage":"www.mantidproject.org","size":429353,"stargazers_count":46,"watchers_count":46,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":35,"mirror_url":null,"open_issues_count":1588,"forks":35,"open_issues":1588,"watchers":46,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/16941"},"html":{"href":"https://github.com/mantidproject/mantid/pull/16941"},"issue":{"href":"https://api.github.com/repos/mantidproject/mantid/issues/16941"},"comments":{"href":"https://api.github.com/repos/mantidproject/mantid/issues/16941/comments"},"review_comments":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/16941/comments"},"review_comment":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mantidproject/mantid/pulls/16941/commits"},"statuses":{"href":"https://api.github.com/repos/mantidproject/mantid/statuses/5614ec38ffc1c9818eb8d174299419c133f4b068"}}}}
{"actor":{"display_login":"raquelalvarezbanos"}}