Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Design / Util / DesignerUtility.cs / 1305376 / DesignerUtility.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.Design.MobileControls.Util
{
using System;
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Reflection;
using System.Web.UI.MobileControls;
using System.Globalization;
[
System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand,
Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)
]
[Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")]
internal class DesignerUtility
{
/* Removed for DCR 4240
internal static bool IsValidName(String name)
{
if (name == null || name.Length == 0)
{
return false;
}
for (int pos = 0; pos < name.Length; pos++)
{
Char ch = name[pos];
if (Char.IsWhiteSpace(ch) || ch.Equals('"') || ch.Equals('<') ||
ch.Equals('>') || ch.Equals('\'') || ch.Equals('&'))
{
return false;
}
}
return true;
}
*/
internal static bool TopLevelControl(MobileControl control)
{
if (control is Form || control is StyleSheet)
{
return true;
}
return false;
}
internal static String ChoiceToUniqueIdentifier(DeviceSpecificChoice choice)
{
Debug.Assert(choice != null);
return ChoiceToUniqueIdentifier(choice.Filter, choice.Argument);
}
internal static String ChoiceToUniqueIdentifier(String filter, String argument)
{
if (String.IsNullOrEmpty(filter))
{
filter = SR.GetString(SR.DeviceFilter_DefaultChoice);
}
if (argument == null)
{
argument = String.Empty;
}
return String.Format(CultureInfo.InvariantCulture, "{0} (\"{1}\")", filter, argument);
}
// NOTE: Throws CheckoutException.Canceled if user cancels checkout.
internal static void EnsureFileCheckedOut(ISite site, String fileName)
{
Type serviceType = Type.GetType("Microsoft.VisualStudio.Shell.VsCheckoutService, " + AssemblyRef.MicrosoftVisualStudio);
// Do nothing if service cannot be found.
if (serviceType == null) {
// Debug.Fail("type Microsoft.VisualStudio.Shell.VsCheckoutService cannot be found in DesignerUtility.EnsureFileCheckedOut.");
return;
}
Object serviceInstance = System.Activator.CreateInstance(
serviceType, new Object[] { site });
try
{
Object[] args = new Object[] { fileName };
bool fileNeedsCheckout = (bool) serviceType.InvokeMember(
"DoesFileNeedCheckout",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
args, CultureInfo.InvariantCulture
);
if(fileNeedsCheckout)
{
serviceType.InvokeMember(
"CheckoutFile",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
args, CultureInfo.InvariantCulture
);
}
}
finally
{
serviceType.InvokeMember(
"Dispose",
BindingFlags.Default | BindingFlags.InvokeMethod,
null,
serviceInstance,
new Object[] {}, CultureInfo.InvariantCulture
);
serviceInstance = null;
}
}
// Ideally we would refactor the rest of the common code in the ADF/PO/DFE
// dialogs into a separate manager object.
internal static StringCollection GetDuplicateChoiceTreeNodes(ICollection treeNodes)
{
HybridDictionary visitedChoices = new HybridDictionary();
StringCollection duplicateChoices = new StringCollection();
foreach(ChoiceTreeNode node in treeNodes)
{
String key = ChoiceToUniqueIdentifier(node.Name, node.Argument);
if(visitedChoices[key] == null)
{
visitedChoices[key] = 1;
}
else
{
if((int)visitedChoices[key] == 1)
{
duplicateChoices.Add(key);
}
visitedChoices[key] = ((int)visitedChoices[key]) + 1;
}
}
return duplicateChoices;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AnnotationAuthorChangedEventArgs.cs
- Parameter.cs
- TraceUtility.cs
- TextRangeSerialization.cs
- WebPartConnectVerb.cs
- httpapplicationstate.cs
- OleDbInfoMessageEvent.cs
- PostBackOptions.cs
- PropertyDescriptorGridEntry.cs
- RepeaterDataBoundAdapter.cs
- IgnoreSectionHandler.cs
- BaseProcessor.cs
- LogReservationCollection.cs
- BoolExpression.cs
- LayoutInformation.cs
- Version.cs
- TypeDescriptor.cs
- DataGridViewHeaderCell.cs
- ContractMapping.cs
- SamlAudienceRestrictionCondition.cs
- WindowsListBox.cs
- SelectionItemPattern.cs
- RoleManagerModule.cs
- SignatureHelper.cs
- ToolStripRenderer.cs
- Dynamic.cs
- TextBoxRenderer.cs
- EndOfStreamException.cs
- LookupBindingPropertiesAttribute.cs
- SiteMapNodeItemEventArgs.cs
- ISAPIRuntime.cs
- ClientRuntimeConfig.cs
- CultureMapper.cs
- SystemNetHelpers.cs
- ParallelLoopState.cs
- FormatterServices.cs
- MergablePropertyAttribute.cs
- PointConverter.cs
- TempEnvironment.cs
- HtmlTextArea.cs
- Stroke.cs
- SerializableReadOnlyDictionary.cs
- ManagedCodeMarkers.cs
- WebAdminConfigurationHelper.cs
- CodeAttachEventStatement.cs
- XmlSchemaImport.cs
- TimeSpanValidator.cs
- XhtmlConformanceSection.cs
- ProcessHostFactoryHelper.cs
- Translator.cs
- CodeArgumentReferenceExpression.cs
- CacheEntry.cs
- SqlProviderServices.cs
- DataBinding.cs
- ObjectAnimationUsingKeyFrames.cs
- HttpDigestClientCredential.cs
- DiscriminatorMap.cs
- ZipFileInfoCollection.cs
- MonitorWrapper.cs
- ComPlusInstanceProvider.cs
- SchemaImporterExtension.cs
- BaseTemplateBuildProvider.cs
- MetadataPropertyAttribute.cs
- _BasicClient.cs
- Floater.cs
- StorageEndPropertyMapping.cs
- QueryOperatorEnumerator.cs
- XmlNamespaceMapping.cs
- FragmentQuery.cs
- ResourceType.cs
- MethodExpression.cs
- LayoutUtils.cs
- PixelFormatConverter.cs
- JsonServiceDocumentSerializer.cs
- activationcontext.cs
- SingleConverter.cs
- ScalarConstant.cs
- ContentPresenter.cs
- CollectionBuilder.cs
- MgmtConfigurationRecord.cs
- Grid.cs
- SymbolEqualComparer.cs
- SettingsBase.cs
- XamlInt32CollectionSerializer.cs
- SafeLibraryHandle.cs
- CellRelation.cs
- BatchServiceHost.cs
- MetadataCache.cs
- DateTimeValueSerializerContext.cs
- InstancePersistenceContext.cs
- InterleavedZipPartStream.cs
- HealthMonitoringSectionHelper.cs
- CodeFieldReferenceExpression.cs
- BigInt.cs
- SqlIdentifier.cs
- UserControlCodeDomTreeGenerator.cs
- ObjectListSelectEventArgs.cs
- TagMapInfo.cs
- DragDrop.cs
- EventLogPropertySelector.cs