| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/browser/devtools/devtools_toggle_action.h" |
| |
| DevToolsToggleAction::RevealParams::RevealParams(const base::string16& url, |
| size_t line_number, |
| size_t column_number) |
| : url(url), line_number(line_number), column_number(column_number) { |
| } |
| |
| DevToolsToggleAction::RevealParams::~RevealParams() { |
| } |
| |
| DevToolsToggleAction::DevToolsToggleAction(Type type) : type_(type) { |
| } |
| |
| DevToolsToggleAction::DevToolsToggleAction(RevealParams* params) |
| : type_(kReveal), params_(params) { |
| } |
| |
| DevToolsToggleAction::DevToolsToggleAction(const DevToolsToggleAction& rhs) |
| : type_(rhs.type_), |
| params_(rhs.params_.get() ? new RevealParams(*rhs.params_) : NULL) { |
| } |
| |
| void DevToolsToggleAction::operator=(const DevToolsToggleAction& rhs) { |
| type_ = rhs.type_; |
| if (rhs.params_.get()) |
| params_.reset(new RevealParams(*rhs.params_)); |
| } |
| |
| DevToolsToggleAction::~DevToolsToggleAction() { |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::Show() { |
| return DevToolsToggleAction(kShow); |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::ShowConsole() { |
| return DevToolsToggleAction(kShowConsole); |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::Inspect() { |
| return DevToolsToggleAction(kInspect); |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::Toggle() { |
| return DevToolsToggleAction(kToggle); |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::Reveal( |
| const base::string16& url, |
| size_t line_number, |
| size_t column_number) { |
| return DevToolsToggleAction( |
| new RevealParams(url, line_number, column_number)); |
| } |
| |
| // static |
| DevToolsToggleAction DevToolsToggleAction::NoOp() { |
| return DevToolsToggleAction(kNoOp); |
| } |