mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-17 02:51:36 -05:00
Show disconnect in context menu only when connectionProfile connected (#150)
This commit is contained in:
committed by
Kevin Cunnane
parent
1d89cb6e83
commit
10f2087707
@@ -25,6 +25,7 @@ import { ConnectionProfileGroup } from 'sql/parts/connection/common/connectionPr
|
|||||||
import { ConnectionProfile } from 'sql/parts/connection/common/connectionProfile';
|
import { ConnectionProfile } from 'sql/parts/connection/common/connectionProfile';
|
||||||
import { NewProfilerAction } from 'sql/parts/profiler/contrib/profilerActions';
|
import { NewProfilerAction } from 'sql/parts/profiler/contrib/profilerActions';
|
||||||
import { TreeUpdateUtils } from 'sql/parts/registeredServer/viewlet/treeUpdateUtils';
|
import { TreeUpdateUtils } from 'sql/parts/registeredServer/viewlet/treeUpdateUtils';
|
||||||
|
import { IConnectionManagementService, IErrorMessageService } from 'sql/parts/connection/common/connectionManagement';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides actions for the server tree elements
|
* Provides actions for the server tree elements
|
||||||
@@ -32,7 +33,8 @@ import { TreeUpdateUtils } from 'sql/parts/registeredServer/viewlet/treeUpdateUt
|
|||||||
export class ServerTreeActionProvider extends ContributableActionProvider {
|
export class ServerTreeActionProvider extends ContributableActionProvider {
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@IInstantiationService private _instantiationService: IInstantiationService
|
@IInstantiationService private _instantiationService: IInstantiationService,
|
||||||
|
@IConnectionManagementService private _connectionManagementService: IConnectionManagementService
|
||||||
) {
|
) {
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
@@ -74,10 +76,16 @@ export class ServerTreeActionProvider extends ContributableActionProvider {
|
|||||||
let actions: IAction[] = [
|
let actions: IAction[] = [
|
||||||
this._instantiationService.createInstance(ManageConnectionAction, ManageConnectionAction.ID, ManageConnectionAction.LABEL),
|
this._instantiationService.createInstance(ManageConnectionAction, ManageConnectionAction.ID, ManageConnectionAction.LABEL),
|
||||||
this._instantiationService.createInstance(NewQueryAction, NewQueryAction.ID, NewQueryAction.LABEL),
|
this._instantiationService.createInstance(NewQueryAction, NewQueryAction.ID, NewQueryAction.LABEL),
|
||||||
this._instantiationService.createInstance(DisconnectConnectionAction, DisconnectConnectionAction.ID, DisconnectConnectionAction.LABEL),
|
];
|
||||||
|
|
||||||
|
if (this._connectionManagementService.isProfileConnected(element)) {
|
||||||
|
actions.push(this._instantiationService.createInstance(DisconnectConnectionAction, DisconnectConnectionAction.ID, DisconnectConnectionAction.LABEL));
|
||||||
|
}
|
||||||
|
|
||||||
|
actions.push(
|
||||||
this._instantiationService.createInstance(DeleteConnectionAction, DeleteConnectionAction.ID, DeleteConnectionAction.DELETE_CONNECTION_LABEL, element),
|
this._instantiationService.createInstance(DeleteConnectionAction, DeleteConnectionAction.ID, DeleteConnectionAction.DELETE_CONNECTION_LABEL, element),
|
||||||
this._instantiationService.createInstance(RefreshAction, RefreshAction.ID, RefreshAction.LABEL, tree, element)
|
this._instantiationService.createInstance(RefreshAction, RefreshAction.ID, RefreshAction.LABEL, tree, element)
|
||||||
];
|
);
|
||||||
|
|
||||||
if (process.env['VSCODE_DEV']) {
|
if (process.env['VSCODE_DEV']) {
|
||||||
actions.push(this._instantiationService.createInstance(NewProfilerAction, NewProfilerAction.ID, NewProfilerAction.LABEL, NewProfilerAction.ICON));
|
actions.push(this._instantiationService.createInstance(NewProfilerAction, NewProfilerAction.ID, NewProfilerAction.LABEL, NewProfilerAction.ICON));
|
||||||
|
|||||||
Reference in New Issue
Block a user