Files
react-native-devtools-frontend/front_end/profiler/ProfileHeader.js
T
Blink Reformat 4c46d0969f The Great Blink mv for source files, part 2.
Move and rename files.

NOAUTOREVERT=true
NOPRESUBMIT=true
NOTREECHECKS=true
Bug: 768828
TBR=darin@chromium.org
NOTRY=true

Change-Id: I66d3b155808bc5bdbf237b80208e1e552bcf7f28
Reviewed-on: https://chromium-review.googlesource.com/1001153
Reviewed-by: Blink Reformat <blink-reformat@chromium.org>
Commit-Queue: Blink Reformat <blink-reformat@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#549061}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0aee4434a4dba42a42abaea9bfbc0cd196a63bc1
2018-04-07 15:32:37 +00:00

129 lines
2.6 KiB
JavaScript

// Copyright 2017 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.
/**
* @unrestricted
*/
Profiler.ProfileHeader = class extends Common.Object {
/**
* @param {!Profiler.ProfileType} profileType
* @param {string} title
*/
constructor(profileType, title) {
super();
this._profileType = profileType;
this.title = title;
this.uid = profileType.incrementProfileUid();
this._fromFile = false;
}
/**
* @param {string} title
*/
setTitle(title) {
this.title = title;
this.dispatchEventToListeners(Profiler.ProfileHeader.Events.ProfileTitleChanged, this);
}
/**
* @return {!Profiler.ProfileType}
*/
profileType() {
return this._profileType;
}
/**
* @param {?string} subtitle
* @param {boolean=} wait
*/
updateStatus(subtitle, wait) {
this.dispatchEventToListeners(
Profiler.ProfileHeader.Events.UpdateStatus, new Profiler.ProfileHeader.StatusUpdate(subtitle, wait));
}
/**
* Must be implemented by subclasses.
* @param {!Profiler.ProfileType.DataDisplayDelegate} dataDisplayDelegate
* @return {!Profiler.ProfileSidebarTreeElement}
*/
createSidebarTreeElement(dataDisplayDelegate) {
throw new Error('Not implemented.');
}
/**
* @param {!Profiler.ProfileType.DataDisplayDelegate} dataDisplayDelegate
* @return {!UI.Widget}
*/
createView(dataDisplayDelegate) {
throw new Error('Not implemented.');
}
removeTempFile() {
if (this._tempFile)
this._tempFile.remove();
}
dispose() {
}
/**
* @return {boolean}
*/
canSaveToFile() {
return false;
}
saveToFile() {
throw new Error('Not implemented');
}
/**
* @param {!File} file
* @return {!Promise<?Error>}
*/
loadFromFile(file) {
throw new Error('Not implemented');
}
/**
* @return {boolean}
*/
fromFile() {
return this._fromFile;
}
setFromFile() {
this._fromFile = true;
}
/**
* @param {!Protocol.Profiler.Profile} profile
*/
setProfile(profile) {
}
};
/**
* @unrestricted
*/
Profiler.ProfileHeader.StatusUpdate = class {
/**
* @param {?string} subtitle
* @param {boolean|undefined} wait
*/
constructor(subtitle, wait) {
/** @type {?string} */
this.subtitle = subtitle;
/** @type {boolean|undefined} */
this.wait = wait;
}
};
/** @enum {symbol} */
Profiler.ProfileHeader.Events = {
UpdateStatus: Symbol('UpdateStatus'),
ProfileReceived: Symbol('ProfileReceived'),
ProfileTitleChanged: Symbol('ProfileTitleChanged')
};