File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ /*---------------------------------------------------------------------------------------------
2+ * Copyright (c) Microsoft Corporation. All rights reserved.
3+ * Licensed under the MIT License. See License.txt in the project root for license information.
4+ *--------------------------------------------------------------------------------------------*/
5+
6+ import { Registry } from 'vs/platform/platform' ;
7+ import { IConstructorSignature0 } from 'vs/platform/instantiation/common/instantiation' ;
8+
9+ export interface IActivity {
10+ id : string ;
11+ name : string ;
12+ cssClass : string ;
13+ }
14+
15+ export const Extensions = {
16+ Activities : 'workbench.contributions.activities'
17+ } ;
18+
19+ export interface IActivityRegistry {
20+ registerActivity ( descriptor : IConstructorSignature0 < IActivity > ) : void ;
21+ getActivities ( ) : IConstructorSignature0 < IActivity > [ ] ;
22+ }
23+
24+ export class ActivityRegistry implements IActivityRegistry {
25+
26+ private activityDescriptors = new Set < IConstructorSignature0 < IActivity > > ( ) ;
27+
28+ registerActivity ( descriptor : IConstructorSignature0 < IActivity > ) : void {
29+ this . activityDescriptors . add ( descriptor ) ;
30+ }
31+
32+ getActivities ( ) : IConstructorSignature0 < IActivity > [ ] {
33+ const result : IConstructorSignature0 < IActivity > [ ] = [ ] ;
34+ this . activityDescriptors . forEach ( d => result . push ( d ) ) ;
35+ return result ;
36+ }
37+ }
38+
39+ Registry . add ( Extensions . Activities , new ActivityRegistry ( ) ) ;
You can’t perform that action at this time.
0 commit comments