dxskininfo.pas
来自「胜天进销存源码,国产优秀的进销存」· PAS 代码 · 共 1,197 行 · 第 1/4 页
PAS
1,197 行
{********************************************************************}
{ }
{ Developer Express Visual Component Library }
{ Express Cross Platform Library classes }
{ }
{ Copyright (c) 2000-2008 Developer Express Inc. }
{ ALL RIGHTS RESERVED }
{ }
{ The entire contents of this file is protected by U.S. and }
{ International Copyright Laws. Unauthorized reproduction, }
{ reverse-engineering, and distribution of all or any portion of }
{ the code contained in this file is strictly prohibited and may }
{ result in severe civil and criminal penalties and will be }
{ prosecuted to the maximum extent possible under the law. }
{ }
{ RESTRICTIONS }
{ }
{ THIS SOURCE CODE AND ALL RESULTING INTERMEDIATE FILES }
{ (DCU, OBJ, DLL, ETC.) ARE CONFIDENTIAL AND PROPRIETARY TRADE }
{ SECRETS OF DEVELOPER EXPRESS INC. THE REGISTERED DEVELOPER IS }
{ LICENSED TO DISTRIBUTE THE EXPRESSCROSSPLATFORMLIBRARY AND ALL }
{ ACCOMPANYING VCL CONTROLS AS PART OF AN EXECUTABLE PROGRAM }
{ ONLY. }
{ }
{ THE SOURCE CODE CONTAINED WITHIN THIS FILE AND ALL RELATED }
{ FILES OR ANY PORTION OF ITS CONTENTS SHALL AT NO TIME BE }
{ COPIED, TRANSFERRED, SOLD, DISTRIBUTED, OR OTHERWISE MADE }
{ AVAILABLE TO OTHER INDIVIDUALS WITHOUT EXPRESS WRITTEN CONSENT }
{ AND PERMISSION FROM DEVELOPER EXPRESS INC. }
{ }
{ CONSULT THE END USER LICENSE AGREEMENT FOR INFORMATION ON }
{ ADDITIONAL RESTRICTIONS. }
{ }
{********************************************************************}
unit dxSkinInfo;
interface
uses
Windows, Classes, Graphics, SysUtils, cxClasses, cxGraphics, cxLookAndFeels,
cxGeometry, cxLookAndFeelPainters, dxSkinsCore, dxSkinsStrs;
type
{ TdxSkinScrollInfo }
TdxSkinScrollInfo = class(TObject)
private
FElement: TdxSkinElement;
FImageIndex: Integer;
public
constructor Create(AElement: TdxSkinElement; AImageIndex: Integer;
APart: TcxScrollBarPart);
function Draw(DC: HDC; const R: TRect; AImageIndex: Integer;
AState: TdxSkinElementState): Boolean;
property Element: TdxSkinElement read FElement;
property ImageIndex: Integer read FImageIndex;
end;
TdxSkinFormIcon = (sfiMenu, sfiHelp, sfiMinimize, sfiMaximize, sfiRestore, sfiClose);
TdxSkinFormIcons = set of TdxSkinFormIcon;
{ TdxSkinInfo }
TdxSkinInfo = class(TcxIUnknownObject, IdxSkinChangeListener, IdxSkinInfo)
private
FSkin: TdxSkin;
procedure SetSkin(ASkin: TdxSkin);
protected
Group_Bars: TdxSkinControlGroup;
Group_Common: TdxSkinControlGroup;
Group_Docking: TdxSkinControlGroup;
Group_Editors: TdxSkinControlGroup;
Group_Form: TdxSkinControlGroup;
Group_Grid: TdxSkinControlGroup;
Group_NavBar: TdxSkinControlGroup;
Group_NavPane: TdxSkinControlGroup;
Group_Ribbon: TdxSkinControlGroup;
Group_Scheduler: TdxSkinControlGroup;
Group_Tabs: TdxSkinControlGroup;
Group_VGrid: TdxSkinControlGroup;
//
CardViewSeparator: TdxSkinElement;
ClockElements: array[Boolean] of TdxSkinElement;
CheckboxElement: TdxSkinElement;
EditButtonElements: array [Boolean] of TdxSkinElement;
EditButtonGlyphs: array [TcxEditBtnKind] of TdxSkinElement;
GridGroupByBox: TdxSkinElement;
GridGroupRow: TdxSkinElement;
GridLine: TdxSkinElement;
GridFixedLine: TdxSkinElement;
IndicatorImages: TdxSkinElement;
NavigatorGlyphs: TdxSkinElement;
NavigatorGlyphsVert: TdxSkinElement;
RadioGroupButton: TdxSkinElement;
Splitter: array[Boolean] of TdxSkinElement;
TrackBarThumb: array[Boolean, TcxTrackBarTicksAlign] of TdxSkinElement;
TrackBarTrack: array[Boolean] of TdxSkinElement;
VGridCategory: TdxSkinElement;
VGridLine: array[Boolean] of TdxSkinElement;
// Colors
ContentEvenColor: TdxSkinColor;
ContentOddColor: TdxSkinColor;
ContentTextColor: TdxSkinColor;
HeaderBackgroundColor: TdxSkinColor;
HeaderBackgroundTextColor: TdxSkinColor;
SelectionColor: TdxSkinColor;
SelectionTextColor: TdxSkinColor;
// ExpandButton
ExpandButton: TdxSkinElement;
// Footer
FooterCell, FooterPanel: TdxSkinElement;
// header
Header, HeaderSpecial: TdxSkinElement;
// filter
FilterButtons: array[Boolean] of TdxSkinElement;
FilterPanel: TdxSkinElement;
// Scheduler3
SchedulerNavigationButtons: array[Boolean] of TdxSkinElement;
SchedulerNavigationButtonsArrow: array[Boolean] of TdxSkinElement;
//
procedure CheckItem(AItem: TObject; const AMessage: string; var ACheckedItem);
function CreateBlankElement(AGroup: TdxSkinControlGroup; const AName: string): TdxSkinElement;
function CreateBlankGroup(const AName: string): TdxSkinControlGroup;
function GetColorByName(AGroup: TdxSkinPersistent; const AName: string): TdxSkinColor;
function GetIntPropertyByName(AGroup: TdxSkinPersistent; const AName: string): TdxSkinIntegerProperty;
function GetElementColorProperty(AElement: TdxSkinPersistent; const APropName: string): TColor;
function GetElementIntProperty(AElement: TdxSkinPersistent; const APropName: string;
ADefValue: Integer = 0): Integer;
function GetGroupByName(const AName: string): TdxSkinControlGroup;
function GetElementByName(AGroup: TdxSkinControlGroup; const AName: string;
ACreateIfEmpty: Boolean = True): TdxSkinElement;
procedure InitializeGroups;
procedure InitializeBarElements;
procedure InitializeButtonElements;
procedure InitializeCheckboxElements;
procedure InitializeClockElements;
procedure InitializeColors;
procedure InitializeDockControlElements;
procedure InitializeEditButtonElements;
procedure InitializeFilterElements;
procedure InitializeFooterElements;
procedure InitializeFormElements;
procedure InitializeGridElements;
procedure InitializeGroupBoxElements;
procedure InitializeHeaderElements;
procedure InitializeIndicatorImages;
procedure InitializeNavBarElements;
procedure InitializeNavigatorElements;
procedure InitializePageControlElements;
procedure InitializeProgressBarElements;
procedure InitializeRadioGroupElements;
procedure InitializeRibbonColors;
procedure InitializeRibbonElements;
procedure InitializeRibbonProperties;
procedure InitializeSchedulerElements;
procedure InitializeScrollBarElements;
procedure InitializeSizeGripElements;
procedure InitializeSplitterElements;
procedure InitializeToolTipElements;
procedure InitializeTrackBarElements;
procedure InitializeSkinInfo; virtual;
procedure FinalizeScrollBarElements;
procedure FinalizeSkinInfo; virtual;
{ IdxSkinInfo }
function GetSkin: TdxSkin;
{ IdxSkinChangeListener }
procedure SkinChanged(Sender: TdxSkin); virtual;
public
// Button
ButtonDisabled: TdxSkinColor;
ButtonElements: TdxSkinElement;
// Colors
ContainerBorderColor: TdxSkinColor;
ContainerHighlightBorderColor: TdxSkinColor;
ContentColor: TdxSkinColor;
EditorBackgroundColors: array[Boolean] of TdxSkinColor;
EditorTextColors: array[Boolean] of TdxSkinColor;
// ProgressBar
ProgressBarElements: array[Boolean, Boolean] of TdxSkinElement;
// ScrollBars
ScrollBar_Elements: array[Boolean, TcxScrollBarPart] of TdxSkinScrollInfo;
// GroupBox
GroupBoxCaptionElements: array[TcxGroupBoxCaptionPosition] of TdxSkinElement;
GroupBoxClient: TdxSkinElement;
GroupBoxElements: array[TcxGroupBoxCaptionPosition] of TdxSkinElement;
// DockControl
DockControlBorder: TdxSkinElement;
DockControlCaption: TdxSkinElement;
DockControlCaptionNonFocusedTextColor: TColor;
DockControlHideBar: TdxSkinElement;
DockControlHideBarLeft: TdxSkinElement;
DockControlHideBarRight: TdxSkinElement;
DockControlHideBarBottom: TdxSkinElement;
DockControlHideBarButtons: TdxSkinElement;
DockControlHideBarTextColor: TdxSkinColor;
DockControlIndents: array[0..2] of Integer;
DockControlTabHeader: TdxSkinElement;
DockControlTabHeaderBackground: TdxSkinElement;
DockControlTabHeaderLine: TdxSkinElement;
DockControlTabTextColor: array[Boolean] of TdxSkinColor;
DockControlWindowButton: TdxSkinElement;
DockControlWindowButtonGlyphs: TdxSkinElement;
// PageControl
LayoutControlColor: TdxSkinColor;
PageControlButtonHorz: TdxSkinElement;
PageControlButtonVert: TdxSkinElement;
PageControlHeader: TdxSkinElement;
PageControlIndents: array[0..5] of Integer;
PageControlPane: TdxSkinElement;
TabTextColor: TdxSkinColor;
TabTextColorActive: TdxSkinColor;
TabTextColorDisabled: TdxSkinColor;
TabTextColorHot: TdxSkinColor;
// NavBar
NavBarBackgroundColor: TdxSkinElement;
NavBarGroupButtons: array [Boolean] of TdxSkinElement;
NavBarGroupClient: TdxSkinElement;
NavBarGroupHeader: TdxSkinElement;
NavBarItem: TdxSkinElement;
NavPaneCaptionFontSize: TdxSkinIntegerProperty;
NavPaneCaptionHeight: TdxSkinIntegerProperty;
NavPaneCollapseButton: TdxSkinElement;
NavPaneCollapsedGroupClient: TdxSkinElement;
NavPaneExpandButton: TdxSkinElement;
NavPaneFormBorder: TdxSkinElement;
NavPaneFormSizeGrip: TdxSkinElement;
NavPaneGroupButton: array[Boolean] of TdxSkinElement;
NavPaneGroupCaption: TdxSkinElement;
NavPaneGroupClient: TdxSkinElement;
NavPaneItem: TdxSkinElement;
NavPaneOverflowPanel: TdxSkinElement;
NavPaneOverflowPanelExpandedItem: TdxSkinElement;
NavPaneOverflowPanelItem: TdxSkinElement;
NavPaneScrollButtons: array[Boolean] of TdxSkinElement;
NavPaneSelectedItem: TdxSkinElement;
NavPaneSplitter: TdxSkinElement;
// Form
FormBorderWidths: array[Boolean] of TRect;
FormCaptionDelta: Integer;
FormContent: TdxSkinElement;
FormFrames: array[Boolean, TcxBorder] of TdxSkinElement;
FormIcons: array[Boolean, TdxSkinFormIcon] of TdxSkinElement;
FormInactiveColor: TdxSkinColor;
FormStatusBar: TdxSkinElement;
FormTextShadowColor: TdxSkinColor;
SizeGrip: TdxSkinElement;
// Scheduler
SchedulerAllDayArea: array[Boolean] of TdxSkinElement;
SchedulerAppointment: array[Boolean] of TdxSkinElement;
SchedulerAppointmentBorder: TdxSkinColor;
SchedulerAppointmentBorderSize: TdxSkinIntegerProperty;
SchedulerAppointmentMask: TdxSkinElement;
SchedulerAppointmentShadow: array[Boolean] of TdxSkinElement;
SchedulerCurrentTimeIndicator: TdxSkinElement;
SchedulerMoreButton: TdxSkinElement;
SchedulerNavigatorColor: TdxSkinColor;
SchedulerTimeGridCurrentTimeIndicator: TdxSkinElement;
SchedulerTimeGridHeader: array[Boolean] of TdxSkinElement;
SchedulerTimeLine: TdxSkinElement;
SchedulerTimeRuler: TdxSkinElement;
// Bars
Bar: TdxSkinElement;
BarCustomize: TdxSkinElement;
BarCustomizeVertical: TdxSkinElement;
BarDisabledTextColor: TdxSkinColor;
BarDrag: TdxSkinElement;
BarDragVertical: TdxSkinElement;
BarSeparator: TdxSkinElement;
BarVertical: TdxSkinElement;
BarVerticalSeparator: TdxSkinElement;
Dock: TdxSkinElement;
FloatingBar: TdxSkinElement;
LinkBorderPainter: TdxSkinElement;
LinkSelected: TdxSkinElement;
MainMenu: TdxSkinElement;
MainMenuCustomize: TdxSkinElement;
MainMenuDrag: TdxSkinElement;
MainMenuLinkSelected: TdxSkinElement;
MainMenuVertical: TdxSkinElement;
PopupMenu: TdxSkinElement;
PopupMenuCheck: TdxSkinElement;
PopupMenuExpandButton: TdxSkinElement;
PopupMenuLinkSelected: TdxSkinElement;
PopupMenuSeparator: TdxSkinElement;
PopupMenuSideStrip: TdxSkinElement;
PopupMenuSideStripNonRecent: TdxSkinElement;
PopupMenuSplitButton: TdxSkinElement;
PopupMenuSplitButton2: TdxSkinElement;
ScreenTipItem: TdxSkinColor;
ScreenTipSeparator: TdxSkinElement;
ScreenTipTitleItem: TdxSkinColor;
ScreenTipWindow: TdxSkinElement;
//
RibbonApplicationButton: TdxSkinElement;
RibbonApplicationMenuBorders: array[Boolean] of TdxSkinElement;
RibbonButtonArrow: TdxSkinElement;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?