blob: f14ee0b70e27b36dd5ed8ae8207cc8dbfa91632e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { Disposable } from 'vs/base/common/lifecycle';
import { Event, Emitter } from 'vs/base/common/event';
export interface INotebookFindFiltersChangeEvent {
markupInput?: boolean;
markupPreview?: boolean;
codeInput?: boolean;
codeOutput?: boolean;
}
export class NotebookFindFilters extends Disposable {
private readonly _onDidChange: Emitter<INotebookFindFiltersChangeEvent> = this._register(new Emitter<INotebookFindFiltersChangeEvent>());
readonly onDidChange: Event<INotebookFindFiltersChangeEvent> = this._onDidChange.event;
private _markupInput: boolean = true;
get markupInput(): boolean {
return this._markupInput;
}
set markupInput(value: boolean) {
if (this._markupInput !== value) {
this._markupInput = value;
this._markupPreview = !value;
this._onDidChange.fire({ markupInput: value, markupPreview: this._markupPreview });
}
}
private _markupPreview: boolean = true;
get markupPreview(): boolean {
return this._markupPreview;
}
set markupPreview(value: boolean) {
if (this._markupPreview !== value) {
this._markupPreview = value;
this._markupInput = !value;
this._onDidChange.fire({ markupPreview: value, markupInput: this._markupInput });
}
}
private _codeInput: boolean = true;
get codeInput(): boolean {
return this._codeInput;
}
set codeInput(value: boolean) {
if (this._codeInput !== value) {
this._codeInput = value;
this._onDidChange.fire({ codeInput: value });
}
}
private _codeOutput: boolean = true;
get codeOutput(): boolean {
return this._codeOutput;
}
set codeOutput(value: boolean) {
if (this._codeOutput !== value) {
this._codeOutput = value;
this._onDidChange.fire({ codeOutput: value });
}
}
constructor(
markupInput: boolean,
markupPreview: boolean,
codeInput: boolean,
codeOutput: boolean
) {
super();
this._markupInput = markupInput;
this._markupPreview = markupPreview;
this._codeInput = codeInput;
this._codeOutput = codeOutput;
}
update(v: NotebookFindFilters) {
this._markupInput = v.markupInput;
this._markupPreview = v.markupPreview;
this._codeInput = v.codeInput;
this._codeOutput = v.codeOutput;
}
}
|