Jump to content
uniGUI Discussion Forums


Popular Content

Showing content with the highest reputation since 12/09/18 in all areas

  1. 2 points
    These are low-res gifs... take a look at the snowflakes project. You got hi-res with Jscript effect at the end. The other examples will be soon available in www.unigui.com.br only. I don't want to "spam" the forum with similar posts with the same subject. Next month, two new post using the "All about" tag series (Grids and Edits) and we will move to a new topic and series. C'ya
  2. 2 points
    From the "infamous" series, "All about...", we got together 4 examples of animated backgrounds for LoginForms. A foreground LoginForm (with some tricks and a soft gradient) that can be easily included in minutes to you project for a "quick facelift" and voilá . Different solutions with only one goal: All formatted to be used in LoginForms because "it's all about the looks my dear"... With the examples provided you can easily adapt any animated JavaScript background to your projects and get an extra bang to user attention. There are lots of animated jscripts , particules, elements in codepen and other Jscript resources websites that you can use the same tools and solutions here. Since we are almost at Christmas and Festivities days, SnowFlakes JavaScript Animated background is here for direct download. Additional projects with nice effects and ready-to-use is downloadable from the link below. Visit www.unigui.com.br (use the google translation control at the top - soon in english) and download the other examples and material. Project Packs, Books (in Portuguese only for now but coming soon in english) and resources exclusive to uniGUI Framework. Happy festivities, Christmas and a prosper new year. Cheers, Fred. PS: you can write me in english for more info and support. "No problemo.. " Projeto31-LoginSnowFlakesEffects.rar
  3. 2 points
    Hello Roberto, Short answer : Yes, you can trust on Unigui. Its designer is called by the community "the magician". Long answer : To be honest, i have not customers who need 1000 concurrent users. But i would like to speak about its hight stability. 1. Fisrt, Unigui is not designed for web pages only. It's a great framework for web applications. 2. For my own needs, I have developped a licence manager ( unigui isapi application), working 24/24, 7/7 since 2016. Very stable. No need to restart the server (rarely, only for windows update). Only few users are using it from internet. 2. I have developped an Unigui application (HyperServer) for a private hospital. The application is working 24/24, 7/7 since march 2018. Also, very stable. 38 users. At this day, never exceed 20 concurrent sessions, as the server is windows 10 (max 20 TCP-IP connexiins, a legacy windows limitation). Soon we will move to windows Server Edition 2016. Firebird 3.0 is continually solicited, more than 5000 transactions by month and the system is very stable. Big boss is hapy and me too That's all. 3. Oh.... If farshad said you that 1000 concurrents sessions are low load balancing for Unigui today, that is because HyperServer FmSoft technology is rock !. If you see the Unigui 2019 Roadmap, a farm servers is in developpment. Mmm....that promise good surprises ! Best regards.
  4. 2 points
    Another from the series "All about..." All about a Login Form with a Background video Project Repository for a Initial Login Screen for desktop projects with background video and informative DIV and pause / play button. Adapted example from W3School (http://wwww.w3schools.com). Panel with Gradient in two colors and centralized shade to facilitate the definition of your login controls. Note that it is a borderless LoginForm and properly configured to work. Author: Fred Montier / Cetera Softwares 1- Open your IDE 2- Open the project in the Source folder and compile / execute. 3- Open your browser and go to the default address. 4- EX: http: // localhost: 8077 Future versions like this example and others you will find easily in the portal http://www.unigui.com.br Source code right below... have fun. Projeto24-LoginVideoInBackground.rar
  5. 1 point
  6. 1 point
  7. 1 point
    Добрый день, Попробуйте это решение: procedure TMainForm.UniButton1Click(Sender: TObject); begin if ClientDataSet1.Locate('Id' ,90, []) then begin //UniSession.AddJS('setTimeout(function(){' + UniDBTreeGrid1.JSName + '.getView().getNode('+ UniDBTreeGrid1.JSName +'.uniRow).scrollIntoView()}, 500)'); UniDBTreeGrid1.JSInterface.JSCode('Ext.defer(function(){'#1'.ensureVisible('#1'.getSelectionModel().getSelected().getAt(0))}, 100);'); end; end;
  8. 1 point
    Hello, @RobertoLopes you are membership to unigui, why not make a test case and try via unigui tool ? and if you can share results with us, we are glad this. regards
  9. 1 point
    UniSession.AddJS(UniHTMLMemo1.JSName + '.insertAtCursor("'+ s +'")'); or UniSession.AddJS(UniHTMLMemo1.JSName + '.insertAtCursor('+ StrToJS(s) +')'); ?
  10. 1 point
  11. 1 point
  12. 1 point
    @Farshad: What are the chances, if at all possible, to create a TDBCtrlGrid equivalent for UniGUI?
  13. 1 point
    Добрый день, Спасибо за Ваш интерес к UniGUI, Нет, Вам нужно просто переустановить UniGUI Каждый разработчик может установить собственную копию uniGUI на одном или нескольких компьютерах, которые будут использоваться только им. Вы должны переустановить UniGUI с новым сгенерированным ключом.
  14. 1 point
    can you sample source please how use? I want use with firebird event
  15. 1 point
    Geralmente quem usa a versão 1397 é pirata, aí terá realmente vários problemas, se você tiver a licença original, use as versões mais recentes, se não tiver, busque comprar, quem é meu aluno tem 10% de desconto na compra e ainda pode parcelar em 12x com cartão bandeira nacional. Se não quiser adquirir o meu curso, ainda sim pode parcelar em 12x. O Farshad e sua equipe está fazendo um belo trabalho com o uniGUI, o valor que você investir na compra terá um retorno rápido com os webapp que fizer.
  16. 1 point
  17. 1 point
    so you need responsive grid? I don't see any responsive site where responsive design was created "automatically" when you just only place components to page. It is hard work with CSS which can take month of work hours while you fix all bugs in different resolutions. It is impossible to implement with delphi form where you can place component whereve you want Look at TMS sample https://app.devgems.com/xdata/music/app/ - this is a braking turn-based strategy, works very slow. Yes, for this piece of shit you can do some automatic resposivity, but which sence use Delphi for so class application if you can create them in PHP for several hours. Delphi is for enterprise desktop applications. How responsivity will look with that gui? I don't understand how much time Farshad will need to implenet "automatic" responsivity for each GUI control - it is impossible and will take all he free time for year to fix bugs with that. ? https://content.screencast.com/users/p2rcoder/folders/Snagit/media/5be18435-f5f3-4ccf-8e1d-a83788af0f13/10.09.2018-16.05.png
  18. 1 point
    Доброго. Решил выложить инструкцию по установке uniGUI для тех, у кого только С++. Так как на сайте устарела документация. 1) Качаем с сайта и устанавливаем в директории по умолчанию сам uniGUI. 2) Теперь нам необходимо создать скрипт для компиляции bpl файлов. Для этого идем по пути C:\Program Files (x86)\FMSoft\Framework\uniGUI и смотрим нам подходящию версию .groupproj. Открывам файл в блокноте и смотрим все файлы в теге ItemGroup. 3) Из файлов что в ItemGroup собираем скрипт (для Tokyo) он будет таким. cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\uSynEdit\Packages msbuild uSynEdit_R2021.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All msbuild uSynEdit_D2021.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniTools msbuild uniTools25.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\uIndy msbuild uIndy25.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\core msbuild uniGUI25Core.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\components msbuild uniGUI25.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\vcl msbuild uniGUI25VCL.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\design msbuild uniGUI25dcl.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\components msbuild uniGUI25Chart.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\design msbuild uniGUI25Chartdcl.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\core msbuild uniGUI25mCore.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\components msbuild uniGUI25m.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All cd C:\Program Files (x86)\FMSoft\Framework\uniGUI\source\design msbuild uniGUI25mdcl.dproj /p:Configuration=Release /p:DCC_CBuilderOutput=All 4) В меню Пуск ищем программу "RAD Studio Command Prompt" (она поставляется вместес со средой..и является командной строкой). Запускаем от администратора. В нее вставляем наш скипт. Результатом будут собраны необходимые bpl. 5) Открываем среду и лезим в установку компонентов Component-> Install Packages->Add. По умолчанию .bpl будут находится по пути C:\Users\Public\Documents\Embarcadero\Studio\19.0\BPL. Нам нужны только те файлы,в котрых есть в названии dcl. PS вставил бы скриншоты действий, но правов нет
  19. 1 point
    HI Farshad, thanks :-) There are few little things that Unigui don't have for porting TOTALLY a desktop VCL application without losing any "ergonomic" features: grid scroll (virtual, without pagination), advanced lookup (with grid inside and input validation during typing), true editing in grid (cell by cell, without click or enter for edit) for a fast user input (like vcl dbgrid). With this little features, i can distribuite to my customer a web version of desktop application, without big difference and with a "wow" factor. I hope to install the same Unigui application as standalone, local network and enterprise (with HyperServer and balancing) remote farm. Please make me happy :-) Good job!
  20. 1 point
    I only wanted start grid with the grouping collapse. Workaround with: UniSession.AddJS(unidbgrid1.JSName + '.view.features[0].startCollapsed=true;') ;
  21. 1 point
    Hi, We will check this issue. For now, can you try this approach ?: http://forums.unigui.com/index.php?/topic/6146-unitreeview-background-color-old-issue-1016/ Best regards,
  22. 1 point
    Hi, How to change the background color for a unitreeview? I tried the property color , or parent color, but always stay in white color. exactly the same error with font size. whang changing the font on design time it does not change in run time. any idea? thx eric
  23. 1 point
    Hi! For example: 1. MainForm.Script: var IDLE_TIMEOUT = 60; //seconds var _idleSecondsCounter = 0; document.onclick = function() { _idleSecondsCounter = 0; }; document.onmousemove = function() { _idleSecondsCounter = 0; }; document.onkeypress = function() { _idleSecondsCounter = 0; }; window.setInterval(CheckIdleTime, 1000); function CheckIdleTime() { _idleSecondsCounter++; var oPanel = document.getElementById("SecondsUntilExpire"); if (oPanel) oPanel.innerHTML = (IDLE_TIMEOUT - _idleSecondsCounter) + ""; if (_idleSecondsCounter >= IDLE_TIMEOUT) { //alert("Time expired!"); //document.location.href = "logout.html"; ajaxRequest(MainForm.form, '_idle_timeout', []); } } 2. MainForm->onAjaxEvent: procedure TMainForm.UniFormAjaxEvent(Sender: TComponent; EventName: string; Params: TUniStrings); begin if EventName = '_idle_timeout' then begin // your logic ShowMessage('idle_timeout'); end; end; Best regards.
  24. 1 point
    Hi, Try: procedure TMainForm.UniButton1Click(Sender: TObject); var s: string; begin s := 'something'; UniSession.AddJS(UniHTMLMemo1.JSName + '.insertAtCursor("'+ s +'")'); // or - UniSession.AddJS(UniHTMLMemo1.JSName + '.insertAtCursor("'+ s +'" + " ")'); end; Best regards.
  25. 1 point
    Hi, Perhaps this decision is not completely consistent your requirements, but try... 1. Add the following components: UniHTMLMemo1, UniFileUpload1 2. UniHTMLMemo1 -> ClientEvents -> UniEvents -> add function beforeInit: function beforeInit(sender, config) { config.listeners = { render: function(editor) { editor.getToolbar().add({ xtype: 'button', text: 'imageUpload', handler: function() { ajaxRequest(sender, 'uploadImage', []) } }); } } } 3. UniHTMLMemo1 -> OnAjaxEvent: procedure TMainForm.UniHTMLMemo1AjaxEvent(Sender: TComponent; EventName: string; Params: TStrings); begin if EventName = 'uploadImage' then begin UniFileUpload1.Execute end; end; 4. UniFileUpload1 -> OnCompleted: procedure TMainForm.UniFileUpload1Completed(Sender: TObject; AStream: TFileStream); var DestName : string; DestFolder : string; begin DestFolder:=UniServerModule.StartPath+'UploadFolder\'; DestName:=DestFolder+ExtractFileName(UniFileUpload1.FileName); CopyFile(PChar(AStream.FileName), PChar(DestName), False); UniSession.AddJS(UniHTMLMemo1.JSName + '.execCmd(''InsertHTML'', ''<img width="138" height="87" src="'+ 'UploadFolder/' + UniFileUpload1.FileName +'"></img>'')'); end; 5. MainForm -> OnCreate: procedure TMainForm.UniFormCreate(Sender: TObject); begin ForceDirectories(UniServerModule.StartPath+'UploadFolder'); end; 6. uses ... ServerModule ... Try, Best regards.