⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oleconsts.pas

📁 是一个delphi的流程制作软件
💻 PAS
📖 第 1 页 / 共 2 页
字号:
//--- Ole Constant and Enum Conversions ----------------------------------------
//
// Conversion of C styled constants and enumerations into Delphi ones.
// Maintains a list of known clipboard formats for use in property editors etc.
// Also performs OleInitialize and OleUnOnitalize.
//
// Always use!    Use Always!
//
// Grahame Marsh
// Freeware for UNDU - you get it for free I make no promises
// gsmarsh@aol.com
//------------------------------------------------------------------------------

{$INCLUDE OLE.INC}

unit OleConsts;

interface

uses
  Windows, SysUtils, Classes, ActiveX, ShlObj, CommDlg,
{$IFDEF GIF}
  GifImage,
{$ENDIF}
  Richedit, RichOle, OleDlg;

//--- UTILITIES ----------------------------------------------------------------
// Drop effects as Delphi style constants (originals in ActiveX)
const
  deNone   = DROPEFFECT_NONE;
  deMove   = DROPEFFECT_MOVE;
  deCopy   = DROPEFFECT_COPY;
  deLink   = DROPEFFECT_LINK;
  deScroll = longint(DROPEFFECT_SCROLL);

// Data transfer direction during data type enumeration (original in ActiveX)
// as Delphi style constants
const
  ddGet = DATADIR_GET;
  ddSet = DATADIR_SET;

// Type of storage medium for data formats (original in ActiveX)
// as Delphi style constants
const
  tsGlobal       = TYMED_HGLOBAL;   // handle to global memory clock
  tsFile         = TYMED_FILE;      // file
  tsStream       = TYMED_ISTREAM;   // stream interface
  tsStorage      = TYMED_ISTORAGE;  // storage interface
  tsGDI          = TYMED_GDI;       // gdi object
  tsMetafilePict = TYMED_MFPICT;    // metafilepict structure
  tsEnhMetafile  = TYMED_ENHMF;     // enhanced metafile
  tsNull         = TYMED_NULL;      // no storage

// View Aspect (original in ActiveX) as Delphi style constants
const
  dvaContent   = DVASPECT_CONTENT;
  dvaThumbnail = DVASPECT_THUMBNAIL;
  dvaIcon      = DVASPECT_ICON;
  dvaDocPrint  = DVASPECT_DOCPRINT;
  dvaShortName = DVASPECT_SHORTNAME; // in ShlObj

// Miscellaneous Ole flags (original in ActiveX) as Delphi style constants
const
  omRecomposeOnResize    = OLEMISC_RECOMPOSEONRESIZE;
  omOnlyIconic           = OLEMISC_ONLYICONIC;
  omInsertNotReplace     = OLEMISC_INSERTNOTREPLACE;
  omStatic               = OLEMISC_STATIC;
  omCantLinkInsize       = OLEMISC_CANTLINKINSIDE;
  omCanLinkByOLE         = OLEMISC_CANLINKBYOLE1;
  omIsLinkObject         = OLEMISC_ISLINKOBJECT;
  omInsizeOut            = OLEMISC_INSIDEOUT;
  omActivateWhenVisible  = OLEMISC_ACTIVATEWHENVISIBLE;
  omRenderingDI          = OLEMISC_RENDERINGISDEVICEINDEPENDENT;
  omInvisible            = OLEMISC_INVISIBLEATRUNTIME;
  omAlwaysRun            = OLEMISC_ALWAYSRUN;
  omButton               = OLEMISC_ACTSLIKEBUTTON;
  omLabel                = OLEMISC_ACTSLIKELABEL;
  omNoUIActivate         = OLEMISC_NOUIACTIVATE;
  omAlignable            = OLEMISC_ALIGNABLE;
  omSimpleFrame          = OLEMISC_SIMPLEFRAME;
  omSetClientSiteFirst   = OLEMISC_SETCLIENTSITEFIRST;
  omIMEMode              = OLEMISC_IMEMODE;
  omNoReactivate         = OLEMISC_IGNOREACTIVATEWHENVISIBLE;
  omWantsToMenuMerge     = OLEMISC_WANTSTOMENUMERGE;
  omMultiUndu            = OLEMISC_SUPPORTSMULTILEVELUNDO;

