Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / LocalizabilityAttribute.cs / 1305600 / LocalizabilityAttribute.cs
//------------------------------------------------------------------------
//
// Microsoft Windows Client Platform
// Copyright (C) Microsoft Corporation, 2001
//
// File: LocalizabiltyAttribute.cs
//
// Contents: Localizability attributes
//
// Created: 3/17/2004 Garyyang
// 7/19/2004 garyyang, Update according to new spec.
//
//
//-----------------------------------------------------------------------
using System;
using System.ComponentModel;
namespace System.Windows
{
///
/// Specifies the localization preferences for a class or property in Baml
/// The attribute can be specified on Class, Property and Method
///
[AttributeUsage(
AttributeTargets.Class
| AttributeTargets.Property
| AttributeTargets.Field
| AttributeTargets.Enum
| AttributeTargets.Struct,
AllowMultiple = false,
Inherited = true)
]
public sealed class LocalizabilityAttribute : Attribute
{
///
/// Construct a LocalizabilityAttribute to describe the localizability of a property.
/// Modifiability property default to Modifiability.Modifiable, and Readability property
/// default to Readability.Readable.
///
/// the string category given to the item
public LocalizabilityAttribute(LocalizationCategory category)
{
if ( category < LocalizationCategory.None
|| category > LocalizationCategory.NeverLocalize)
{
throw new InvalidEnumArgumentException(
"category",
(int)category,
typeof(LocalizationCategory)
);
}
_category = category;
_readability = Readability.Readable;
_modifiability = Modifiability.Modifiable;
}
///
/// String category
///
/// gets or sets the string category for the item
public LocalizationCategory Category
{
// should have only getter, because it is a required parameter to the constructor
get { return _category; }
}
///
/// Get or set the readability of the attribute's targeted value
///
/// Readability
public Readability Readability
{
get { return _readability; }
set
{
if ( value != Readability.Unreadable
&& value != Readability.Readable
&& value != Readability.Inherit)
{
throw new InvalidEnumArgumentException("Readability", (int) value, typeof(Readability));
}
_readability = value;
}
}
///
/// Get or set the modifiability of the attribute's targeted value
///
/// Modifiability
public Modifiability Modifiability
{
get { return _modifiability; }
set
{
if ( value != Modifiability.Unmodifiable
&& value != Modifiability.Modifiable
&& value != Modifiability.Inherit)
{
throw new InvalidEnumArgumentException("Modifiability", (int) value, typeof(Modifiability));
}
_modifiability = value;
}
}
//--------------------------------------------
// Private members
//--------------------------------------------
private LocalizationCategory _category;
private Readability _readability;
private Modifiability _modifiability;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------
//
// Microsoft Windows Client Platform
// Copyright (C) Microsoft Corporation, 2001
//
// File: LocalizabiltyAttribute.cs
//
// Contents: Localizability attributes
//
// Created: 3/17/2004 Garyyang
// 7/19/2004 garyyang, Update according to new spec.
//
//
//-----------------------------------------------------------------------
using System;
using System.ComponentModel;
namespace System.Windows
{
///
/// Specifies the localization preferences for a class or property in Baml
/// The attribute can be specified on Class, Property and Method
///
[AttributeUsage(
AttributeTargets.Class
| AttributeTargets.Property
| AttributeTargets.Field
| AttributeTargets.Enum
| AttributeTargets.Struct,
AllowMultiple = false,
Inherited = true)
]
public sealed class LocalizabilityAttribute : Attribute
{
///
/// Construct a LocalizabilityAttribute to describe the localizability of a property.
/// Modifiability property default to Modifiability.Modifiable, and Readability property
/// default to Readability.Readable.
///
/// the string category given to the item
public LocalizabilityAttribute(LocalizationCategory category)
{
if ( category < LocalizationCategory.None
|| category > LocalizationCategory.NeverLocalize)
{
throw new InvalidEnumArgumentException(
"category",
(int)category,
typeof(LocalizationCategory)
);
}
_category = category;
_readability = Readability.Readable;
_modifiability = Modifiability.Modifiable;
}
///
/// String category
///
/// gets or sets the string category for the item
public LocalizationCategory Category
{
// should have only getter, because it is a required parameter to the constructor
get { return _category; }
}
///
/// Get or set the readability of the attribute's targeted value
///
/// Readability
public Readability Readability
{
get { return _readability; }
set
{
if ( value != Readability.Unreadable
&& value != Readability.Readable
&& value != Readability.Inherit)
{
throw new InvalidEnumArgumentException("Readability", (int) value, typeof(Readability));
}
_readability = value;
}
}
///
/// Get or set the modifiability of the attribute's targeted value
///
/// Modifiability
public Modifiability Modifiability
{
get { return _modifiability; }
set
{
if ( value != Modifiability.Unmodifiable
&& value != Modifiability.Modifiable
&& value != Modifiability.Inherit)
{
throw new InvalidEnumArgumentException("Modifiability", (int) value, typeof(Modifiability));
}
_modifiability = value;
}
}
//--------------------------------------------
// Private members
//--------------------------------------------
private LocalizationCategory _category;
private Readability _readability;
private Modifiability _modifiability;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ByeOperation11AsyncResult.cs
- SchemaElementLookUpTable.cs
- WebReferencesBuildProvider.cs
- XpsS0ValidatingLoader.cs
- DeflateStream.cs
- SecurityRuntime.cs
- GlobalEventManager.cs
- WebBrowserUriTypeConverter.cs
- ResponseBodyWriter.cs
- Fonts.cs
- ColumnWidthChangingEvent.cs
- ValidationResult.cs
- BindableAttribute.cs
- QueryInterceptorAttribute.cs
- Cursors.cs
- BindingList.cs
- HtmlDocument.cs
- AggregationMinMaxHelpers.cs
- CodeCatchClauseCollection.cs
- PolicyException.cs
- AnimationTimeline.cs
- HtmlShim.cs
- IDispatchConstantAttribute.cs
- XamlPoint3DCollectionSerializer.cs
- SocketElement.cs
- AjaxFrameworkAssemblyAttribute.cs
- NavigationService.cs
- AmbientValueAttribute.cs
- EventItfInfo.cs
- GeneratedCodeAttribute.cs
- SqlSupersetValidator.cs
- SmtpDigestAuthenticationModule.cs
- SqlClientFactory.cs
- TypeConstant.cs
- TextureBrush.cs
- SecurityHeader.cs
- ListViewCancelEventArgs.cs
- WindowsRichEditRange.cs
- PerformanceCountersElement.cs
- QuotedStringFormatReader.cs
- cookieexception.cs
- FileUpload.cs
- HtmlInputRadioButton.cs
- SkipQueryOptionExpression.cs
- ApplicationProxyInternal.cs
- ListParaClient.cs
- NgenServicingAttributes.cs
- SapiAttributeParser.cs
- HttpModuleCollection.cs
- DocumentScope.cs
- TextRunTypographyProperties.cs
- ResourceWriter.cs
- TableRowGroup.cs
- SqlClientPermission.cs
- NativeWrapper.cs
- UniqueConstraint.cs
- SHA512.cs
- AppDomainProtocolHandler.cs
- PingReply.cs
- CompiledQueryCacheEntry.cs
- EntitySqlQueryState.cs
- ConfigXmlAttribute.cs
- SessionSwitchEventArgs.cs
- WebBrowserContainer.cs
- HttpBrowserCapabilitiesWrapper.cs
- LocatorPart.cs
- DoubleAnimation.cs
- TrimSurroundingWhitespaceAttribute.cs
- ActivationWorker.cs
- EdmItemError.cs
- DragDeltaEventArgs.cs
- SelectionItemProviderWrapper.cs
- ObjectListComponentEditor.cs
- DataTableClearEvent.cs
- QilReference.cs
- CheckBoxList.cs
- CredentialCache.cs
- StopStoryboard.cs
- TextEvent.cs
- DataReaderContainer.cs
- QueryOperator.cs
- ListBindingHelper.cs
- SelectedDatesCollection.cs
- DataPager.cs
- CodePageEncoding.cs
- DrawListViewSubItemEventArgs.cs
- grammarelement.cs
- _LocalDataStore.cs
- HtmlForm.cs
- xmlfixedPageInfo.cs
- DbMetaDataFactory.cs
- PathTooLongException.cs
- SortedList.cs
- LinqDataSourceEditData.cs
- NumberEdit.cs
- HMACSHA384.cs
- SqlTriggerAttribute.cs
- Int32RectConverter.cs
- KeyFrames.cs
- PasswordRecovery.cs