Jump to content

andyhill

uniGUI Subscriber
  • Posts

    1262
  • Joined

  • Last visited

  • Days Won

    6

Everything posted by andyhill

  1. Of course, silly me, "I could not see the trees from the woods"
  2. I have spent 3 and a half years exclusively in the UniGUI Mobile world where most things work after effort and today tried to build the most simplest Desktop App with a Login Form and Thread Timer. I cannot get the Thread Timer Event to call the fLogin Form Ajax Event ? Please advise - Thanks procedure TfLogin.ttTimeOutTimer(Sender: TObject); begin ttTimeOut.Enabled:= False; WaitFlag:= False; // Below Fails (along with about 10 other variants of calling) UniSession.AddJS('ajaxRequest(fLogin.window, "_TimerReset_", []'); UniSession.AddJS('ajaxRequest(' + fLogin.Form + ', "_TimerReset_", []'); UniSession.AddJS('ajaxRequest(' + fLogin.WebForm.JSName + ', "_TimerReset_", []'); UniSession.AddJS('ajaxRequest(' + Chr(39)+fLogin.GetWebForm.Name+Chr(39) + ', "_TimerReset_", []'); end; procedure TfLogin.UniLoginFormAjaxEvent(Sender: TComponent; EventName: string; Params: TUniStrings); begin if EventName = '_TimerReset_' then begin Caption:= 'Login'; UniSession.Synchronize(); end; end;
  3. Sherzod, It does not paint icon (no errors), my icon information-icon.png exists - Mobile App testing on windows chrome /m emulation. I tried "url(images/information-icon.png)" and "images/information-icon.png"
  4. It paints the same in Mobile iOS, I need to either add an icon where I have put the red mark -or- move the caption left.
  5. If you look at my "Phone Numbers --> Email" image above it is rendered in emulation mode "/m" but coded as Mobile.
  6. Excellent, now for one more option, using the Ext.select how do we set the Icon ?
  7. I do not want this to be global, can you please show me using the Ext.select code above.
  8. I would like control over both ("Email PDF In", "Phone Numbers"). MessageDlg('Email PDF In', mtConfirmation, [mbYes, mbNo, mbCancel], MessageDlgCallBack); UniSession.AddJS('Ext.select("#ext-messagebox .x-messageboxtitle .x-text-el").setText("Phone Numbers")'); UniSession.AddJS('Ext.select("#ext-messagebox .x-button .x-text-el").elements[0].innerHTML="Colour"'); UniSession.AddJS('Ext.select("#ext-messagebox .x-button .x-text-el").elements[1].innerHTML="B/W"'); UniSession.AddJS('Ext.select("#ext-messagebox .x-button .x-text-el").elements[2].innerHTML="Cancel"');
  9. Very good Sherzod - thank you. Is it optionally possible to center the texts ?
  10. With Windows EXE's I often change the MessageDlg Button Captions in code (mbYesNoCancel Captions--> "Colour", "B/W", "Cancel"), please show me how with UniGUI (I am using Mobile) - Thanks in advance. MessageDlg('Print In ?', mtConfirmation, mbYesNoCancel, MessageDlgCallBack);
  11. For my Standalone Mobile WebApp I have my ICON assigned to the project within the IDE, works for me.
  12. I have a UnimSelect that I need to be able to force the not-changed-flag in code to a changed-flag in code via JavaScript before the user presses “Done”. (The user changes are currently ignored because the component thinks that there was no change). Farshad please advise - thanks
  13. Also for Apple iPhone you will need to use the "https" protocol.
  14. After many many rewrite attempts of my Google Map code (that incidentally has worked perfectly for many years and only recently gone strange), I reached out to Google who took a week to finally locate the cause and found the culprit was "compatability.js" within the ViewerJS library. That was a painful experience having so many affected on my live site, now resolved - thank you Google.
  15. Ron, I like the look at your old Rifer Pro, I am using Spooky2 (on Scalar twin generators) at the moment, have you worked with Spooky2 Scalar ? Andy
  16. I have found that StandAlone MOBILE webapps do not honour ServerModule timings so as a work around I catch the MainModule Session TimeOut Event and extend it by 3 minutes (forever).
  17. I do. Simply put, Human Image provides 100 odd areas of interest (not shown) where user can select and retrieve specific information:- Desktop (Hover / Click), Mobile (tap) - works as intended independent of zoom but hopelessly useless if rotated (needs separate vertical and horizontal images due to viewport issues).
  18. This is what I do on Server Shut Down (UniGUIServerModuleBeforeShutdown), modify my code and use elsewhere by filtering the SessionID in question. Remember that Browsers still open (UniGUIMainModuleSessionTimeout) will force the Server to try and reconnect, so after running my code below on shutdown and subsequent restart you will still get:- "EUniSessionException : Invalid session or session Timeout. (Session not found: ..." error messages in the Server Log until the Browser is closed -or- the session in question is let go of by the Browser. procedure TUniServerModule.UniGUIServerModuleBeforeShutdown(Sender: TObject); var I, p: Integer; S: TUniGUISessions; U: TUniGUISession; begin S:= UniServerModule.SessionManager.Sessions; S.Lock; try for I:= 0 to S.SessionList.Count - 1 do begin U:= S.SessionList; if U.UniMainModule <> nil then begin try U.ReleaseSession; U.Terminate('Closed !'); except end; end; // nil end; // for except end; S.Unlock; end; procedure TUniMainModule.UniGUIMainModuleSessionTimeout(ASession: TObject; var ExtendTimeOut: Integer); var Cmp: TComponent; s, s0, s1, s2: String; begin Inc(SessionMinutesCounter); if UniMainModule.TracePulse = True then begin s:= 'http'; if SecureFlag = True then begin s:= 'HTTPS'; end; DateTimeToString(formattedDateTime, 'dd/mm/yyyy hh:nn:ss.z', Now()); s0:= formattedDateTime; if EditedBy <> '' then begin s0:= EditedBy + ' ' + formattedDateTime; end; ////////////////////////////////////////////////////////////////////////////// try Cmp:= TUniGUIApplication(UniApplication).UniSession.CurrentComponent; if Assigned(Cmp) then begin s1:= Cmp.Name + ' (' + Cmp.ClassName + ')'; if Cmp is TUniControl then s2:= TUniControl(Cmp).OwnerForm.Name else if Cmp is TUniComponent then s2:= TUniComponent(Cmp).OwnerForm.Name else s2:= ''; uniServerModule.Logger.AddLog('ANDY-M', s+' "Session.TimeOut ('+s0+', '+IntToStr(SessionMinutesCounter)+' mins, SessionID:' + SessionIDstr + ', ' + UniMainModule.EditedBy + ', Component ' + s1 + ', Extended 3mins)"'); end else begin uniServerModule.Logger.AddLog('ANDY-M', s+' "Session.TimeOut ('+s0+', '+IntToStr(SessionMinutesCounter)+' mins, SessionID:' + SessionIDstr + ', ' + UniMainModule.EditedBy + ', Extended 3mins)"'); end; except end; end; // TracePulse ////////////////////////////////////////////////////////////////////////////// ExtendTimeOut:= (1000 * 180); // 3mins end;
  19. Not only does TUnimDBListGrid Mobile childdoubletap event not fire BUT it takes out UnimDBListGridDblClick event if coded !
  20. Where is all of the TUnimDBListGrid Mobile parameters (Item Info) that was Double Clicked ??? UnimDBListGridDblClick(Sender: TObject);
  21. Please advise how to catch Double Tap on TUnimDBListGrid Mobile (there is no itemtap event) ?
  22. I used Sherzod's Image Map concepts (see Components and Code Samples) and did get Hot Zones working on Mobile BUT it is slow AND when the device is rotated (Horizontal) the viewport cuts off the full image no matter what I do and Sherzod has not responded to my requests for help.
×
×
  • Create New...