// File descriptor data validation flags (originals in ShlObj)
const
  fdCLSID      = FD_CLSID;      // $0001
  fdSizePoint  = FD_SIZEPOINT;  // $0002
  fdAttributes = FD_ATTRIBUTES; // $0004
  fdCreateTime = FD_CREATETIME; // $0008
  fdAccessTime = FD_ACCESSTIME; // $0010
  fdWritesTime = FD_WRITESTIME; // $0020
  fdFileSize   = FD_FILESIZE;   // $0040
  fdLinkUI     = FD_LINKUI;     // $8000 'link' UI is preferred

// File attributes, the first six are defined in SysUtils.pas and the
// remainder redeclared from Windows.pas
const
//  faReadOnly   = FILE_ATTRIBUTE_READONLY;   // $00000001
//  faHidden     = FILE_ATTRIBUTE_HIDDEN;     // $00000002
//  faSysFile    = FILE_ATTRIBUTE_SYSTEM;     // $00000004
//  faVolumeID   = $00000008;
//  faDirectory  = FILE_ATTRIBUTE_DIRECTORY;  // $00000010
//  faArchive    = FILE_ATTRIBUTE_ARCHIVE;    // $00000020
  faNormal     = FILE_ATTRIBUTE_NORMAL;       // $00000080
  faTemporary  = FILE_ATTRIBUTE_TEMPORARY;    // $00000100
  faCompressed = FILE_ATTRIBUTE_COMPRESSED;   // $00000800
  faOffline    = FILE_ATTRIBUTE_OFFLINE;      // $00001000

// Extra clipboard formats available (maybe, maybe)
var
  CF_EMFPICTURE,
  CF_FILENAME,
  CF_ICON,
  CF_RTF,
  CF_RTFNOOBJS,
  CF_RETEXTOBJ,
//  CF_RTFASTEXT,
  CF_URL,
  CF_NETSCAPE,
  CF_CSV,
  CF_FILENAMEA,
  CF_PRINTERS,
  CF_FILENAMEMAP,
  CF_FILENAMEMAPA,
  CF_EMBEDDEDOBJECT,
  CF_OBJECTDESCRIPTOR,
  CF_LINKSRCDESCRIPTOR,
  CF_LINKSOURCE,
  CF_SHELLSCRAP,
  CF_FILEDESCRIPTOR,
  CF_FILEDESCRIPTORA,
  CF_FILECONTENTS,
  CF_PICTURE,
  CF_COMPONENT,
  CF_OBJECT,
  CF_IDLIST,
  CF_PREFERREDDROPEFFECT,
  CF_OBJECTPOSITIONS : TClipFormat;

// Clipboard formats repeated as cfXxxx style variables
  cfEMFPicture : TClipFormat absolute CF_EMFPICTURE;
  cfFilename : TClipFormat absolute CF_FILENAME;
  cfRTF : TClipFormat absolute CF_RTF;
  cfCSV : TClipFormat absolute CF_CSV;
  cfURL : TClipFormat absolute CF_URL;
  cfNetscape : TClipFormat absolute CF_NETSCAPE;
  cfPrinters : TClipFormat absolute CF_PRINTERS;
  cfFilenameMap : TClipFormat absolute CF_FILENAMEMAP;
  cfEmbeddedObject : TClipFormat absolute CF_EMBEDDEDOBJECT;
  cfObjectDescriptor : TClipFormat absolute CF_OBJECTDESCRIPTOR;
  cfLinkSrcDescriptor : TClipFormat absolute CF_LINKSRCDESCRIPTOR;
  cfLinkSource : TClipFormat absolute CF_LINKSOURCE;
  cfShellScrap : TClipFormat absolute CF_SHELLSCRAP;
  cfFileDescriptor : TClipFormat absolute CF_FILEDESCRIPTOR;
  cfFileContents : TClipFormat absolute CF_FILECONTENTS;
  cfPicture : TClipFormat absolute CF_PICTURE;
  cfComponent : TClipFormat absolute CF_COMPONENT;
  cfObject : TClipFormat absolute CF_OBJECT;
  cfIDList : TClipFormat absolute CF_IDLIST;
  cfObjectPositions : TClipFormat absolute CF_OBJECTPOSITIONS;
  cfPreferredDropEffect : TClipFormat absolute CF_PREFERREDDROPEFFECT;
  cfIcon : TClipFormat absolute CF_ICON;
{$IFDEF GIF}
  cfGif : TClipFormat absolute CF_GIF;
{$ENDIF}
  cfRtfNoObjs : TClipformat absolute CF_RTFNOOBJS;
  cfRETextObj : TClipformat absolute CF_RETEXTOBJ;
//  cfRtfAsText : TClipformat absolute CF_RTFASTEXT;

const
  CF_NULL = 0;
  cfNull = CF_NULL;
