Jump to content
uniGUI Discussion Forums


Popular Content

Showing content with the highest reputation since 10/19/17 in all areas

  1. 3 points
    You need to use a UniFieldContainer. See the images. Also remember for this to work the AlignmentControl must be "uniAlignmentClient".
  2. 2 points
    An example showing how to incorporate Leaflet and OpenStreetMaps into UniGUI. The following lines must be added to the ServerModule | CustomFiles: https://unpkg.com/leaflet@1.3.4/dist/leaflet.css https://unpkg.com/leaflet@1.3.4/dist/leaflet.js See the Mapbox Tab in the application for more details. P.S. I am no expert with Leaflet - please see the following for more details: Getting started with Leaflet OpenStreetMap Mapbox - the accessToken used for this is a public one...you can register to receive your own. Leaflet Maps Example.zip
  3. 2 points
    ok .. found a solution for chrome, egde, safari, opera ... i changed to https://greensock.com/tweenmax and i animate my things with : Panels: UniSession.AddJS('TweenMax.to('+UniContainerpanel.JSName+'_id,0.4,{left:'+inttostr(x)+'});'); Forms: UniSession.AddJS('TweenMax.to('+self.WebForm.JSName+'_id,1,{autoAlpha:0});'); Works fine :-) Greetings Erich user_interface.webm
  4. 2 points
    Some time ago I was working on a migration of an application from the desktop to the web using uniGUI. The application used a TRichEdit control and stored the information in a database. The new application, web-based, needed the documents in HTML and I started working on solutions. I found a few tools which could convert RTF <=> HTML. Some of them are: Subsytems – Expensive, but it does the job unRTF – GNU DocFrac - Sourceforge Html2Rtf - DLL for both HTML -> RTF and RTF -> HTML My idea was to use the database events OnBeforePost and OnBeforeScroll to execute the conversions while keeping the database format as RTF (to keep compatibility with the desktop application). I never implemented the solution but it could be used by anyone interested in moving from RTF to HTML.
  5. 2 points
    By the way Flex just sets how the controls will be spaced, if both were set to 1 then they will have equal widths.
  6. 2 points
    From the "All about..." series, my second contribution to the community All about Form Transparency using images and gradients. That´s all folks ... AllAbourFormsTransparency.rar
  7. 1 point
    Hi all, Here is a project which reads your events from your google account using unigui... Project Included (see attachments). just enter your email and password in this line: gcalendar:=TCGoogle.Create('xxxxxxx','xxxxxxxxxx');//email without @... and password If you are getting an error message: "Socket error #0" this is a known bug in Indy package, so update your Indy to latest version: http://stackoverflow.com/questions/10326810/random-indy-responsecode-1-eidsocketerror-socket-error-0-exceptions Note: you have to enable access to your google calendar: http://support.google.com/accounts/bin/answer.py?hl=en&answer=41192 Next mission: reading events from exchange account UniCalendar.rar
  8. 1 point
    Attached is a simple wrapper for the SweetAlert2 library. (QUICK HACK.. No unit testing, no tidy up etc..) ** No warranty - Use at your own risk ** FREE for commercial use, etc.. (just don't remove the copyright header). 1) Compile the Package/Install 2) Make sure your path includes the control folder 3) Copy the files/sweetalert folder into your project 4) Drag/Drop the uniSweetAlert control onto your form. Simple usage like: procedure TMainForm.UniButton1Click(Sender: TObject); begin UniSweetAlert1.ShowMessage; // or like UniSweetAlert1.Error('Oops','Something went wrong'); // or like UniSweetAlert1.Error('Oops','Error again','FixMe',3000); // or like UniSweetAlert1.Question('Is this true','Please click one of the options below:','YES','NO',3000); // or like UniSweetAlert1.title := 'Hello'; UniSweetAlert1.text := 'Testing'; UniSweetAlert1.alertType := TAlertType.success; UniSweetAlert1.ShowMessage; end; // Events for Confirm or Cancel/Dismiss procedure TMainForm.UniSweetAlert1Dismiss(Sender: TObject); begin UniButton1.Caption := 'DIS'; uniMemo1.Lines.Add('Dis'); end; procedure TMainForm.UniSweetAlert1Success(Sender: TObject); begin UniButton1.Caption := 'CLICKED'; uniMemo1.Lines.Add('Clicked'); end; Either (1) set properties and call .ShowMessage; Or call the Error, Info, etc methods. Enjoy.. Regards Andrew 2017-07-29-uniSweetAlert V3.zip
  9. 1 point
    Hello, No, You can use this version without hyperserver too, as previos versions, for configuring: http://www.unigui.com/doc/online_help/installing-and-configuring-hyp.htm
  10. 1 point
  11. 1 point
    Andy Leaflet is actually using Open Street Maps, which has very decent coverage, we use it in our products. And if you need more, then there is Mapbox which is a pay as you go service on top of Open Street Maps. Leaflet OpenStreetMap Mapbox
  12. 1 point
    Andy...I played around a bit with Leaflet Maps...which are free, unlike Google Maps. They are a lot easier to work with and the API seems to require less coding. See the image below. I will do a sample project for uniGUI.
  13. 1 point
    See the image attached...you were missing a comma at the end of the 4th PathCoordinate. I checked it with JSFiddle. Below is the corrected version with the zoom and center functions added. UniSession.AddJS('var gm = googleMap; '+ 'if (typeof gm == "object") '+ '{ '+ ' gm.setCenter(-37.84, 144.67);'+ ' gm.setZoom(15);' + ' var PathCoordinates = '+ ' ['+ ' {lat: -37.842521707298296, lng: 144.6705822349851},'+ ' {lat: -37.84328847009031, lng: 144.6718965174024},'+ ' {lat: -37.84340920273167, lng: 144.67219424260304},'+ ' {lat: -37.84345580124215, lng: 144.67245307577298},'+ ' {lat: -37.84412353348225, lng: 144.67519362283394},'+ ' {lat: -37.84445395544746, lng: 144.67542965722726},'+ ' {lat: -37.84683464430723, lng: 144.67503269029305},'+ ' {lat: -37.846206649771126, lng: 144.66954341367773},'+ ' {lat: -37.84302853810139, lng: 144.67027782310845},'+ ' {lat: -37.84251570967168, lng: 144.6705956648767}'+ ' ];'+ ' var MyPolyline = new google.maps.Polyline'+ ' ('+ ' {'+ ' path: PathCoordinates,'+ ' geodesic: false,'+ ' strokeColor: ''#FF0000'','+ ' strokeOpacity: 1.0,'+ ' strokeWeight: 2'+ ' }'+ ' );'+ ' MyPolyline.setMap(gm);'+ '} ' );
  14. 1 point
    Hello, UnimTabPanel -> TabBarVisible = False
  15. 1 point
    Hello, You can try these actions: 1. UniDBGrid1 -> Options -> dgDontShowSelected = True 2. UniDBGrid1 -> OnAfterLoad event: procedure TMainForm.UniDBGrid1AfterLoad(Sender: TUniDBGrid); begin with UniDBGrid1 do begin CurrRow := 5; CurrCol := 5; end; end;
  16. 1 point
    Hello to all, [Edit]: code/project was improved and uploaded. Here is a jQuery widget with animation and fully customized and fully responsive that I have written recently: Works excellent when resizing the browser window ! Code: $('#newTasks').circleProgress({ title:'15', caption:'New tasks', bgcolor:'#e1dddd', fgcolor:'#54c0fd', tfntcolor:'#54c0fd', cfntcolor:'#b0aeae', animationstep:1, rotateanimationstep:0.4, total:100, value:30, mstyle:0, thik:25, shadow:1 }); You may test is online (for limited time): You can download project from here [port: 8076]: http://3msoft.net/mhmd/CircleProgress.rar
  17. 1 point
    There was few posts about reaplacing standard loading,gif in project: So in CustomCSS: 1) When loading web page image: #loading .loading-indicator { background: url(./files/loading.gif) no-repeat; background-color: white; color: black; font: bold 16px tahoma,arial,helvetica; padding: 5px 10px 10px 50px; margin: 0; text-align: center; height: auto; } 2) For screenmask with loading.gif eg. when connection is lost: .x-mask-overlay { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-image: url(./files/loading.gif) !important; background-repeat: no-repeat !important; background-position: center !important; text-align: center; } Marcin
  18. 1 point
    Simple ext.form.triggerfield unigui wrapper UniButtonEdit.rar
  19. 1 point
    I'm 52 years old.I have used Basic,C,Dbase,finally Delphi.Delphi is the greatest progamming tool!
  20. 1 point
    It is easy to say "hire additional staff" to people who haven't that kind of skills. First of all Farshad need to hire sales people because he already have unique completed product for Delphi and Pascal which work and pays for itself in a few months. You really can fast, easy and cheap (compare to Java or .Net developers salary) create web application for businnes which need process operation in online. Simple CRM or similar application for view and edit data in browser you can develop in week. And when he will have good sales than he will able to hire additional stuff. Nobody know about these components. No matter how funny it sound but today most advertising for UniGUI made by ExirBox - man who hacked this components.
  21. 1 point
    Merhaba; Aşağıdaki gibi bir java ile çözdüm. function SendAPI(id, message) { var result = null; //var obj = document.getElementById(id); $.ajax({ url : address, type : 'get', dataType : 'json', data : JSON.stringify(message), success: function(data){ ajaxRequest(id, '_SendAPI', ['send=OK', 'actions='+data.data.actions, 'results='+data.data.results]); console.log(data.data.results); } }) .done(function() { console.log('Send - OK'); }) .fail(function() { console.log("Send - ERR"); ajaxRequest(id, '_SendAPI', ['send=ERR', '', '']); }); } procedure TForm1.btnNum1Click(Sender: TObject); begin UniSession.AddJS('SendAPI(Form1.form, {"data":{"actions": "test"}});'); end; procedure TForm1.UniFormAjaxEvent(Sender: TComponent; EventName: string; Params: TUniStrings); var x, actions, results: String; begin if EventName = '_SendAPI' then begin x := Params.Values['send']; end; end;
  22. 1 point
    Use css: font-size: 5.9vw;//screen width font-size: 5.9vh;//screen height I used this in my post: http://forums.unigui.com/index.php?/topic/7848-layout-advanced-tutorial/
  23. 1 point
    Extract content in resources folder Including in Server Module, Property Custom Files: ext-x.x.x.xx/resources/ext-theme-azzurra/js/azzurra.js x.x.x.xx = version of extjs Azzurra Ungui resources.rar
  24. 1 point
    Merhaba, Geliştirici açısından daha az iş gücü ve zamanla daha büyük projeler başarılabilir ki bu da proje maliyetini düşürür. Program arayüzü Sencha Ext JS ile çalışıyor ki bu da mevcut en gelişmiş Javascript arayüzü kütüphanesidir. Program tamamen Ajax istekleri ile çalıştığı için gözle görülür performans artışı elde edilebilir. Web arayüzü masaütü yazılımlara benzediği için kullanıcı dostudur ve kullanım kolaylığı sağlar. Kurulum ve dağıtımı kolaydır. Tipik bir kurulum bir kaç megabyte düzeyindedir. .NET gibi harici kütüphanelere gerek duymaz.
  25. 1 point
    Field Validation as per Sencha examples: http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/form/adv-vtypes.html http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/statusbar/statusbar-advanced.html