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

Delphi控件源码

开发平台:

Delphi

  1. {========================================================================}
  2. {=                (c) 1995-98 SwiftSoft Ronald Dittrich                 =}
  3. {========================================================================}
  4. {=                          All Rights Reserved                         =}
  5. {========================================================================}
  6. {=  D 01099 Dresden             = Tel.: +0351-8012255                   =}
  7. {=  Loewenstr.7a                = info@swiftsoft.de                     =}
  8. {========================================================================}
  9. {=  Actual versions on http://www.swiftsoft.de/mmtools.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: 13.02.98 - 17:04:35 $                                        =}
  24. {========================================================================}
  25. unit MMFFPrp;
  26. {$I COMPILER.INC}
  27. interface
  28. uses
  29. {$IFDEF WIN32}
  30.     Windows,
  31. {$ELSE}
  32.     WinTypes,
  33.     WinProcs,
  34. {$ENDIF}
  35. {$IFDEF DELPHI6}
  36.     DesignIntf,
  37.     DesignEditors,
  38. {$ELSE}
  39.     DsgnIntf,
  40. {$ENDIF}
  41.     SysUtils,
  42.     Classes,
  43.     Dialogs,
  44.     Forms,
  45.     Controls,
  46.     StdCtrls,
  47.     ComCtrls,
  48.     Graphics,
  49.     MMObj,
  50.     MMUtils,
  51.     MMFFile,
  52.     MMFFEdit;
  53. type
  54.   {-- TMMFastFileNameProperty -------------------------------------------}
  55.   TMMFastFileNameProperty = class(TStringProperty)
  56.   public
  57.     procedure Edit; override;
  58.     function  GetAttributes: TPropertyAttributes; override;
  59.   end;
  60.   {-- TMMFastFileEditor -------------------------------------------------}
  61.   TMMFastFileEditor = class(TComponentEditor)
  62.   public
  63.     procedure ExecuteVerb(Index: Integer); override;
  64.     function  GetVerb(Index: Integer): string; override;
  65.     function  GetVerbCount: Integer; override;
  66.   end;
  67. implementation
  68. {== TMMFastFileNameProperty =============================================}
  69. procedure TMMFastFileNameProperty.Edit;
  70. begin
  71.    with TOpenDialog.Create(nil) do
  72.    try
  73.       FileName := GetStrValue;
  74.       Filter := 'FastFiles (*.ff)|*.ff';
  75.       Options := Options + [ofPathMustExist, ofHideReadOnly];
  76.       Title := LoadResStr(IDS_SELECTFILE);
  77.       if Execute then SetValue(FileName);
  78.    finally
  79.       Free;
  80.    end;
  81. end;
  82. {-- TMMFastFileNameProperty ---------------------------------------------}
  83. function TMMFastFileNameProperty.GetAttributes: TPropertyAttributes;
  84. begin
  85.    Result := [paDialog];
  86. end;
  87. {== TMMFastFileEditor ===================================================}
  88. procedure TMMFastFileEditor.ExecuteVerb(Index: Integer);
  89. begin
  90.    with TMMFastFileDialog.Create(nil) do
  91.    try
  92.       Source := (Component as TMMFastFile);
  93.       if Execute and (Designer <> nil) then Designer.Modified;
  94.    finally
  95.       Free;
  96.    end;
  97. end;
  98. {-- TMMFastFileEditor ---------------------------------------------------}
  99. function TMMFastFileEditor.GetVerb(Index: Integer): string;
  100. begin
  101.    Result := 'FastFile Editor...';
  102. end;
  103. {-- TMMFastFileEditor ---------------------------------------------------}
  104. function TMMFastFileEditor.GetVerbCount: Integer;
  105. begin
  106.    Result := 1;
  107. end;
  108. end.