Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


jarto last won the day on August 12

jarto had the most liked content!

About jarto

  • Rank

  • Birthday 02/11/1970

Profile Information

  • Gender
  • Location


  • Company name
    The Smart Company AS
  • Sector
    Information technology
  • Position
    Development Manager

Smart Mobile Studio

  • Edition

Recent Profile Visitors

1,005 profile views
  1. Hi all, as you probably have noticed, I've been very quiet lately. When COVID-19 spread around the world, the restrictions hit my personal life pretty hard. In UAE, all the schools were closed very early and remained closed all the way to the end of the semester. There was also a strict lock down and lots of restrictions. Doing a lock down with three small children and having to home school them basically meant that my chances of spending many hours of time on development went to nil. Luckily it seems like the schools will open in 3 weeks, which should give me a possibility to concentrate on development again. My plan is to get 3.0 out then.
  2. The IDE does not use smsc.exe to compile. However, it uses the same source code for the compiler. AFAIK, you should be able to compile all the complex projects also with the command line compiler. If you have trouble with that, make sure that you are using the right compiler. If you have several versions of SMS installed, it may be that you run an older version of smsc.exe du to it being in your path. If that doesn't help, you can zip the project and e-mail it to me (jt at smartmobilestudio.com) and I'll have a look where the problem is.
  3. Does the error vanish if you open SmartCL.Net.Rest.pas and do these changes on lines 142 and 147: if Assigned(OnRemove) then OnRemove(Self);
  4. jarto

    mouse position

    Thank you. This is one of the really old demos where lots of code is in TForm1.InitializeObject. When that is done, you run the risk of everything not being initialized when your code runs. Standard fix is to move the code to TForm1.InitializeForm: type TForm1 = class(TW3Form) private {$I 'Form1:intf'} FIsCapture: boolean; function MakeMouseEvent(label: TW3Label; name: string): TMouseEvent; function MouseToStr(shift: TShiftState; x, y: integer; scrXY: TPoint): string; protected procedure InitializeForm; override; procedure InitializeObject; override; end; implementation { TForm1} procedure TForm1.InitializeObject; begin inherited; {$I 'Form1:impl'} end; procedure TForm1.InitializeForm; procedure EndCapture; begin W3pnlSetCapture.Visible := true; W3pnlReleaseCapture.Visible := false; W3Panel2.OnMouseUp := nil; FIsCapture := false; end; begin inherited; OnMouseMove := MakeMouseEvent(W3lblFormCoords, 'Form'); W3Panel1.OnMouseMove := MakeMouseEvent(W3lblPanel1Coords, 'Panel1');
  5. I used the method in the example I posted with Phonegap. Does anyone have any idea about doing this with a normal Android browser?
  6. @Huseyin SEKER Here's code that compiles. unit Form1; interface uses System.Types, System.Types.Convert, System.Objects, System.Time, System.IOUtils, System.Device.Storage, W3C.Dom, SmartCL.System, SmartCL.Time, SmartCL.Graphics, SmartCL.Components, SmartCL.FileUtils, SmartCL.Device.Storage, SmartCL.Forms, SmartCL.Fonts, SmartCL.Theme, SmartCL.Borders, SmartCL.Application; type TForm1 = class(TW3Form) private {$I 'Form1:intf'} procedure onBackKeyDown(eventObj: JEvent); procedure onDeviceReady(eventObj: JEvent); protected procedure InitializeForm; override; procedure InitializeObject; override; procedure Resize; override; end; implementation { TForm1 } procedure TForm1.InitializeForm; begin inherited; // this is a good place to initialize components end; procedure TForm1.InitializeObject; begin inherited; {$I 'Form1:impl'} BrowserAPI.document.addEventListener('deviceready', @onDeviceReady, false); end; procedure TForm1.Resize; begin inherited; end; procedure TForm1.onBackKeyDown(eventObj: JEvent); begin //Here do the right thing based on any variable in your app. //Call preventDefault if you do not want your app to close. eventObj.preventDefault(); end; procedure TForm1.onDeviceReady(eventObj: JEvent); begin BrowserAPI.document.addEventListener('backbutton', @onBackKeyDown, false); end; initialization Forms.RegisterForm({$I %FILE%}, TForm1); end.
  7. This is now fixed in the alpha. It's enough just to set RowCount to 0
  8. Thank you. Gonna have a look. Probably the repaint is not called if rowcount is 0.
  9. Thanks for finding that bug. If you add SmartCL.Scroll to uses, it works. I need to change the IDE so that it automatically adds that.
  10. Smart Mobile Studio uses unicode, so you can use all the special characters it offers. For example: Google for: left arrow unicode (or anything else you are looking for) Go to the page https://www.w3schools.com/charsets/ref_utf_arrows.asp You can copy-paste the arrow itself directly into caption or into code. For example:=MyLabel.Caption:='←';
  11. Which version are you using?
  12. A new update is available: IDE: Fix character set that was sent from the internal server RTL: Bug fix to handling resizes when anchor gaps are locked. Improvements to TW3ScrollBox Scrollbars -property can now be changed in Object Inspector The ScrollBox waits properly until it's subcontrols are ready ScrollBars and indicators did not work properly if ForceParent was true Fix bugs in resizing the scrollbox
  13. @sibar This is now fixed in the alpha channel.
  14. Making some progress. The generated index.html is correct. The issue seems to be in the way the SMS internal server serves the page. I found some messages that if the server sends an encoding, the browser will switch to that. So that's where I'm going to look next.
  15. I can also reproduce the problem. The characters are properly encoded in utf-8 as they should be. The page headers also contains: <meta charset="UTF-8" /> But still my browser switches the encoding it uses to Western. If I change it to Unicode in the browser settings, the characters are viewed correctly. This is weird...
  • Create New...