Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/25/23 in Posts

  1. Alejandrux

    Delphi 11.2 and MacOS SDK 15.5

    @Dave Nottage @Stanislav Yotov @loki5100 @John van de Waeter @oakley After searching the WEB the solution is to run commands: sudo sysctl net.link.generic.system.hwcksum_tx=0 sudo sysctl net.link.generic.system.hwcksum_rx=0 It works like a charm and solve the slow transfer between Vmware Ventura machines PAServer to Window Machines Did you drank the beers Mr. Nottage?
  2. Alexander Halser

    A popup color selector for Windows and MacOS

    For a new FMX app (Win/Mac only), I need some UI controls that go beyond the simple features that the Delphi built-in controls have to offer. One of them is a color picker component. There are very few color picker tools available for FMX and creating a new one turned out to be more work than anticipated. That's why I put mine on SourceForge. If you require a similar control, feel free to use it as you please. Delphi FMX Color Selector download | SourceForge.net I hope to get some feedback on the component as well, because it currently has 2 flaws (explained below). To use the color picker, reference the unit and call one of the two global methods ColorDropdown and ColorButtonDropdown. The first method is generic and can be used with any control, the second expects a standard TColorButton. I have implemented the component in a TForm that is dynamically created at runtime. No component installation required. This was an important point [for me], because I need a few more very specialized popup controls that are supposed to be placed in this form. Using a simple TForm makes it much easier to design them than doing everything in code. Current issues: One of the obstacles I came across was a drawing bug in TGrid, at least with Delphi 11.0 (maybe fixed in later versions). The grid is/was designed to fit exactly 10 rows and on the first display, it properly shows all 10 rows. Close and reopen the popup control, and the original 10 rows have shrunken to 9 visible rows. I fixed it by making the grid tall enough for 11 rows and filled the whitespace below by moving the opacity slider up. Looks fine and works so far, but if someone has an idea how to fix the visible rows in TGrid, I would appreciate a feedback. The second issue is the color picker. It's implemented as a picture that you can drag & drop anywhere on the parent form to pick a color. This method is safe, but not 100% intuitive. A click-button-then-select-color function would be nicer. So, if anyone wants to spend time on that, I appreciate it. Apart from that, have fun trying it - demo application is included.
  3. I personally would use Mitec System Information Component Suite, because I already use it for many of its dozens of other information sets. It is probably overkill if you only need this one enumeration, but it's excellent value if you also need more. https://www.mitec.cz/msics.html
  4. @ Rollo62, Hi, I am starting out slowly. But I've coded various apps on Android over the years since XE7. I am not fluent in the Permissions area, but so far in this project, I am okay with what I have working on. I ride through trails in my area, so I am using that as an opportunity to test my app in order to debug and make any necessary changes/additions.
  5. Alexander Sviridenkov

    ANN HTML Library 4.7 released

    What's new video: Demos used in video: Map Viewer (OpenGL canvas., SVG, PDF, etc) https://delphihtmlcomponents.com/MapView.zip Fast blur: https://delphihtmlcomponents.com/blur.zip HTML Editor (VCL), print preview window https://delphihtmlcomponents.com/htedit.zip Office file viewer and print preview window https://delphihtmlcomponents.com/FileBrowser.zip What's new: Core Precise text rendering and measurement for all windows canvases: now text has the same layouot in GDI, GDI+, DX and Skia canvases on screen and printer and doesn't depend on scaling. Skia canvas for VCL. PDF export using Skia canvas - works from any canvas, not only Skia OpenGL canvas - useful for fast rendering of very large SVG (don't use as default canvas - it requires window handle). GDI canvas: improved graphics rendering speed. CSS var() support. function htmlpars.GetHTMLEncoding - determine codepage of HTML (TBytes). function for converting stylesheet to dark theme - TCSSStyleSheet.LighttoDark Support for UTF8 encoded inline SVG images. Optimized SVG paths seialization (smaller size) Optimized drawing of large SVG Support for individual glyph positioning in SVG text (DX attribute). THtCustomPath: CurveTo record now do not have initial point, all curves are defined by 3 points. HtPanel/Editor: support for horizontal mouse wheel HtPanel/Editor: Smooth scrolling in both direction HtPanel/Editor: Fast zoom in / zoom out in OpenGL canvas. Library now contains fastest native blur implementation (10-50 times faster than other). See htcanvas.FastBlur() Fast Base64Encode function (5-10 times faster than standard): htutils.Base64EncodeNoLF() THtBitmapData bitness conversion and masking methods are optimized using SIMD, f.e. Convert24to32. TSVGElement has GetStats methods for retrieving number of primitives, points, etc. Added support for system colors from CSS 4 color module: canvas, canvastext, field, fieldtext, etc. Bitmap images are now supported in GDI+, DX and Skia canvases. FontAwesome is upgraded to version 6.4. Now it contains regular (fa) and solid (fa-solid) icons. Support for CSS variables. Optimized displaying of documents containing many SVG images - like converted PDF documents (2000+ pages). Support for outlined and filled text (SVG). Support for relative image paths ('.\..') Improved flexbox layout. THtImageConverter now have CanvasClass propery - used in HTMLtoPNG conversion. HtPanel: OnScroll event New core classes documentation - /docs/HTML Library.chm/pdf https://delphihtmlcomponents.com/help/ New demos - MapView, Blur, Skia Editor Words suggestions/prediction while typing - see Words prediction section in Editor manual. New icons in context toolbar. Context and selection toolbars has acrylic background. All toolbars (selection, spellcheck) can be closed by pressing Esc. Add/edit image button in context toolbar Copy image button in selection toolbar Print preview button in context toolbar Add Symbol button in context toolbar. Spellcheck button in context toolbar. Windows ISpell implementation - htspellwin unit. Simply add it to uses list for spellcheking and word correction. Inline word correction - click on misspelled word to see suggestions. Windows spellecher is also used for autocorrection, suggection selection is based on Levenshtein distance. Cancelled autocorrections are remembered - words are added to exceptions list. Inline image cropping - use shift + resize handles Reports and Scripts New preview window for VCL and FMX (OSX, Linux) - float toolbar, smooth scroll and zoom, page selection and reorder, text search, text editing and moving. Preview window store its maximized/normal state and position for normal state even when maximized. Support for var parameters of all types. Fixed repeat - until bug. Default indexed properties now workind for object proprties, f.e. property Strings: TStringList; Obj.Strings := 'test'; Script can have own debugger instance
  6. Attila Kovacs

    ANN HTML Library 4.7 released

    It became really fast with about 30.000 shapes. Like you were zooming/scrolling etc.. an image without any lag.
  7. Alexander Sviridenkov

    ANN HTML Library 4.7 released

    Thank you. Processing of documents with many SVG images is improved for all platforms and doesn't depend on canvas. But fast rendering of single large SVG image is for VCL OpenGL canvas only.
  8. Attila Kovacs

    Type within a class

    it's a type declaration in the class it's type TDataContainer = class public type TIterateAction = reference to procedure (value: integer); strict private FData: TArray<integer>; FIndex: integer; public constructor Create(const data: TArray<integer>); procedure Iterate(action: TIterateAction); function GetFirst(var value: integer): boolean; function GetNext(var value: integer): boolean; end; TDataContainer.TIterateAction type It's just ebarcadero who does not give a fuck to implement its own syntax to the formatter.
  9. Arnaud Bouchez

    Delphi Developer wanted

    Nice seeing another growing project using mORMot. 😉 You can post the offer on Synopse forum, too, if you want.
  10. David Heffernan

    Rounding issue

    Here's some Python output that should help: >>> from decimal import Decimal >>> Decimal.from_float(1.015) Decimal('1.0149999999999999023003738329862244427204132080078125') >>> Decimal.from_float(3.015) Decimal('3.015000000000000124344978758017532527446746826171875') >>> Decimal.from_float(1.015*100) Decimal('101.4999999999999857891452847979962825775146484375') >>> Decimal.from_float(3.015*100) Decimal('301.5') And @Stefan Glienke explained why results differ on 32 bit because that uses an intermediate 80 bit extended register that will have different values for the closest representable value.
  11. Stefan Glienke

    Rounding issue

    On 32bit the compiler keeps the value of the multiplication in the FPU to pass it to Round (which takes its parameter as Extended), on 64bit the precision of Extended is the same as Double. You get the same result on 32bit if you store the result of the multiplication into a double variable and then pass that one to round.
  12. Hi,There is a new, up-to-date and free training series. In the training, Rad Studio and REST server application development and mobile application development are explained.The training content is in Turkish. The topic describes how to develop a mobile application with REST architecture.These training topics are:Eğitim dizisinde sunucu ve istemci tarafı veri iletişimi için genel olarak aşağıdaki işlem adımları gerçekleştirilmiştir. PostgreSQL veri tabanı üzerinde StoredProcedure tanımlamak. JSON veri modellemek ve çözümlemek (front-end ve back-end veri iletişimleri). REST sunucu-istemci API yapısını modellemek ve metodları (kayıt eklemek, kayıt silmek, kayıt güncellemek) oluşturmak. REST servisini yeniden yayınlamak. End-Point API testlerini yapmak (REST Debugger). REST API metodlarının front-end tarafına entagrasyonunu sağlamak. 1. Hafta (6 Eylül 2019)Eğitim içeriği FMX Mimarisi nedir? Rad Studio IDE Yapısı Multi Device Proje Oluşturma Mobil Uygulamalarda Menü Yapısı Eğitim : 1. Bölüm - Multi-Platform Mobil Uygulama Yazmaya Giriş2. Hafta (14 Eylül 2019) - Linux Sunucu Uygulaması Yazmak (1. Bölüm) Eğitim içeriği Cross-platform mimarisi ve avantajlarının neler olduğu Linux sunucu üzerinde PostgreSQL veri tabanı kurulumu PostgreSQL DBA aracının kurulumu ve kullanımı Bir proje analizinin nasıl yapılacağı Veri tabanı analizi ve modellenmesi Veri tabanı modelinin, veri tabanına aktarılması PostgreSQL veri tabanının genel yapası Storedprocedure ve trigger kavramları Storedprocedure oluşturmayı Veri tabanının yedeklenmesi ve geri yüklenmesi Eğitim : 2. Bölüm - Linux Sunucu Uygulaması Yazmak - 13. Hafta (21 Eylül 2019) - Linux Sunucu Uygulaması Yazmak (2. Bölüm) Eğitim içeriği SOA, REST ve RESTfull ne olduğu ve aralarındaki farkları REST Debugger aracı ve kullanımı JSON veri yapısı ve JSON Editörü Bir REST API servisinden JSON veri almak ve front-end tarafında biçimlendirmek Eğitim : 3. Hafta - Linux Sunucu Uygulaması Yazmak - 2. Bölüm4. Hafta (28 Eylül 2019) - Linux Sunucu Uygulaması Yazmak (3. Bölüm) Eğitim içeriği PAServer kurulumu Linux Console uygulaması yazmak WebModule uygulaması nasıl oluşturulur ve proje yapısı nasıldır? Linux geliştirici araçlarının kurulumu Apache kurulumu ve konfigürasyonu nasıl yapılır? Linux sunucu REST uygulamasında istekte bulunan URI’ye bir JSON veri döndürmek WebModule API yapısının oluşturulması Linux sunucu uygulamasını yayınlamak Sunucu metodlarını REST Debugger aracı ile test etmek Eğitim : 4. Hafta - Linux Sunucu Uygulaması Yazmak - 3. Bölüm5. Hafta (05 Ekim 2019) - Mobil Uygulama (Android ve iOS) Yazmak (1. Bölüm) Eğitim içeriği OrangeUI bileşen setini tanımak. OrangeUI bileşen setini kurmak. Mobil uygulama ana ekran tasarımını yapmak Mobil uygulama ana frame tasarımını yapmak Mobil uygulama Giriş ekran tasarımını yapmak Eğitim : 5. Hafta - Mobil Uygulama Yazmak 1. Bölüm6. Hafta (12 Ekim 2019) - Mobil Uygulama (Android ve iOS) Yazmak (2. Bölüm) Eğitim içeriği Mini Bir Sınıf Yapısı REST.Json.TJson.JsonToObject REST.Json.TJson.ObjectToJsonObject DB ForeignKey – Function tanımlamak Yeni bir DB Bileşen Seti – UniDac REST Bileşen Setleri Kullanıcı Giriş Kontrolü Eğitim : 6. Hafta - Mobil Uygulama Yazmak 2. Bölüm7. Hafta (19 Ekim 2019) - Mobil Uygulama (Android ve iOS) Yazmak (3. Bölüm) Eğitim içeriği Mobil uygulama ana menü davranışı Ana menü oluşturmak Toolbar oluşturmak SP Oluşturmak Web Module üzerinde end-point oluşturmak Dataset’i JSON veri yapısına dönüştürmek REST Debugger üzerinde end-point testleri yapmak OrangeUI ile ListView tasarımı yapmak Ürün Grubu ekranını tasarlamak Ürün gruplarını listelemek Ürünler, siparişler, Profilim, konum, ayarlar, hakkında ekranlarının nasıl tasarlanacağını öğrenmek Android hedef platformunun hazırlamak Android cihaz üzerinde uygulama testleri yapmak Mac OS X hedef platformunu hazırlamak XCode iOS geliştirici ortamını kurmak iOS Simulator üzerinde iOS uygulama testleri yapmak Eğitim : 7. Hafta - Mobil Uygulama Yazmak 3. Bölüm8. Hafta (26 Ekim 2019) - Mobil Uygulama (Android ve iOS) Yazmak (4. Bölüm) Eğitim içeriği AlGitsin Online Sipariş Uygulama arayüzüne hızlı bakış ve son kontrolleri yapmak Android Uygulamaları Dağıtma Hazırlamak Uygulamayı Google Play üzerinde yayına hazır hale getirmek Dağıtım öncesi Android uygulama ayarlarına son bakış Android paket dosyasını (.apk) imzalamak KeyStore sertifikasını hazırlamak Google Play uygulama taslağını hazırlamak Android uygulamayı yayınlanmak üzere onay sürecine göndermek iOS Uygulamaları Dağıtma Hazırlamak Uygulamayı Apple Store üzerinde yayına hazır hale getirmek Dağıtım öncesi iOS uygulama ayarlarına son bakış iOS paket dosyasını (.ipa) imzalamak Apple geliştirici ve dağıtıcı sertifikası üretmek Sertifika imza talebi oluşturmak (certificate signing request) Geliştirici sertifikası (development certificate) oluşturmak Dağıtıcı sertifikası (distribution certificate) oluşturmak Sertifikaları OS X bilgisayara (Anahtar Zinciri Erişimi - Keychain Access üzerine) yüklemek Uygulama kaydını yapmak Apple cihaz kaydını yapmak Apple cihaz kimlik numarasını öğrenmek Provizyon profili oluşturmak Geliştirici provizyonu (development provisioning) oluşturmak Dağıtıcı provizyonu (distribution provisioning) oluşturmak Provizyon sertifikalarını OS X bilgisayara yüklemek Rad Studio üzerinden provizyon kontrollerini yapmak Apple Store uygulama taslağını hazırlamak iOS uygulamayı yayınlanmak üzere onay sürecine göndermek FMX Mimarisi Hakkında Genel Soru-Cevap Eğitim : 8. Hafta - Final - Mobil Uygulama Yazmak 4. BölümDetail Link: http://www.delphican.com/showthread.php?tid=4119
×