Jump to content

jbWishmaster

Members
  • Content Count

    10
  • Joined

  • Last visited

Posts posted by jbWishmaster


  1. thanks to all who replied.

     

    UDP listening looks promising to get the IP's, I only have one computer wired the rest is on the same WIFI
    I thought I Send/Receive each IP once every 30 seconds with a command like the IP + Username (because different people use the same laptop)
    or if the App Closes it sends the command too remove the the IP from the list, and on the receiving end it checks if the IP and username exist.


    so that small program that I wrote is a DB for location/inventory tracking
    one of the tasks it should fulfill is, if user 1 changes something then the same change should be made to 
    PC/User 2-10, so that everyone sees the same thing. and as I already said the server is very slow 
    so Reloading the DB is out of the question it takes a lot of time ~2 min. for a file ~ 1 MB

     

    I also try to work with open source. I'm under a lot of time pressure to finish this App.

    so if anyone else has other suggestions or Demos to speed it up the process...


     

    Tracker.jpg


  2. I have a unique problem that I am trying to solve

    1.

    so I am trying to send information to and from ~2-10 applications at the same time, without knowing the IPs of the respective machines.

    something like the "OverbyteIcsTWSChat" demo just for max 2-10 people should see the same message at the same time on the same local network.

     

    2.

    is there a method to get all IP's from all PCs that are connected to the same router/local network. and if not

     

    3. 

    I have access to every PC so I can get the IP of everyone PC if needed but I would like to somehow solve it automatically and list all IP's in the background.

     

     

    I'm trying to implement some kind of log so that everyone in the group knows what the other is doing.

     

    I have no experience with this component (ICS)

     

     

     


  3. I just tried to install the new version and get stuck at a certain point.
    as soon as I try to compile the package it asks me to create a Connection profile for OSX64.
    I have nothing to do with apple/OSX

     

    [EurekaLog] IcsCommonD104Run.dproj(1): Unsupported project (IcsCommonD104Run.dproj; OSX64): platform "OSX64" is not supported
    Building IcsCommonD104Run.dproj (Debug, OSX64)

     

     

    I was able to install the previous version without any problems. and without setting up a Connection profile for OSX64.

     


  4. so i did some testing using the OverbyteIcsTWSChat demo and it worked as expected, at least it connected between my  x2 main computers and virtualbox.

    however when i tried it at work it didn't connected at all.  and I used the same  IP and port number as the demo posted above which works without problems.

    as far as I understand it the Port and IP are not blocked, At work I have several MS Surface tablets which I can use for testing. but so far I have no luck.

     

    so if someone has an idea on how to fix it, perhaps I miss something!?

     

     

     

     


  5. try the following code, it works for me.

     

    procedure Draw_PannelFrame_Flat_Rounded(Dst : TBitmap32; R: TRect; Sides : TSides;
      Color : TColor32; PenStyle: TPenStyle; StrokeWidth : Single = 1; Radius : Integer = 6) ;
     var
      Points : TArrayOfFloatPoint;
      Dashes : TArrayOfFloat;
      FRect : TFloatRect;
    begin
       FRect:= FloatRect(R);
    
       case PenStyle of
         psSolid:
          begin
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           PolyPolylineFS(Dst, PolyPolygon(Points), Color, True, StrokeWidth * 1, jsMiter, esSquare);
          end;
         psDash:
          begin
          // Dashes := MakeArrayOfFloat([10, 3, 3, 3, 3, 3]);
           Dashes := MakeArrayOfFloat([6, 2, 6, 2]);
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           DashLineFS(Dst, Points, Dashes, Color, True, StrokeWidth * 1);
          end;
         psDot:
          begin
           Dashes := MakeArrayOfFloat([2, 2, 2, 2]);
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           DashLineFS(Dst, Points, Dashes, Color, True, StrokeWidth * 1);
          end;
         psDashDot:
          begin
           Dashes := MakeArrayOfFloat([6, 2, 2, 2]);
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           DashLineFS(Dst, Points, Dashes, Color, True, StrokeWidth * 1);
          end;
         psDashDotDot:
          begin
           Dashes := MakeArrayOfFloat([10, 2, 2, 2, 2, 2]);
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           DashLineFS(Dst, Points, Dashes, Color, True, StrokeWidth * 1);
          end;
         psClear: ;
         psInsideFrame:
          begin
           Points:= Build_RoundRect(Radius, FRect, StrokeWidth * 1);
           PolyPolylineFS(Dst, PolyPolygon(Points), Color, True, StrokeWidth * 1);
          end;
         psUserStyle: ;
         psAlternate: ;
       end;
    
    end;

     

    jbPannel 02.jpg

    • Like 1

  6. function Build_RoundRect(Radius : TFloat; Rec: TFloatRect; BorderWidth : TFloat ): TArrayOfFloatPoint;
    var
      FRec : TFloatRect;
    begin
      FRec.Left:=   Rec.Left + 0.5 * BorderWidth;
      FRec.Top:=    Rec.Top + 0.5 * BorderWidth;
      FRec.Right:=  Rec.Right - 0.5 * BorderWidth;
      FRec.Bottom:= Rec.Bottom - 0.5 * BorderWidth;
      Result:= RoundRect(FRec, Radius);
    end;
    
    
    procedure Draw_GradientLinear(Dst : TBitmap32; StartPoint, EndPoint: TFloatPoint;   
     Outline : TArrayOfFloatPoint; Colors : TGradColors);
    var
     FFilter : TLinearGradientPolygonFiller;
     FPolys : TArrayOfArrayOfFloatPoint;
    begin
    
       FFilter := TLinearGradientPolygonFiller.Create();
      try
        Setlength(FPolys, 0);
        FPolys:= PolyPolygon(Outline);
    
        FFilter.StartPoint:= StartPoint;
        FFilter.EndPoint:=  EndPoint;
        FFilter.WrapMode:= wmClamp;// TWrapMode(1);
        FFilter.Gradient.ClearColorStops;
        FFilter.Gradient.StartColor:= Color32(Colors[1]);
        FFilter.Gradient.EndColor:=   Color32(Colors[2]);
    
        PolyPolygonFS(Dst, FPolys, FFilter, pfWinding);
      finally
       FFilter.Free;
       Setlength(FPolys, 0);
      end;
    end;
    
    //----------------------------------------------------------
     TGradColors    = Array of TColor;
     TGradPosition  = Array [1..2] of TFloat;
     TGradientStyle = (gsLinearV, gsLinearH, .......)
    
    
    
    procedure TjbGradient.PaintTo(Dst: TBitmap32; R: TRect);
    var
      Buffer : TBitmap32;
    
      Colors : TGradColors;
      Position : TGradPosition;
      Center : TFloatPoint;
      Radius : TFloat;
      Angle  : TFloat;
      CenterPoint : TFloatPoint;
     FOutline : TArrayOfFloatPoint;
      StartPoint, EndPoint: TFloatPoint;
      FRect : TFloatRect;
    begin
     if IsRectEmpty(R)  then
      exit;
    
      FRect:= FloatRect(R);
    
      Buffer := TBitmap32.Create;
      Buffer.SetSize(R.Width, R.Height);
    
      Buffer.ResetAlpha;
      Buffer.MasterAlpha := FAlpha;
      Buffer.DrawMode := dmBlend;
      Buffer.Clear(0);
     
      FOutline:= Build_RoundRect(RoundRadius, FRect, 1);
    
      if Length(FOutline) = 0 then
       exit;
    
    
      case FGradStyle of
        gsLinearV:
         begin
           SetLength(Colors, 3);
           Colors[1]:= ColorFrom;
           Colors[2]:= ColorTo;
    
           StartPoint.X:= 0;
           StartPoint.Y:= FRect.Top;
           EndPoint.X:= 0;
           EndPoint.Y:= FRect.Bottom;
    
           Draw_GradientLinear(Buffer, StartPoint, EndPoint, FOutline, Colors);
    
           Buffer.DrawTo(Dst, 0, 0);
         end;
        gsLinearH:
         begin
           SetLength(Colors, 3);
           Colors[1]:= ColorFrom;
           Colors[2]:= ColorTo;
    
           StartPoint.X:= FRect.Left;
           StartPoint.Y:= 0;
           EndPoint.X:= FRect.Right;
           EndPoint.Y:= 0;
    
           Draw_GradientLinear(Buffer, StartPoint, EndPoint, FOutline, Colors);
    
           Buffer.DrawTo(Dst, 0, 0);
         end;
    
       end
    
    
    
    
    
    ...

     

     

    it's just a small snippet  I hope it helps.

     

     

     

     

     

     

     

     

     

     

    jbPannel 01.jpg

×