Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by lynkfs

  1. Hi warleyalex not a straightforward solution. There is a proposed object.observe function which fires in js when an objects atrribute(s) changes. However this is still experimental and not in all browsers available. Best I could find is a small lib called watch.js Download from github.com/melanke/Watch.JS/blob/master/README.md and add to the head of your index file : <script src="res/watch.js"></script> The bi-directional data-binding now works as follows : - from your input element to your object is easy, just use the OnChange method on f.i. a standard EditBox -
  2. A couple of more links for people interested in some bare-bones but functional SMS components : 1) www.lynkfs.com/components/Carousel/Carousel.pas An image carousel with choice of effects Example of use in ..../Carousel/Carousel.sproj Preview : ..../Carousel/www/index.html 2) www.lynkfs.com/components/PageControl/PageControl.pas A tabbed page component. Example of use in ..../PageControl/PageControl.sproj Preview : ..../PageControl/www/index.html 3) www.lynkfs.com/components/PopUpMenu/PopUpMenu.pas A simple pop-up menu Example of use of this component in ..../P
  3. A couple of links for whoever is interested in some simple SMS components : 1) www.lynkfs.com/components/MySQLDB/MySQLDB.pas A cross domain component which takes a SQL query on any existing MySQL database and returns the cursor in both a local Variant and an on the fly generated TDataSet. Superfluous to have both ways implemented, but just for fun Example of use of this component in ..../MySQLDB/TestMySQLDB.sproj How to make a standard memo data-aware : just drag this component and a Memo on a form and connect them as in .../MemoDB/TestMemoDB.sproj Preview in .../MemoDB/www/index.ht
  4. - the browsers back-button in Smart Mobile Studio Most users find it frustrating they cannot use their browsers back/next buttons to navigate between forms. And especially so since they will typically leave the application altogether if they use them. One solution to this problem is manipulating the browsers history stack. Basically if we insert entries in the browsers history whenever there is a form change, and have a notification happening when the user uses the back/next buttons, then we can hook any history changes to form changes. Html5 introduced the history object. See http
  5. Hi warleyalex Sorry, obviously my question is not very well articulated. I have an application with a header bar and some forms underneath : procedure TApplication.ApplicationStarting; var mForm: TW3CustomForm; begin FHeader:=TW3Panel.create(display); ... mForm := TForm3.Create(display.view); mForm.name := 'Form3'; // Form3 RegisterFormInstance(mForm, False); The headerpanel contains a number of menu labels, something like : // FMenu01:=TW3Label.create(FHeader); FMenu01.Caption := 'Search'; FMenu01.OnClick := procedur
  6. Wrote an article a while ago, see http://www.lynkfs.com/smsdemo-01/SMS%20demo%2001.pdf
  7. GoToForm('Form-X') transfers control to 'Form-X' but only if the name of the current form is different from 'Form-X'. This is a problem when the same form needs to be accessed more than once. An example would be a header with a button linking to a search form, where users may want to execute their searches more than once. A very inelegant solution is to duplicate 'Form-X' into 'Form-Y', query the name of the current form and transfer accordingly. Something like 'if application.currentform.name = 'Form-X' then gotoForm('Form-Y') ... Any better solutions ?
  8. Making websites with SMS is feasible, and fun too. I just started on a new assignment (www.ecosmarteplumbing.com.au/prod/mobile, at present featuring just 2 preliminary pages for 'plumbing' and 'waste water') The standard SMS UI-components are generally sufficient for composing web-pages. If you want something special like f.i. a caroussel there are inbuild functions like TW3EventRepeater which enables cycling through a collection of images. Or one can look at external libraries like jQWidgets. This library features almost 50 components : jqxGrid, jqxChart, jqxGauge, jqxDataTable, jqx
  9. I have done some tests as what the differences are between hotfix1 and hotfix 2 A trace of the main error is shown here https://www.dropbox.com/s/2ktu81xav8pz76p/Screenshot%202014-10-19%2010.09.30.png?dl=0 after that all kinds of errors occur https://www.dropbox.com/s/2f401hc9q7ohh8q/Screenshot%202014-10-19%2010.10.00.png?dl=0 The area where this occurs (hotfix 2 only) is on clicking a menu button on the header area of the application screen. The structure of this is similar to the header structure in the zensky demo Does this help ?
  10. Thanks for your quick response. Compiling this particular project source with hotfix 1 gives zero errors. Compilation with hotfix 2 same, no errors or warnings. However deployment is very different. The hotfix 1 result is fine, the hotfix 2 result suddenly misses first rows of database selects, some clicks don't fire at all and as such the product is not usable. The relationship with the INET lib is just a hunch at this moment (missing database records stored in variants). Not sure if/how I can be of help to resolve this issue
  11. I'm working on a rather large project but had to revert back from hotfix 2 (2.1.2) to hotfix 1 (2.1.1). Is there a change in the workings of Variants or maybe major changes in the inet section ?
  12. lynkfs

    Scrolling Version 2

    Finally succeeded in implementing kinetic scrolling in version Installing V2 over V1 seems to have some side effects. A clean install of V2 and some minor changes was all it needed ...
  13. To enable kinectic scrolling I improvised the following hack in Version 1, which works great and gives me fast form scrolling on touch devices. See www.lynkit.com.au/smsweb/index.html for an example. Now in Version 2 this doesn't work quite as well. The same hack enables scrolling but it is not kinectic and a bit sluggish. See www.lynkit.com.au/smsweb/index2.html The hack consists of 3 parts : - set the style of the forms to overflow:auto - add eventlisteners for touchstart and touchmove and calculate the displacement from the top - add -webkit-overflow-scrol
  14. lynkfs


    I gave the Grid component as bundled with V2 a go. The workflow is to define the grid, then the columns, then the rows and last the cells MyGrid := TW3Grid.Create(Self); MyGrid.Color := cllightblue; MyColumn1 := TW3Column.Create(mygrid as IW3ColumnsControl); MyColumn1.Width :=200; MyColumn1.Header.Caption := 'header1'; MyColumn2 := TW3NumberColumn.Create(mygrid as IW3ColumnsControl); MyColumn2.Width :=200; MyColumn2.Header.Caption := 'header2'; MyColumn2.TextAfter := ' AUD'; // special for number columns MyColumn2.TextBefore := '$ '; MyGrid.Columns.Add(myColum
  15. Similar approach is used in www.lynkit.com.au/expert. This is a work in progress (a port of a generic AI/expert system). Anyway, the drag and drop bits work. On the menu press 'Design' and then 'Example2' and you'll see a couple of buttons and bezier-lines. The buttons can be moved by mouse or finger (and the bezier lines follow). W3Panel1:=TW3Panel.create(Self); W3PaintBox1:=TW3PaintBox.create(W3Panel1); w3_setStyle(W3Panel1.Handle,'border','0px'); UnifiedClick(W3Panel1, ReportClick); UnifiedMove(W3Panel1, ReportMove); UnifiedRelease(W3Panel1, ReportRelease); W
  16. lynkfs

    UI Toolkit

    Thanks Alex Can you send me the code ? The dropbox link is empty
  17. lynkfs

    UI Toolkit

    I had forgotten about the DHTMLX library, but it's actually quite nice. A minimalistic rewrite of Andre's code for a striped table, which works in the current version (1.1.2) would be : unit Form1; interface uses W3System, W3Graphics, W3Components, W3Forms, W3Fonts, W3Borders, W3Application, W3Elements; type TForm1 = class(TW3form) private { Private methods } {$I 'Form1:intf'} protected { Protected methods } procedure InitializeObject; override; procedure FinalizeObject; override; procedure StyleTagObject; reintroduce; virtual
  18. change the style of the listbox to scrollable (i.e. overflow: auto) procedure TForm1.FormActivated; begin inherited; w3_setStyle(W3ListBox1.Handle, 'overflow', 'auto'); end; Nico
  19. As a challenge I decided to see whether or not SMS can be used to produce mainstream web-pages. Minimum requirements were to be 1) fit for touch, mobile and desktop devices in both orientations with one codebase 2) database connectivity (external hosted MySQL database) 3) speed of scrolling / swiping has to be fast on all desktop and mobile browsers 4) professional look-and-feel The end-product is available on http://www.symphonyone.com/smsweb The conclusion is that, yes it ticks all of the boxes above. Whether or not it is an advisable solution depends
  20. I tried a bit of a different approach. As a challenge I wanted to see if it is possible to have forms larger than the physical screen and be able to scroll or swipe the viewport. In other words the behaviour just like any website in a browser and with the same speed and responsiveness. First step is to make the form scrollable. Forms are generated as elements with the style parameter 'overflow' set to 'hidden'. This must be changed to 'auto' for scroll bars to be rendered on desktop browsers. The following code does that : procedure TForm1.FormActivated; begin asm
  21. I posted an anwer to this question on http://stackoverflow.com/questions/18384170/using-smart-mobile-studio-to-interact-with-a-mysql-database cheers Nico
  22. Hi I have a navigation issue using internet explorer (10) The following code works fine in chrome, safari, firefox on desktop (win,mac) and mobile (apple,android) It does NOT work however in IE I'm navigating from Form1 to Form2, which works as expected : procedure TForm1.InitializeObject; begin inherited; {$I 'Form1:impl'} W3Image6.OnClick := procedure (Sender: TObject) begin Application.GotoForm('Form2',feFromRight); end; But navigating back from Form2 to Form1 doesn't work in IE10 (but does work in all other browsers)
  23. Thanks Andre you were right, i upgraded the demo version to the paid version which obviously didn't install completely / correctly. After reinstalling everything it works fine Nico
  24. The RemObjectsSDKChat demo does not compile in SMS Syntax Error: There is no overloaded version of "Create" that can be called with these arguments [line: 61, column: 32, file: form1] FEvents := TROEventReceiver.Create(FChannel, FMessage, '', 1 * 1000); Can you rectify this as I'm implementing a chat function By the way, I just bought SMS and what a relief to be able to code in Delphi/Pascal again. I've used the Borland/Embarcadero products from Turbopascal for Dos up to XE3 but this is really nice. Keep the updates coping !
  • Create New...