MMVisReg.pas
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:5k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. {========================================================================}
  2. {=                (c) 1995-98 SwiftSoft Ronald Dittrich                 =}
  3. {========================================================================}
  4. {=                          All Rights Reserved                         =}
  5. {========================================================================}
  6. {=  D 01099 Dresden             = Fax.: +49(0)351-8037944               =}
  7. {=  Loewenstr.7a                = info@swiftsoft.de                     =}
  8. {========================================================================}
  9. {=  Actual versions on http://www.swiftsoft.de/index.html               =}
  10. {========================================================================}
  11. {=  This code is for reference purposes only and may not be copied or   =}
  12. {=  distributed in any format electronic or otherwise except one copy   =}
  13. {=  for backup purposes.                                                =}
  14. {=                                                                      =}
  15. {=  No Delphi Component Kit or Component individually or in a collection=}
  16. {=  subclassed or otherwise from the code in this unit, or associated   =}
  17. {=  .pas, .dfm, .dcu, .asm or .obj files may be sold or distributed     =}
  18. {=  without express permission from SwiftSoft.                          =}
  19. {=                                                                      =}
  20. {=  For more licence informations please refer to the associated        =}
  21. {=  HelpFile.                                                           =}
  22. {========================================================================}
  23. {=  $Date: 08.01.99 - 15:19:15 $                                        =}
  24. {========================================================================}
  25. unit MMVisReg;
  26. {$I COMPILER.INC}
  27. Interface
  28. uses
  29.     Controls,
  30.     Classes,
  31. {$IFDEF DELPHI6}
  32.     DesignIntf,
  33.     DesignEditors
  34. {$ELSE}
  35.     DsgnIntf
  36. {$ENDIF}
  37.     ;
  38.     
  39. type
  40.     {-- TMMSpectrumEditor -----------------------------------------------}
  41.     TMMSpectrumEditor = class(TComponentEditor)
  42.     public
  43.        procedure ExecuteVerb(Index: Integer); override;
  44.        function  GetVerb(Index: Integer): string; override;
  45.        function  GetVerbCount: Integer; override;
  46.     end;
  47. Procedure Register;
  48. Implementation
  49. {$IFDEF WIN32}
  50.    {$R MMVISUAL.D32}
  51. {$ELSE}
  52.    {$R MMVISUAL.D16}
  53. {$ENDIF}
  54. uses
  55.     SysUtils,
  56.     MMDesign,
  57.     MMIde,
  58.     MMConect,
  59.     MMLevel
  60.     {$IFNDEF LEVEL_ONLY}
  61.     ,MMOscope,
  62.     MMMeter,
  63.     MMSpectr,
  64.     MMSpGram,
  65.     MMLight
  66.     {$ENDIF}
  67.     ;
  68. {== TMMSpectrumEditor ===================================================}
  69. procedure TMMSpectrumEditor.ExecuteVerb(Index: Integer);
  70. var
  71.    oWidth: integer;
  72. begin
  73.    with (Component as TMMSpectrum) do
  74.    begin
  75.       oWidth := Width;
  76.       Width := GetOptimalWidth(oWidth);
  77.       if (Width <> oWidth) and (Designer <> nil) then Designer.Modified;
  78.    end;
  79. end;
  80. {-- TMMSpectrumEditor --------------------------------------------------------}
  81. function TMMSpectrumEditor.GetVerb(Index: Integer): string;
  82. begin
  83.    Result := 'Adjust Width for BarDisplay...';
  84. end;
  85. {-- TMMSpectrumEditor --------------------------------------------------------}
  86. function TMMSpectrumEditor.GetVerbCount: Integer;
  87. begin
  88.    Result := 1;
  89. end;
  90. {=========================================================================}
  91. procedure Register;
  92. begin
  93.      RegisterComponents('MMVisual', [TMMConnector,
  94.                                      TMMLevel
  95.                                      {$IFNDEF LEVEL_ONLY}
  96.                                      ,TMMOscope,
  97.                                      TMMMeter,
  98.                                      TMMLevelScale,
  99.                                      TMMSpectrum,
  100.                                      TMMSpectrogram,
  101.                                      TMMLight
  102.                                      {$ENDIF}
  103.                                      ]);
  104.      {$IFNDEF LEVEL_ONLY}
  105.      RegisterComponentEditor(TMMSpectrum, TMMSpectrumEditor);
  106.      {$ENDIF}
  107. end;
  108. initialization
  109.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Level1',TMMLevel,nil);
  110.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Level2',TMMLevel,nil);
  111.     {$IFNDEF LEVEL_ONLY}
  112.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Meter1',TMMMeter,nil);
  113.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Meter2',TMMMeter,nil);
  114.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Oscope1',TMMOscope,nil);
  115.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Oscope2',TMMOscope,nil);
  116.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Light1',TMMLight,nil);
  117.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Light2',TMMLight,nil);
  118.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrogram1',TMMSpectrogram,nil);
  119.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrogram2',TMMSpectrogram,nil);
  120.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrum1',TMMSpectrum,nil);
  121.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrum2',TMMSpectrum,nil);
  122.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrum3',TMMSpectrum,nil);
  123.     RegisterProperty(ptOutput,'DSP',TMMConnector,'Spectrum4',TMMSpectrum,nil);
  124.     {$ENDIF}
  125. end.