// Predefined windows clipboard formats - originals in windows.pas
// as cfXxxxx style constants
  cfText = CF_TEXT;                 // 1
  cfBitmap = CF_BITMAP;             // 2
  cfMetafilePict = CF_METAFILEPICT; // 3
  cfSylk = CF_SYLK;                 // 4
  cfDif = CF_DIF;                   // 5
  cfTiff = CF_TIFF;                 // 6
  cfOEMText = CF_OEMTEXT;           // 7
  cfDIB = CF_DIB;                   // 8
  cfPalette = CF_PALETTE;           // 9
  cfPenData = CF_PENDATA;           // 10
  cfRiff = CF_RIFF;                 // 11
  cfWave = CF_WAVE;                 // 12
  cfUnicode = CF_UNICODETEXT;       // 13
  cfEnhMetafile = CF_ENHMETAFILE;   // 14
  cfHDrop = CF_HDROP;               // 15
  cfLocale = CF_LOCALE;             // 16

  cfFilenames = CF_HDROP;
  CF_FILENAMES = CF_HDROP;

const
  ddOk           = S_OK;                         // $00000000 Success codes
  ddBad          = S_FALSE;                      // $00000001
  ddUnexpected   = E_UNEXPECTED;                 // $8000FFFF Catastrophic failure
  ddBadFormatEtc = DV_E_FORMATETC;
  ddNotImplemented = E_NOTIMPL;
  ddInvalidArg   = E_INVALIDARG; // 80070057
  ddNoAdvise     = OLE_E_ADVISENOTSUPPORTED;
  ddDrop         = DRAGDROP_S_DROP;              // $00040100 Successful drop took place
  ddCancel       = DRAGDROP_S_CANCEL;            // $00040101 Drag-drop operation cancelled
  ddDefault      = DRAGDROP_S_USEDEFAULTCURSORS; // $00040102 Use the default cursor
  ddSameFormatEtc = DATA_S_SAMEFORMATETC;

// Corrections to OleDlg.pas ???
const
  OLEUI_ERR_OLEMEMALLOC        = 100;  // not 116
  OLEUI_ERR_STANDARDMAX        = 116;  // not 117

// Busy Dialog errors/return codes
  OLEUI_BZERR_HTASKINVALID     = OLEUI_ERR_STANDARDMAX + 0;
  OLEUI_BZ_SWITCHTOSELECTED    = OLEUI_ERR_STANDARDMAX + 1;
  OLEUI_BZ_RETRYSELECTED       = OLEUI_ERR_STANDARDMAX + 2;
  OLEUI_BZ_CALLUNBLOCKED       = OLEUI_ERR_STANDARDMAX + 3;

// Paste Special errors
  OLEUI_IOERR_SRCDATAOBJECTINVALID   = OLEUI_ERR_STANDARDMAX + 0;
  OLEUI_IOERR_ARRPASTEENTRIESINVALID = OLEUI_ERR_STANDARDMAX + 1;
  OLEUI_IOERR_ARRLINKTYPESINVALID    = OLEUI_ERR_STANDARDMAX + 2;
  OLEUI_PSERR_CLIPBOARDCHANGED       = OLEUI_ERR_STANDARDMAX + 3;
  OLEUI_PSERR_GETCLIPBOARDFAILED     = OLEUI_ERR_STANDARDMAX + 4;

// Change Icon specific error codes
  OLEUI_CIERR_MUSTHAVECLSID           = OLEUI_ERR_STANDARDMAX + 0;
  OLEUI_CIERR_MUSTHAVECURRENTMETAFILE = OLEUI_ERR_STANDARDMAX + 1;
  OLEUI_CIERR_SZICONEXEINVALID        = OLEUI_ERR_STANDARDMAX + 2;

// Insert Object specfic error codes
  OLEUI_IOERR_LPSZFILEINVALID         = OLEUI_ERR_STANDARDMAX + 0;
  OLEUI_IOERR_LPSZLABELINVALID        = OLEUI_ERR_STANDARDMAX + 1;
  OLEUI_IOERR_HICONINVALID            = OLEUI_ERR_STANDARDMAX + 2;
  OLEUI_IOERR_LPFORMATETCINVALID      = OLEUI_ERR_STANDARDMAX + 3;
  OLEUI_IOERR_PPVOBJINVALID           = OLEUI_ERR_STANDARDMAX + 4;
  OLEUI_IOERR_LPIOLECLIENTSITEINVALID = OLEUI_ERR_STANDARDMAX + 5;
  OLEUI_IOERR_LPISTORAGEINVALID       = OLEUI_ERR_STANDARDMAX + 6;
  OLEUI_IOERR_SCODEHASERROR           = OLEUI_ERR_STANDARDMAX + 7;
  OLEUI_IOERR_LPCLSIDEXCLUDEINVALID   = OLEUI_ERR_STANDARDMAX + 8;
  OLEUI_IOERR_CCHFILEINVALID          = OLEUI_ERR_STANDARDMAX + 9;

