ViewSetWorksharingDisplayMode Method |
Sets the worksharing display mode for this view.
Namespace: Autodesk.Revit.DBAssembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntaxpublic void SetWorksharingDisplayMode(
WorksharingDisplayMode displayMode
)
Public Sub SetWorksharingDisplayMode (
displayMode As WorksharingDisplayMode
)
public:
void SetWorksharingDisplayMode(
WorksharingDisplayMode displayMode
)
member SetWorksharingDisplayMode :
displayMode : WorksharingDisplayMode -> unit
Parameters
- displayMode WorksharingDisplayMode
-
The desired display mode. "Off" will turn off all worksharing display modes.
Exceptions
Remarks
Turning on a worksharing display mode will disable other temporary view modes such as
reveal hidden elements and temporary hide/isolate.
Examplepublic Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
View activeView = commandData.View;
Document doc = activeView.Document;
Color red = new Color(0xFF, 0x00, 0x00);
WorksharingDisplayGraphicSettings settingsToApply = new WorksharingDisplayGraphicSettings(true, red);
using (Transaction t = new Transaction(doc, "Toggle display mode"))
{
t.Start();
WorksharingDisplaySettings settings = WorksharingDisplaySettings.GetOrCreateWorksharingDisplaySettings(doc);
switch (activeView.GetWorksharingDisplayMode())
{
case WorksharingDisplayMode.Off:
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.CheckoutStatus);
settings.SetGraphicOverrides(CheckoutStatus.OwnedByOtherUser, settingsToApply);
break;
case WorksharingDisplayMode.CheckoutStatus:
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.ModelUpdates);
settings.SetGraphicOverrides(ModelUpdatesStatus.UpdatedInCentral, settingsToApply);
break;
case WorksharingDisplayMode.ModelUpdates:
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Owners);
settings.SetGraphicOverrides("Target user", settingsToApply);
break;
case WorksharingDisplayMode.Owners:
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Worksets);
settings.SetGraphicOverrides(doc.GetWorksetTable().GetActiveWorksetId(), settingsToApply);
break;
case WorksharingDisplayMode.Worksets:
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Off);
break;
}
t.Commit();
}
return Result.Succeeded;
}
Public Function Execute(commandData As ExternalCommandData, ByRef message As String, elements As ElementSet) As Result Implements IExternalCommand.Execute
Dim activeView As View = commandData.View
Dim doc As Document = activeView.Document
Dim red As New Color(&HFF, &H0, &H0)
Dim settingsToApply As New WorksharingDisplayGraphicSettings(True, red)
Using t As New Transaction(doc, "Toggle display mode")
t.Start()
Dim settings As WorksharingDisplaySettings = WorksharingDisplaySettings.GetOrCreateWorksharingDisplaySettings(doc)
Select Case activeView.GetWorksharingDisplayMode()
Case WorksharingDisplayMode.Off
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.CheckoutStatus)
settings.SetGraphicOverrides(CheckoutStatus.OwnedByOtherUser, settingsToApply)
Exit Select
Case WorksharingDisplayMode.CheckoutStatus
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.ModelUpdates)
settings.SetGraphicOverrides(ModelUpdatesStatus.UpdatedInCentral, settingsToApply)
Exit Select
Case WorksharingDisplayMode.ModelUpdates
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Owners)
settings.SetGraphicOverrides("Target user", settingsToApply)
Exit Select
Case WorksharingDisplayMode.Owners
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Worksets)
settings.SetGraphicOverrides(doc.GetWorksetTable().GetActiveWorksetId(), settingsToApply)
Exit Select
Case WorksharingDisplayMode.Worksets
activeView.SetWorksharingDisplayMode(WorksharingDisplayMode.Off)
Exit Select
End Select
t.Commit()
End Using
Return Result.Succeeded
End Function
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.
See Also