-
Content Count
34 -
Joined
-
Last visited
-
Days Won
1
Everything posted by Memnarch
-
New feature request: Open dfm as Text if malformed (vote if care)
Memnarch replied to Tommi Prami's topic in Delphi IDE and APIs
You are massively underestimating this π If you refactor a base component other visual components dervive from, loading/opening projects might fail. I support the Idea that the ide still loads the dfm as text. Right now it does not allow me to look at it, which is cumbersome. Just like WPF in VS where I always get the XAML editor but not a visual editor when the XAML is invalid. -
10.4.1 Released today
Memnarch replied to Darian Miller's topic in Tips / Blogs / Tutorials / Videos
No that's just confusing wording. The resolution is actually fixed. What the sync comment means is: Expected behavior is seen in fix version. Had the same type of sync comment on one of my tickets and was confused at first, too. -
FastMM5 now released by Pierre le Riche (small background story)
Memnarch replied to GΓΌnther Schoch's topic in Delphi Third-Party
We're already evaluating it. First impression: Promising! However, I'm not sure using GPLv3 is something he should've used, for what he tries to archieve with the dual license. -
Windows 1909 screws with my PixelPerInch in Designer on HDPI
Memnarch posted a topic in Delphi IDE and APIs
Hi, At my company, I have 4K screens and a HDPI scale of 200%. The IDE works as normal, because it is not hdpi-aware. Windows is 10 1809 At home I have WQHD Screens and some slight scaling enabled. All IDEs from XE to 10.2 show a PPI of 115 instead of 96 in the Designer. Windows 10 1909 And i can't wrap my head around the issue. I told Windows to disable the system enhanced stuff. But for some reason the IDE is still fed with the true PPI instead of emulated, like normal non hdpi ones do. Anybody has any idea on what i can do? This does screw with ui i write for IDE-Plugins π -
Windows 1909 screws with my PixelPerInch in Designer on HDPI
Memnarch replied to Memnarch's topic in Delphi IDE and APIs
Exactly. An application has to identify itself as HDPI aware in its manifest. By default this is enabled for your Delphi-Application, but you can disable it. If not enabled, windows passes 96ppi to the application, and all width/height values of all controls are in 96ppi space. Windows then scales up the rendered picture to the actual ppi. This is the reason old applications look blurry. Today, Windows 10 implements a more enhanced gdi virtualization (called System enhanced) where the drawcall is scaled up, instead of the final render, which avoids blurry text/lines. But it's still noticeable on graphics of old applications, being stretched and blurry. You can switch to the old "System" method on an applications compatibility properties tab to see how applications were scaled up pre W10 180x(or was it 190x?) Something you have to credit Microsoft for, is their humongouse backwards compatibility. That's why HDPI was made an opt in, because applications have to manually deal with it. Similar to the WinVer thing they did with Windows 8 and 8.1. If the application didn't say it was aware 8.1 exists in its manifest, the system lied and looked like 8 on the api and file layer. The Delphi-IDE is not marked as HDPI-aware, and recent UI revamps of the IDE made it more incompatible with HDPI than ever. PS: Trick of the day: If you have an old non HDPI application were you draw text or shapes to a temp bitmap, make it device compatible using CreateCompatibleBitmap (TBitmap creates only device dependend ones). That way, when you set it to a resolution of x, the internal resolution of that bitmap is x*systemscale, the gdi system enhanced virtualization will affect it and it won't look blurry. Something the VCL does wrong for some temp buffers π -
Windows 1909 screws with my PixelPerInch in Designer on HDPI
Memnarch replied to Memnarch's topic in Delphi IDE and APIs
Nope, it's a windows issue The IDE is not supposed to "see" the 115 ppi -.- -
Delphinus: Working on per project(folder) installations
Memnarch posted a topic in Tips / Blogs / Tutorials / Videos
I started working on support for installing packages per project, instead ide. http://memnarch.bplaced.net/blog/2020/03/delphinus-working-on-per-projectfolder-installation/ -
Windows 1909 screws with my PixelPerInch in Designer on HDPI
Memnarch replied to Memnarch's topic in Delphi IDE and APIs
WOW i just found out: The reason was me using "custom dpi scaling". I only wanted 115% and not one of the existing settings like 125%. Now it does work as expected.... -
LLVM4D: LLVM C APi Headers and Binary for Delphi
Memnarch posted a topic in Tips / Blogs / Tutorials / Videos
Hi, I just updated my header translation for LLVM 10. It's available on Delphinus or on my Githubrepo and comes along with the precompiled binary. http://memnarch.bplaced.net/blog/2020/04/llvm4d-llvm-c-headers-for-delphi/ -
Hi, Some might already know Delphinus. But for those who don't i thought i make a little introduction post, to have a thread for discussion, as I never made one for the international Delphi-Praxis. Questions are always welcome. Delphinus is an opensource Packagemanager for Delphi, which I started in 2015. It has support for Delphi XE and newer. In addition to an IDE integration for package-management, Delphinus comes with a commandline, too. This has the benefit of having a single interface for managing multiple IDEs or run setup-scripts automatically. Currently, packages are provided through Github by preparing a repo to appear in a special Github-Query Delphinus uses to detect packages (See wiki link below). For optimal use, you should add a OAuth-Token to the Delphinus-Config(See wiki link below). Otherwhise you'll hit rate-limits. Offline installation from a folder is provided through the IDE-UI(Folder Symbol). Adding support for creating local folder based repositories for mirroing is planned. Delphinus packages have support for: Copying (source) files Compiling and (if Designtime) installing BPLs Compiling and installing IDE-Experts setting up Search/Browsing path Dependencies to other Delphinus-Packages Optionally, BPLs and Experts may be included as precompiled binary, if your project is closed source. Packages are installed per IDE. I'm working on per project installations. GithubRepository of Delphinus: https://github.com/Memnarch/Delphinus Wiki: https://github.com/Memnarch/Delphinus/wiki My Blog were I (in addition to ther Delphiprojects) post updates about Delphinus: http://memnarch.bplaced.net/ Websetup: http://memnarch.bplaced.net/blog/delphinus/
-
- delphinus
- packagemanager
-
(and 3 more)
Tagged with:
-
Hi, Before I start to summon demons, i wanted to ask if it is possible to add non-file related entries under a Project in the Project-Tree through the toolsapi? A Node like the existing ones, for example "Build Configurations" or "Target Platforms". From what i can tell, i can only add something, if it is an existing file?
-
In the end, i did summon demons. And succeeded π I'll share what this was all about soon(TM), once the stuff it's for is presentable. Edit: @Dave Nottage here is a blog with details on what it is for:
-
My Softwarerenderer written in Delphi is now public under MPL-2 :) http://memnarch.bplaced.net/blog/2020/03/mundus-a-softwarerenderer-in-delphi/
-
Hello, I'm currently working on making our application HDPI aware. We use Delphi Berlin and i encountered some strange scaling issues regarding fonts. A frame that was designed on a 96ppi Screen has a VCL Designsetting of Font.Size = 8 and Font.Height = -11. However, when the frame is created at runtime (TMyFrame.Create), it starts with a Font.Height of -21. From there on it all goes downhill. As soon as frames get parented on a control(or needs to rescale itself) that is already scaled > 96ppi, the Frame rescales its fonts(as it seems using 96ppi as a base). That means that, on a system with a scale of 200%, i get fonts the size of 400% or even 800%. The frames have "ParentFont" set. Disabling "ParentFont" at some places seems to mitigate this issue. But then again, what is happening? A TFont has a PixelsPerInch property, but that one is ignored throughout the scaling mechanics of the controls.
-
AH OK i got the exact situation it happens. Somestimes sfFont is not set in Scalingflags to indicate the font is already at the correct size. But the internal scaling mechanics ignore the property ScalingFlags during loadtimes and use "DefaultScaleFlags" which enforces font scaling. Checking ScalingFlags, i can now properly determine which fonts to scale back to 96ppi after dfm load.
-
Is it really good practice to create Forms only as needed? Always?
Memnarch replied to Mike Torrettinni's topic in VCL
Only do this for Forms/Dialogs/UI that is used VERY frequently and as a huge impact when created for the first time. Consider saving a state in Dataobjects somewhere else otherwhise, if needed. -
Is it really good practice to create Forms only as needed? Always?
Memnarch replied to Mike Torrettinni's topic in VCL
I can tell you, if our application was creating all of its gui at startup, hell would freeze over. And your systemresources, too. The ugly thing is, Memory is not what will kill your application. The handle limit will! There is a GDI-handle limit(in addition to others) you'll run into. -
ok i went overboard. Because we have a common baseframe class for all our frames, that one will now go through all its controls and fix the initial font scaling in Frame.Loaded. It is absolutely weird, that for some frames, the font has the normal -11 size and for some it is already scaled to -21. Both frames look the same in designer(regarding its font properties). So right now, i do some gueswork on which fonts to scale.
-
The frames do have a DFM, if that's what you mean by DFM template
-
Ok that is super odd. Let alone the Y-Up vs Z-Up war, why is this Y-DOWN? Created a new 3DMultidevice Application. Placed a 3DGrid as a plane and added a camera. I wanted the camera to be above the grid so i typed in 5 for the Y-Value. And the camera moved down. I had to use -5 for the camera to go up. Am i missing something?
-
SSDP-Discovery service blocks MiniUPNP from discovering my Router
Memnarch posted a topic in Network, Cloud and Web
Currently using MiniUPNP for a project. Using the precompiled "upnpc-static.exe" (to avoid errors on my end when using their API, for now, will link to a dll later) i can not discover my router, when the windows service "SSDP Discovery" is enabled. Seems packets are never send from MiniUPNP. Does the Service lock the port 1900 for itself? Windows itself provides a COM-Based UPNP API but that is anything but reliable (sometimes it returns my devices, sometimes not). MiniUPNP works reliable...as long as the SSDP Discovery Service is disabled π EDIT: Accoridng to this, the service cycles the interfaces. WIll have to check if using a specific interface solves it. -
Well that's a horrible reason oO
-
Directions for ARC Memory Management
Memnarch replied to Marco Cantu's topic in RTL and Delphi Object Pascal
Records have no reference counting, and never had -
userName above or below profilepicture and not in Header?
Memnarch posted a topic in Community Management
So one thing that is a bit irritating for me, because most forums don't do that, is that a Username is not above/below the profilepicture. Because the names are in this blue header, they're kind of invisible to me π -
Is there already a statistic about the new registrations?
Memnarch replied to sh17's topic in Community Management
But will we get a statistics page like the one from our german Delphi-Praxis?