// ObjectProperties specific errors
  OLEUI_OPERR_SUBPROPNULL             = OLEUI_ERR_STANDARDMAX+0;
  OLEUI_OPERR_SUBPROPINVALID          = OLEUI_ERR_STANDARDMAX+1;
  OLEUI_OPERR_PROPSHEETNULL           = OLEUI_ERR_STANDARDMAX+2;
  OLEUI_OPERR_PROPSHEETINVALID        = OLEUI_ERR_STANDARDMAX+3;
  OLEUI_OPERR_SUPPROP                 = OLEUI_ERR_STANDARDMAX+4;
  OLEUI_OPERR_PROPSINVALID            = OLEUI_ERR_STANDARDMAX+5;
  OLEUI_OPERR_PAGESINCORRECT          = OLEUI_ERR_STANDARDMAX+6;
  OLEUI_OPERR_INVALIDPAGES            = OLEUI_ERR_STANDARDMAX+7;
  OLEUI_OPERR_NOTSUPPORTED            = OLEUI_ERR_STANDARDMAX+8;
  OLEUI_OPERR_DLGPROCNOTNULL          = OLEUI_ERR_STANDARDMAX+9;
  OLEUI_OPERR_LPARAMNOTZERO           = OLEUI_ERR_STANDARDMAX+10;
  OLEUI_GPERR_STRINGINVALID           = OLEUI_ERR_STANDARDMAX+11;
  OLEUI_GPERR_CLASSIDINVALID          = OLEUI_ERR_STANDARDMAX+12;
  OLEUI_GPERR_LPCLSIDEXCLUDEINVALID   = OLEUI_ERR_STANDARDMAX+13;
  OLEUI_GPERR_CBFORMATINVALID         = OLEUI_ERR_STANDARDMAX+14;
  OLEUI_VPERR_METAPICTINVALID         = OLEUI_ERR_STANDARDMAX+15;
  OLEUI_VPERR_DVASPECTINVALID         = OLEUI_ERR_STANDARDMAX+16;
  OLEUI_LPERR_LINKCNTRNULL            = OLEUI_ERR_STANDARDMAX+17;
  OLEUI_LPERR_LINKCNTRINVALID         = OLEUI_ERR_STANDARDMAX+18;
  OLEUI_OPERR_PROPERTYSHEET           = OLEUI_ERR_STANDARDMAX+19;
  OLEUI_OPERR_OBJINFOINVALID          = OLEUI_ERR_STANDARDMAX+20;
  OLEUI_OPERR_LINKINFOINVALID         = OLEUI_ERR_STANDARDMAX+21;

// Convert dialog errors
  OLEUI_CTERR_CLASSIDINVALID          = OLEUI_ERR_STANDARDMAX + 1;
  OLEUI_CTERR_DVASPECTINVALID         = OLEUI_ERR_STANDARDMAX + 2;
  OLEUI_CTERR_CBFORMATINVALID         = OLEUI_ERR_STANDARDMAX + 3;
  OLEUI_CTERR_HMETAPICTINVALID        = OLEUI_ERR_STANDARDMAX + 4;
  OLEUI_CTERR_STRINGINVALID           = OLEUI_ERR_STANDARDMAX + 5;

// Change Source Dialog errors (not declared in oledlg.pas but put here for consistency
  OLEUI_CSERR_LINKCNTRNULL            = OLEUI_ERR_STANDARDMAX+0;
  OLEUI_CSERR_LINKCNTRINVALID         = OLEUI_ERR_STANDARDMAX+1;
  OLEUI_CSERR_FROMNOTNULL             = OLEUI_ERR_STANDARDMAX+2;
  OLEUI_CSERR_TONOTNULL               = OLEUI_ERR_STANDARDMAX+3;
  OLEUI_CSERR_SOURCENULL              = OLEUI_ERR_STANDARDMAX+4;
  OLEUI_CSERR_SOURCEINVALID           = OLEUI_ERR_STANDARDMAX+5;
  OLEUI_CSERR_SOURCEPARSEERROR        = OLEUI_ERR_STANDARDMAX+6;

const

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -