OSDN Git Service

文字列比較や文字列コピーを減らしてさらに高速化、一般的なスクリプトで元々の約2.3倍
[winbottle/winbottle.git] / bottleclient / SurfacePreview.pas
index e41c867..7ba0ab9 100644 (file)
@@ -14,10 +14,12 @@ type
     procedure TimerTimer(Sender: TObject);
   private
     { Private \90é\8c¾ }
+    FIsHidden: boolean;
   public
     { Public \90é\8c¾ }
     procedure HideAway;
     procedure ShowPreview(Bmp: TBitmap; X, Y: integer);
+    function IsHidden: boolean;
   end;
 
 var
@@ -38,8 +40,14 @@ begin
   // \82±\82Ì\83E\83B\83\93\83h\83E\82Í\81AShow/Hide\82³\82ê\82Ä\82¢\82é\82Ì\82Å\82Í\82È\82­\82Ä\81A
   // \8eÀ\8dÛ\82É\82Í\95Æ\92n\82É\88Ú\93®\82µ\82Ä\82¢\82é\82¾\82¯\82Å\82 \82é\81B
   // (Show/Hide\83\81\83\\83b\83h\8eg\82¤\82Æ\83t\83H\81[\83J\83X\82ª\88Ú\82Á\82½\82è\82µ\82Ä\96Ê\93|\82È\82Ì\82Å)
-  Left := Low(integer);
-  Top := Low(integer);
+  Left := Low(smallint);
+  Top := Low(smallint);
+  FIsHidden := true;
+end;
+
+function TfrmSurfacePreview.IsHidden: boolean;
+begin
+  Result := FIsHidden;
 end;
 
 procedure TfrmSurfacePreview.ShowPreview(Bmp: TBitmap; X, Y: integer);
@@ -47,8 +55,9 @@ begin
   Image.Picture.Graphic := Bmp;
   ClientWidth := Bmp.Width;
   ClientHeight := Bmp.Height;
-  Left := X;
-  Top := Y;
+  Self.Left := X;
+  Self.Top := Y;
+  FIsHidden := false;
 
   // \8e©\93®\82Å\8fÁ\82¦\82é\83^\83C\83}\81[\82ð\83Z\83b\83g
   Timer.Enabled := false; // \82¢\82Á\82½\82ñ\82±\82ê\82Å\8cv\8e\9e\82ª\83\8a\83Z\83b\83g\82³\82ê\82é