Микола Петрівський
-
Content Count
68 -
Joined
-
Last visited
Posts posted by Микола Петрівський
-
-
Even if it was fixed, what next? Options dialog? About dialog? There are limits for customization in any program. There is a feature, meant to solve exactly your issue - UI elements being to small, but you do not want to use it. Instead you are trying to use a feature, that is not meant to solve such issues and even not officially supported. And it does not produce the result, you want. So who is guilty in such situation? RAD Studio developers? Really?
-
FontSize setting is not officially supported. So there will be some issues with it. Probably they have implemented it for some light tweaking for people, who need different font. And you are exceeding the limitations of their implementation.
-
11 hours ago, PeterPanettone said:This is not a topic about system settings but about the GUI font size in the Delphi IDE. Please read my original topic and keep a professional level.
One of the biggest features of Delphi 11 is HiDPI support. Once you set Windows to 125% scaling, IDE will use that as well. Fonts, icons, buttons - everything will be 25% bigger.
-
Looks like you need some Microsoft runtime, to make C++ formatting work.
-
15 hours ago, PeterPanettone said:Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\22.0\Theme
Changed it from 9 to 12. The IDE GUI now looks much better! This setting should be in the IDE OPTIONS!
Embarcadero talks a lot about optimizing the size of icons in applications built by developers. But they still use ridiculously small stone-age toolbar icons on their IDE Toolbar! Why the IDE does not allow to change the size of the toolbar icons? Are we still in the stone age?
And what next, button sizes? You definitely should try to set windows to 125% or 150% scaling and run it that way a few days. It will free you from the need to manually set fonts and icon sizes in each and every app, that you use.
-
21 hours ago, PeterPanettone said:As you can see from the screenshot, I have Windows 7.
Yep, with 125% scaling. Windows 7 with 125% scaling automatically enables so called "XP scaling". This means, that OS ignores app manifest, and forces it to scale itself. But RAD Studio manifest does not declare support for scaling, so Studio tries to do whatever it can, even while it does not support this. So you see such results.
-
16 minutes ago, PeterPanettone said:Only in Windows 7/8 and older. Since Windows 8.1 you can set different scaling for different screens.
- 1
-
In modern Delphi you can do that like this:
TMyRecord = record private FSrcPosition: TPoint; function GetDestination: TPoint; public property SrcPosition: TPoint write FSrcPosition; property DstPosition: TPoint read GetDestination; end;
-
Standalone web servers is not a common type of projects for Delphi. That is why default memory manager was not tweaked for such load. But full version of FastMM4 has lots of different tweaks specifically for multi-threading, so you can customize it as you wish.
-
-
Your TСompressor.Create runs in current thread, so you can easily store it as CallerThread. Then, in decompression thread, you can synchronize to CallerThread instead of main GUI thread.
-
11 hours ago, Georgge Bakh said:With these requirements the solution may be something like:
Validator .Check(value <> nil, 'Value is nil!') .Check(str <> '', 'String is empty!') .Check(Value.Num > 0, 'Value.Number <= 0!');
Check() receives a boolean to check and string message to complain.
If boolean is true returns Self. If false - other instance whose Check() method just returns Self on any input.
It is almost the same as
Assert(value <> nil, 'Value is nil!'); Assert(str <> '', 'String is empty!'); Assert(Value.Num > 0, 'Value.Number <= 0!');
-
35 minutes ago, Uwe Raabe said:What about a TClientDataSet connected to a TDBGrid or TDBCtrlGrid?
This is, probably, the simplest possible solution, if you limit yourself to "out of the box" solutions. By the way, TClientDataSet can be replaced with TFDMemTable.
-
I was expecting to see at least built in support for "--help" and "--version". As it is now, it is not much different to FindCmdLineSwitch.
-
We had similar problem, except, that we wanted to know, when app finishes processing any long task, and is ready to accept new input. And we wasn't allowed to change the code of the app. Our first attempt was to use SetWindowsHookEx in WH_FOREGROUNDIDLE mode. That was working in most cases, but sometimes we had situations, when the last message in the message queue is actually the one, that causes processing of long task, so our hook was triggering at the beginning of the processing, not the end. Also, this hook will hang until some message will get in to message queue, so some sort of wake up message is required. Finally we decided, that since target app uses runtime packages, we can call VCL for help. Now our test app is using windows hooks only to inject our code (dll compiled with runtime packages) in to target process. Then we create event handler for Application.OnIdle. This approach is much more reliable, something like 95%.
If you can change the code of target app, then it will the best approach.
P.S. You could avoid all of that, if VCL supported UI Automation
-
On 8/4/2019 at 1:27 PM, ertank said:I finally got a regular HDD (spin drive) and when using it compilation works. It also gives errors like above, but so rare that you can ignore them.
All SMART checks on all drives are good. Now, I wonder if it is Windows 10 thing appeared with its latest update or something. I still cannot find a reason why creating files on disk fails or why it cannot find existing files.
Try to toggle compiler cache on and off: http://docwiki.embarcadero.com/RADStudio/Rio/en/Compiling_and_Running
-
On 7/26/2019 at 5:26 AM, Mike Torrettinni said:I'm trying to resolve unit dependencies, cycling. I have a global unit where in some cases I need to reference Form Control - so I need the Form units used in uses:
TranslatorUnit - custom translation unit that translates all forms, controls, message...
...
I know I can loop Forms in Application and refer them by 'MainForm' name and same for Controls, I can refer to them by name like FindComponent('CustomButton'), but I don't like it since it doesn't validate names, like compiler does when I refer to them as objects.
Is there any way I can refer to Forms and Form Controls without using the units in uses, but will still give me some way to verify I don't misspell the names or when I change a name that translation will still work as needed?
Any suggestion how to solve this?
You of course know, that you can break some cycles by moving parts of uses to implementation section, right?
-
15 hours ago, Erix A. said:I also deleted and re-added my serial but still cannot get osx64 to compile :(
Works fine for osx32, but for osx64 it just prompts to add SDK, After I press OK (with Command Line Tools) nothing happens. All I get is [Error] and Failed in the log.
Try to install Xcode on your Mac.
5 hours ago, Tommi Prami said:Yo,
Does anyone have 10.3.1 and 10.3.2 available? Would be cool to see some diff and/or analysis of RTL and/or VCL changes between the two,
-Tee-
I think, reading the log will be much easier: http://docwiki.embarcadero.com/RADStudio/Rio/en/New_features_and_customer_reported_issues_fixed_in_RAD_Studio_10.3.2
-
Looks like I can download fresh ISO from torrent, but I need hash sum to be sure, that it is correct file. Can someone post your sum here? MD5 will be enough.
-
What API are you using? As far, as I know, Acrylic Blur is not documented for classic Win32 apps. And using undocumented API is not a good idea.
-
You will need to manually call TBindings.Notify because your controls are not observable: http://docwiki.embarcadero.com/RADStudio/Rio/en/Tutorial:_Creating_LiveBindings-Enabled_Components
As to why even manual call does not work, it is hard to tell without compilable demo.
- 1
-
Maybe, you should try
Bind(srcViewModel.Container,'DataSource',dstDBGrid,'DataSource')
?
But in general, this looks suspicious to me. Usually LiveBindings are used to replace data-aware controls, and you are trying to mix them. What do you want to achieve?
-
Just create global atom and pass it's code to the caller. Or caller can create empty atom, and then check for changes.
-
ADB over USB has never worked for me in VirtualBox VMs. That is why I always use ADB over WiFi: https://developer.android.com/studio/command-line/adb#wireless
Delphi 11: Text size too small!
in Delphi IDE and APIs
Posted
I am making assumptions based on what I have read in this topic.