Jump to content

Leaderboard

Popular Content

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

  1. Google Charts in uniGUI Hello, I have published in github my components to generate charts in uniGUI using de Google Charts API. The components support the following types: Annotation Area Bar Bubble Calendar Candlestick Column Combo Diff Donut Gantt Gauge Geo Histogram Intervals Line Organization Pie Sankey Diagram Scatter Stepped Area Table Timeline Tree Maps Trendlines Waterfall Word Trees The library includes in demos folder the GChartsDemo project with several examples that show how to build the different class charts. When running the demo you can: Display the Delphi Code used to generate the Chart Click Google Guide button to see the official documentation of Google Charts. Click on the Chart to see fired events You can get the source code in https://github.com/JosepPages7/Delphi-GCharts Also you can see in action: http://contacloud.eu/app/gchartsdemo.dll (this link will be active during a short period time) Please, if you use or like Delphi GCharts, "Star" this project in GitHub!
    9 points
  2. From what I see, your company owns two licenses. Why not take the straight-forward path and assign one of these licenses to your email address which can be done very easily in the customer portal. There is no need to complicate things when there are simple ways to avoid it. Thanks
    5 points
  3. My TcmWeb UniGUI App is a Graphical Knowledge Base that one can search health issues and design custom protocols for treatment visually. Top Panel: Acupuncture Meridians Left Panel: Meridian Points Center Panel: Info on selected Meridian / Point Right Panel: Marshaling Ground for building Custom Protocol The whole TCM encyclopedic knowledge base within can be sub-searched filtering down Meridians / Points of interest from where one can then assemble a custom treatment plan.
    5 points
  4. Hello Friends! One of these days I will try to post an example. Sources: Created based on UniSweetAlert and https://sweetalert2.github.io/ Theme: Material-UI, but it is possible to include and use the available themes (https://sweetalert2.github.io/#themes)
    3 points
  5. Hi, We will publish a build to address all D11 related issues. Thanks
    3 points
  6. You can use MainModule.BeforeLogin event to check the parameters and handle the login instead of showing login form.
    3 points
  7. uniGUI - v1.90.0.1552: [UNG-3267] - RAD Studio 11.0 Alexandria Support
    3 points
  8. hello @Norm I made my own procedure for ended sessions: TUniServerModule.UniGUIServerModuleBeforeInit urlMessage := '<html>' + '<style>' + '.button {' + ' border: none;' + ' color: white;' + ' padding: 16px 32px;' + ' text-align: center;' + ' text-decoration: none;' + ' display: inline-block;' + ' font-size: 16px;' + ' margin: 4px 2px;' + ' transition-duration: 0.4s;' + ' cursor: pointer;' + ' border-radius: 12px;' + ' box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);' + ' margin: 0;' + ' position: absolute;' + ' top: 10%;' + ' left: 50%;' + ' -ms-transform: translate(-50%, -50%);' + ' transform: translate(-50%, -50%);' + '}' + '.button1 {' + ' background-color: white;' + ' color: black;' //+ ' border: 2px solid #4CAF50;' + '}' + '.button1:hover {' + ' background-color: #4CAF50;' + ' color: white;' + '}' + '</style>' //reload page + '<script>' + 'function redirect() {location.href = window.location.href;}' + '</script>' + '<body bgcolor="#dfe8f6">' + '<p style="text-align:center;color:#0000A0">[###message###]</p>' + '<button class="button button1" type="button" onclick=redirect()>Restart application</button>' + '</body>' + '</html> ; ServerMessages.ExceptionTemplate.Text := urlMessage; ServerMessages.InvalidSessionTemplate.Text := urlMessage; ServerMessages.TerminateTemplate.Text := urlMessage; here is result: So i make too: 1. Short sessions timeout - 30 minutes 2. uniTimer to check user activite and close session (Browser closed or no user activities) 3. I have no Timer on login form (session expired after 30 minutes), but after login: Timer is activated and this keep session alive forever. That make me to create: 3.1 every 15 min i ask from user to confirm if is there . Wait 15 second answer from user and close session if not answer. 3.2 Wait 30 minutes for user activities and close session if no activities. This is solution if user close browser, stop internet or is passive (no activities) All this is in file with user settings. Points 3.1 and 3.2 make the same (close session if no user activities), so one of them is enough. I allow with user settings to choose how the application works.
    3 points
  9. UniSweetAlert2.rar
    2 points
  10. Hello Friends! Try this. ColorComboBox.rar Limitations: procedure TUniServerModule.UniGUIServerModuleCreate(Sender: TObject); begin FormatSettings.DecimalSeparator := '.'; end;
    2 points
  11. In few hours will be available. Some features This project and a series of them related to WhatsAPP and uniGUI will be for sale. With this one that will be available in the next hours, you will be able to integrate your uniGUI APP with the WhatsApp network using a WhatsApp web session via CEF4Delphi and using the TInject component to insert JavaScript code in the Chrome session and thus control the application. -Integrates WhatsAPP with uniGUI without using middlewares or any api using WhtasApp Web via CEF4Delphi. -Easy integration with your projects (uniGUI or VCL) and many improvements in component and Demo. -Authentication via QrCode through the form in uniGUI or directly on the VCL screen saving the image, so you can send it to integrate with your other services or applications. -Uses the TInject component (version modified by me) with the following features: Send messages Receive messages Send media (images/audio/documents) Send media (video) (requires google chrome) Send stickers Receive media (images/audio/video/documents) Send contact cards Send location Send VCard Send Link With Preview (e.i.: Youtube, ticktok, instagram etc) Retrieve image thumbnail location and convert to link Receive location (implementings) Receives VCard Message replies Join groups by invite Get invite for group Modify group info (subject, description) Modify group settings (send messages, edit info) Get Broadcast groups only, send only to them etc. Add group participants Kick group participants Promote/demote group participants Mention users Mute/unmute chats Send Buttons Send List Options (in test, soon to be released) Block/unblock contacts Get contact info Get profile pictures Set user status message Get Battery and Device info From OpenSource project https://github.com/pedroslopez/whatsapp-web.js https://docs.wwebjs.dev/ https://github.com/open-wa/wa-automate-nodejs/ (W/ partialy paid - No paid feature included in this project) https://github.com/mikelustosa/Projeto-TInject <-- TInject - Free version https://github.com/salvadordf/CEF4Delphi Visit our groups: https://t.me/uniguiexpress (english) https://t.me/uniguiBrazil (portuguese-br) My contact: WA/TG: +55-1198620-7676 WhatsuniGUI-Sending.mp4 WhatsuniGUI-Preview.mp4 WhatsuniGUI-Buttons.mp4
    2 points
  12. OPENALPR - Automatic License plate recognition for uniGUI and VCL Desktop With this project you can easily implement image-based license plate automatic reading capabilities. Specially prepared for uniGUI Desktop and Mobile. In mobile format, it uploads the image directly to the server and returns the plate reading in just one step. It also has samples for VCL and console for batch reading of images. Very useful for administrative and administrative applications. It uses OPENALPR (derived from OPENCV) and is one of the most used open source libraries for reading plates and very efficient. See more at the link below and info for purchasing the project with the source codes. Uses OPEN CV / OPEN ALPR: The best license plate library in the world. Supports Brasil (Old Format and Mercosur new plates), United States (See OpenALPR*), Mercosur (Brazil, Argentina, Paraguai, Uruguai etc), Indian, European Zone, Vietnam, Korean etc * very tricky because is not padronized at national level. Each state has a design / format. You can customize your parameters to your country format plate using OPEN ALPR tools or configuring similar formats (as Mercosur is to Euro format) already done. uniGUI: Works in Desktop and Mobile with auto upload image to server. Much faster takeing a picture and uploading after. See demo videos below. In mobile, works with your Hi-RES Mobile Phone cam or my customized code to Low-Res close shot picture using rear cam and faster recognition. This feature you only find in this project ! Easy to capture, auto upload to server and get result ! Easy to implement. No "bogus ocus, pokus" code. In VCL, example to read, use mask, ROI, batch image reading and ideal to automate images captured by traffic cams and tickets. This feature you only find in this project ! I've made a lot of improvements to the original codes. We support the code published by us. No third party components. All fonts included for Delphi/Pascal. Need OpenALPR DLL interface to Delphi and, APLR Librery, all included and with source-code. No hidden costs or fees. Yes, we offer advice on adapting any of these examples to your systems. Contact us to receive a proposal. Although you can use live feed video to plate recognition, this is not the objective here. You will need a very powerful hardware and graphics cards to read video feed in realtime. You need an uniGUI license to use the uniGUI version. HTTPS connection required for use in your domain. See more info. and price: https://www.unigui.com.br/uniGUIALPR-eng.html Send the codes via download
    2 points
  13. sorry for the confusion, and thanks for the help.
    2 points
  14. Dears, The new release Equinox 1552 is just freshly released. Thank you Farshad. 😃 Improvement [UNG-3257] - New method to install uniGUI for CPP Builder (Without RAD Studio) [UNG-3264] - New mobile Column type: ceMemo Task [UNG-3267] - RAD Studio 11.0 Alexandria Support New Feature [UNG-3258] - New visual theme: uni_windows10 [UNG-3265] - TUnimDBGridColumn: New DisplayMemo property [UNG-3268] - HyperServer Server Farm Cluster [UNG-3269] - HyperServer Applications Bug [UNG-3259] - HyperServer: Remote configuration doesn't apply Node Recycling parameters. [UNG-3260] - HyperServer: WaitNode timeout is not counted correctly. [UNG-3261] - uniDBGrid: Filtered grid reloads data incorrectly. [UNG-3262] - uniDBGrid: Issue when data is appended after grid is emptied. [UNG-3263] - SessionIdle event is not fired when there are data events. [UNG-3266] - unimDBGrid: Readonly columns should not appear in editor panel. [UNG-3270] - Grid Exporters: Totals are not shown in correct column if hidden columns exist.
    2 points
  15. On 30th September 2021, the root certificate that Let's Encrypt are currently using, the IdentTrust DST Root CA X3 certificate, will expire. Just in case you missed it - here is a good blog post about the situation - https://scotthelme.co.uk/lets-encrypt-old-root-expiration/
    2 points
  16. Hi, Have you read my post in Development Status thread?
    2 points
  17. OK. It seems that the problem occurs when Nodes are launched and there is no shell -or- when HyperServer is launched from a shell which no longer exists. This can lead to Nodes which doesn't own a parent. These Nodes will morph into zombies when they are terminated. We will look into this problem in more depth to see if there is a solution. Thanks
    2 points
  18. An open-source standards-friendly JavaScript utility for embedding PDF files into HTML documents. Demo: pdfobject.rar Sources: https://pdfobject.com/ https://pdfobject.com/#api https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf http://www.africau.edu/images/default/sample.pdf https://microsite.nintendo-europe.com/supermariomaker_artbook/SuperMarioMakerBooklet.pdf
    2 points
  19. About UI: I see a lot of confusion between responsive design, responsive layout / adaptive design. Right now, I don't know any tools (IDE + Compiled Programming Language) for application development where most projects are used in ERPS or CRMs with dozens of controls per form that delivers the same UI in any browser and mobile device using EXACTLY the same components without refactoring, correcting or changing events and properties of these same objects in a single project. Make one run at any device approach. There has to be a paradigm shift between development for the desktop platform with client / server architecture for the Web format, sessions and API consumption. Many just want to replicate on the WEB what their systems did in the past decade on Windows. It doesn't work like that. Responsive Design and Adaptive Design are more about alignment, screen resolution and component layout on the screen, sensitive to its dynamic reorientation. The problem occurs in the dozens of data entry controls that work using different input devices: the mouse/keyboard and your freaking finger ! That changes how controls works ! Good luck making it work across browsers and across different devices ! About UX: I can't imagine a user filling out a registration form with 30 different fields using a smartphone as shown on the screen above. And using the hint properties to align components in a framework that we already have several "pseudo-wysiwyg" problems is not a solution at all. Better to learn HTML / CSS / JS and use uniHTMLFRAME in a way that a true web designer would. But in such case, what is the need for uniGUI anyway ? We need a better Ext.JS documentation to interface with uniGUI and complete possibilities to deploy a PWA ! That means leaving Ext.JS or just making another project option by the Project Wizard at the IDE. That would be great !
    2 points
  20. I think, for now you can use this technique: MainForm->Script ... add these lines: Ext.onReady(function() { window.location.hash = "main"; window.location.hash = "again_main"; // again for chrome window.onhashchange = function() { window.location.hash = "main"; } })
    2 points
  21. Hello I need to implement a process to add a digital signature to an existing PDF. The user must be able to select a local certificate (in client machine) and the app must sign the pdf file with this certificate. Thanks in advance Antonio Torregrosa
    1 point
  22. Thank you! Your solution works as needed!
    1 point
  23. Dear forum members I had the idea for some time to set up a structured wiki / knowledge bank for uiniGUI. From today http://www.uniguiwiki.com is therefore operational. It is a wiki / knowledge base where as many ready-made solutions as possible can be found in a structured way. The forum works well, but it is sometimes very difficult to find solutions. With the help of this wiki / knowledge base I want to add some structure. Unfortunately, you cannot create a wiki post yourself, this to preserve the structure as much as possible and to prevent proliferation. Maybe this will come in the future. However, it is possible to create some authors who want to post solutions or help. Everyone may have code, tips / tricks that they want to make available on the wiki. I therefore depend on your help to fill this wiki as a central knowledge base. For this I have created an 'upload facility' where you can upload examples. I will then view, assess and make this available on the wiki. To access the wiki / knowledge base, you must create an account and then you can consult the wiki / knowledge base and upload any code. If you have any suggestions, please use the contact form on the site or send a PM via the forum. Regards Peter
    1 point
  24. не понял вопроса. По идее просто указать тип фильтра. s := s + sLineBreak + 'columns[' + i.ToString + '].filter = {type: ''string''};
    1 point
  25. Solution: UniSession.AddJS('document.title=" TESTE - ' + UniMainModule.UserActive.Empresa.NomeFantasia+'"');
    1 point
  26. thank you very much... works fine...
    1 point
  27. It worked! Thank you very much Sherzod. Now my chart.beforeInit looks like this: function chart.beforeInit(sender, config) { //hide markers config.series[0].marker = false; //change font size config.axes[1].label = { fontSize: 10 }; //word wrap config.axes[1].renderer = function(v, l) { //{1}-Wrap after one word //{2}-Wrap after two words return l.replace(/((?:\w+ ){1})/gi, "$1\n"); }; }
    1 point
  28. create a specific email to access the portal that is known to the company you work for type uniguisupportyourcompany@gmail.com your boss will know the password that will be used to access the forum if tomorrow you leave the company, he will be able to change the password and move to a new employee I suggest not using your personal email now it's not up to criticize the support of unigui where we always have help not only from the community but also from our master farshard, who is always looking to help us.
    1 point
  29. Hello, Try something like this: function chart.beforeInit(sender, config) { config.axes[1].label = { fontSize: 14 }; config.axes[1].renderer = function(v, l) { //{1}-Wrap after one word //{2}-Wrap after two words return l.replace(/((?:\w+ ){2})/gi, "$1\n"); }; }
    1 point
  30. 1 point
  31. 1 point
  32. Try this (font size): function chart.beforeInit(sender, config) { config.axes[1].label = { fontSize: 14 } }
    1 point
  33. Excuse me. I posted where there were already related posts previously it was not my intention to do anything wrong. This will never happen again. Don't do the same thing other users on other platforms do. Do not criticize the work that refers to Unigui itself and has helped dozens of users and has also helped unigui, because here in Brazil, because of Radcore, several licenses are sold. It is not because some do not use it that it is frowned upon. This is exactly what intraweb and tms web core users do with unigui users.
    1 point
  34. Hello, I am learning to use UniChart. I noticed that, by default, bar charts have small circles (markers?) on top of them, and sometimes on other part of the bar. How do hide these small circles? Thanks
    1 point
  35. Hello, Try this config for now: function chart.beforeInit(sender, config) { config.series[0].marker = false; }
    1 point
  36. Important note: This is not a console string CMD result solution. Is really integrated to uniGUI project. Although there is the possibility to do so. And there is a console app to do see in this package but my main objective here is: a- Read any plate in the street b- Fast upload c- Fast result on the fly ! d- Integrated to my plate DBs search (of course, not in this project), and presto ! Only with uniGUI. You can't do this with Intraweb ! Only using the console exec. Tried and failed since 2009, this very same project ! And now it works, in MOBILE !!! PS: I'm posting in "uniGUI DOES..." series my favorite uniGUI app to date and is for my personal use. Of course, it will be free.
    1 point
  37. Hello, I have not RAD Studio, so no linux developpmenr, sorry. http://www.unigui.com/doc/online_help/index.html?remote-deployment.htm
    1 point
  38. Test : Upload any .exe to VirusTotal ( NotePad.exe or Paint.exe). if detected Trojan, that means your PC is infected.
    1 point
  39. @Farshad Mohajeri you surprise us every day, it takes unigui to another level. week ending....
    1 point
  40. Custom standalone uniGUI Server With this project you can fully customize your uniGUI StandAlone Server. This allows you to easily place your icons that will appear on the taskbar when opening the pop-up menu, hint on the Taskbar icon, create your pop-up menu with several additional options and access to your tools to integrate and run other programs. I always thought that I should have this possibility in an easy way and the only way was to change the .DFM of the default project. As this code allows you to do everything your way and without third party components. No need to install anything else. The big advantage is that it speeds up the development process a lot. So your StandAlone project appears with the hint of your company or APP and with your name highlighted, your icons. Customize the way you want. List of resources: - Custom Hint - Customized Pop-Up Menu Icons - Open your project in FireFox, Edge and Chrome via Pop-UP menu (see screenshots) - Pause StandAlone Server - Manage uniGUI Server folders (Open and Clear) - Load your last server log file - Easily configure popup menu to run other programs - Terminate standalone server correctly. ...etc. In short, it greatly speeds up the stage of your development and lets you know how to make a StandAlone with your business data or with the name of your product. The source code of this project is for sale for $ 25.00 (USD). Sending the sources immediately. Call in PVT when in doubt WhatsApp/Telegram +55-11986207676.
    1 point
  41. Here is a video tutorial for making your Unigui WebApp a Real-Time application, it makes your app more powerful and it's ready for: real-time monitor, chat, control... Attached: 2 projects (webapp + websocket server app), mysql db. Have fun 🙂 WebApp.rar WebSocketServer.rar mycompany.sql
    1 point
  42. Hi Help us to grow www.uniguiwiki.com with unigui examples and code. We are still looking for content for the wiki / knowledge base. Do you have ready-made code / examples / links on the forum that we can include and make available in a structured way: - mail to registration@uniguiwiki.com - use the upload function at www.uniguiwiki.com - send a PM through the forum Happy coding...regards Peter
    1 point
  43. after 35 years i went back to university and just got 1st Class degree in computer science at the age of 56 it was hard studying with 19 year olds, whom are younger than my youngest son
    1 point
  44. Hi, Ok, one possible solution, Can you try to use this approach for now ?!: 1. UniChart1 -> ClientEvents -> UniEvents -> function chart.beforeInit: function chart.beforeInit(sender, config) { sender.colors=['red', 'yellow', 'blue', '#ff7788']; } 2. UniChart1 -> ClientEvents -> ExtEvents -> function beforerender: function beforerender(sender, eOpts) { var me=sender.chart; me.refill=function(sprite, config, rendererData, index) { return {fillStyle: me.colors[index]} }; me.series[0].setRenderer(me.refill); } 3. procedure TMainForm.Set_Colors(L:Tstrings); begin with UniChart1.JSInterface do begin L.Delimiter:=','; JSCode(#1'.chart.colors="' + L.DelimitedText + '".split(",");'); JSCode(#1'.chart.series[0].setRenderer();'); JSCode(#1'.chart.series[0].setRenderer('#1'.chart.refill);'); end; end; Best regards,
    1 point
×
×
  • Create New...