home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 June / Chip_2002-06_cd1.bin / zkuste / delphi / kompon / d56 / MSYSINFO.ZIP / Int / MSI_Display.int < prev    next >
Encoding:
Text File  |  2002-03-04  |  4.4 KB  |  87 lines

  1.  
  2. {*******************************************************}
  3. {                                                       }
  4. {       MiTeC System Information Component              }
  5. {               Display Detection Part                  }
  6. {           version 7.4 for Delphi 5,6                  }
  7. {                                                       }
  8. {       Copyright ⌐ 1997,2002 Michal Mutl               }
  9. {                                                       }
  10. {*******************************************************}
  11.  
  12. {$INCLUDE MITEC_DEF.INC}
  13.  
  14. unit MSI_Display;
  15.  
  16. interface
  17.  
  18. uses
  19.   SysUtils, Windows, Classes;
  20.  
  21. type
  22.   TDisplayInfo = record
  23.     DAC,
  24.     Chipset: string;
  25.     Memory: integer;
  26.   end;
  27.  
  28.   TCurveCap = (ccCircles,ccPieWedges,ccChords,ccEllipses,ccWideBorders,ccStyledBorders,
  29.                ccWideStyledBorders,ccInteriors,ccRoundedRects);
  30.   TLineCap = (lcPolylines,lcMarkers,lcMultipleMarkers,lcWideLines,lcStyledLines,
  31.                lcWideStyledLines,lcInteriors);
  32.   TPolygonCap = (pcAltFillPolygons,pcRectangles,pcWindingFillPolygons,pcSingleScanlines,
  33.                  pcWideBorders,pcStyledBorders,pcWideStyledBorders,pcInteriors);
  34.   TRasterCap = (rcRequiresBanding,rcTranserBitmaps,rcBitmaps64K,rcSetGetDIBits,
  35.                 rcSetDIBitsToDevice,rcFloodfills,rcWindows2xFeatures,rcPaletteBased,
  36.                 rcScaling,rcStretchBlt,rcStretchDIBits);
  37.   TTextCap = (tcCharOutPrec,tcStrokeOutPrec,tcStrokeClipPrec,tcCharRotation90,
  38.               tcCharRotationAny,tcScaleIndependent,tcDoubledCharScaling,tcIntMultiScaling,
  39.               tcAnyMultiExactScaling,tcDoubleWeightChars,tcItalics,tcUnderlines,
  40.               tcStrikeouts,tcRasterFonts,tcVectorFonts,tcNoScrollUsingBlts);
  41.  
  42.   TCurveCaps = set of TCurveCap;
  43.   TLineCaps = set of TLineCap;
  44.   TPolygonCaps = set of TPolygonCap;
  45.   TRasterCaps = set of TRasterCap;
  46.   TTextCaps = set of TTextCap;
  47.  
  48.   TDisplay = class(TPersistent)
  49.   public
  50.     constructor Create;
  51.     destructor Destroy; override;
  52.     procedure GetInfo;
  53.     procedure Report_CurveCaps(ACaps :TStringList);
  54.     procedure Report_LineCaps(ACaps :TStringList);
  55.     procedure Report_PolygonCaps(ACaps :TStringList);
  56.     procedure Report_RasterCaps(ACaps :TStringList);
  57.     procedure Report_TextCaps(ACaps :TStringList);
  58.     procedure Report(var sl :TStringList);
  59.   published
  60.     property Adapter :string read FAdapter {$IFNDEF D6PLUS} write FAdapter {$ENDIF} stored false;
  61.     property DAC :string read FDAC {$IFNDEF D6PLUS} write FDAC {$ENDIF} stored false;
  62.     property Chipset :string read FChipset {$IFNDEF D6PLUS} write FChipset {$ENDIF} stored false;
  63.     property Memory :Integer read FMemory {$IFNDEF D6PLUS} write FMemory {$ENDIF} stored false;
  64.     property HorzRes :integer read FHorzRes {$IFNDEF D6PLUS} write FHorzRes {$ENDIF} stored false;
  65.     property VertRes :integer read FVertRes {$IFNDEF D6PLUS} write FVertRes {$ENDIF} stored false;
  66.     property ColorDepth :integer read FColorDepth {$IFNDEF D6PLUS} write FColorDepth {$ENDIF} stored false;
  67.     // BIOS info is available only under NT
  68.     property BIOSVersion :string read FBIOSVersion {$IFNDEF D6PLUS} write FBIOSVersion {$ENDIF} stored false;
  69.     property BIOSDate :string read FBIOSDate {$IFNDEF D6PLUS} write FBIOSDate {$ENDIF} stored false;
  70.  
  71.     property Technology :string read FTechnology {$IFNDEF D6PLUS} write FTechnology {$ENDIF} stored false;
  72.     property PixelWidth :integer read FPixelWidth {$IFNDEF D6PLUS} write FPixelWidth {$ENDIF} stored false;
  73.     property PixelHeight :integer read FPixelHeight {$IFNDEF D6PLUS} write FPixelHeight {$ENDIF} stored false;
  74.     property PixelDiagonal :integer read FPixelDiagonal {$IFNDEF D6PLUS} write FPixelDiagonal {$ENDIF} stored false;
  75.     property RasterCaps :TRasterCaps read FRasterCaps {$IFNDEF D6PLUS} write FRasterCaps {$ENDIF} stored false;
  76.     property CurveCaps :TCurveCaps read FCurveCaps {$IFNDEF D6PLUS} write FCurveCaps {$ENDIF} stored false;
  77.     property LineCaps :TLineCaps read FLineCaps {$IFNDEF D6PLUS} write FLineCaps {$ENDIF} stored false;
  78.     property PolygonCaps :TPolygonCaps read FPolygonCaps {$IFNDEF D6PLUS} write FPolygonCaps {$ENDIF} stored false;
  79.     property TextCaps :TTextCaps read FTextCaps {$IFNDEF D6PLUS} write FTextCaps {$ENDIF} stored false;
  80.     property Modes :TStrings read FModes {$IFNDEF D6PLUS} write FModes {$ENDIF} stored False;
  81.     property FontResolution: DWORD read FFontSize {$IFNDEF D6PLUS} write FFontSize {$ENDIF} stored False;
  82.   end;
  83.  
  84. implementation
  85.  
  86.  
  87.