sort by:
Revision Author Date Message Commit Date
bfb6ff0 [TMVA] Remove Keras Regression test from the battery on Macos because it always fails due to the slowness of the tool on the platform. 30 September 2023, 12:27:43 UTC
6b3b5a3 [io] Validate fList data member in TDirectory::RecursiveRemove 30 September 2023, 10:03:37 UTC
aaf6278 [io] Do not initialize gROOT in TDirectory destructor 30 September 2023, 10:03:37 UTC
3a9d2ca Add unittest for TDirectoryFile destructor With the reproducer described in https://github.com/root-project/root/issues/13691. The test *must* link to some library that is not automatically ignored when loading PCMs in TCling::RegisterModule in order to trigger the segfault. 30 September 2023, 10:03:37 UTC
76e4705 [tmva] Make library libTMVAUtils 30 September 2023, 07:08:47 UTC
1e39844 [tmva] Veto tutorial/keras on macos Do not run in CI the tutorial/keras on macos because we cannot disable eager execution on tensorflow. This causes timeout in the tutorials 30 September 2023, 07:08:47 UTC
40cfc5b [tmva] Remove direct dataframe dependency libTMVA does not need to depend explicitly on RDataFrame. It is used only in the template function AsTensor and in the header files of the BatchGenerator used from Python remove lib dependency 30 September 2023, 07:08:47 UTC
eedc1da [Testing] Significantly reduce duration of legacy tutorials ran every time by the CI and testing TThread, without reducing coverage. 30 September 2023, 07:07:59 UTC
c6b118c [DF] Add a test for the FromNumpy fix 29 September 2023, 16:01:43 UTC
c633080 [DF] Fix wrong reading using FromNumpy with strided arrays 29 September 2023, 16:01:43 UTC
c5b00f0 [CMake] Remove N-1 identical link statements of the libxxhash.a library when building libCore.so 29 September 2023, 15:59:40 UTC
759b659 [jsroot] 7.5.pre with eslint syntax format 29 September 2023, 15:37:05 UTC
da798de [webcanv] correctly mark pad as having special objects Also when special objects appears in graph or hist list of primitives 29 September 2023, 15:37:05 UTC
0c4a255 [webcanv] reduce debug output when exec many lines Happens when moving complete TGraph. 29 September 2023, 15:37:05 UTC
95487cd [ntuple] Rename `RNTupleInspector` size-related methods 29 September 2023, 15:05:20 UTC
76f7346 [Core] Update year in the ROOT banner 29 September 2023, 13:17:31 UTC
8c2b448 [graf2d] Remove asimagexml, pixmap from AfterImage: incompat license They were used by load_xml2ASImage to load xml to asimage. Almost not used. 29 September 2023, 12:31:23 UTC
4838068 [req.txt] No numba for Python3.12 yet. 29 September 2023, 12:23:41 UTC
26bb17c [core] Add rpath on MacOS in compiledata.sh The generated compiler invocation in TSystem::CompileMacro doesn't add the `-rpath` option. The output of `root-config --libs` contains that option on MacOS, so we should also have it here. Extend the flags passed to the compiler defined in `compiledata.sh` so it gets generated at configuration time. This should fix errors seen in MacOS 14 when loading a shared library obtained via ACLiC. Co-authored-by: Philippe Canal <pcanal@fnal.gov> 29 September 2023, 11:54:21 UTC
27e3ee1 [ci] The only Mac in the new CI was upgraded to macOS 14. 29 September 2023, 11:53:23 UTC
2a9b7df Revert "[CMake] Use `find_package(XRootD)` and not `XROOTD` (case sensitivity)" This reverts commit 733d246177fd3e402c40c3a600d58c3ee4d893b8. 29 September 2023, 09:43:29 UTC
4a58864 Revert "[pyroot] make Mac and Linux events handling similar" This revert is in place because python scripts now hang whenever the ROOT module is imported on macos 12, 13 and 14. This reverts commit 06b86c3a3408fec00eaa615790a9298bb9b7eb41. 29 September 2023, 07:48:54 UTC
62dcea6 Made the test build against the build directory set CMAKE_PREFIX_PATH correctly. So that headers/libraries in the build directory could be found correctly. 29 September 2023, 07:04:31 UTC
5473c5c Fixed how VDT would be used. Switched to using the VDT::VDT imported target to set up the build of ROOTVecOps, RooBatchCompute and TMVA. Then made all the necessary changes in SearchInstalledSoftware.cmake to make that work. 29 September 2023, 07:04:31 UTC
a86bf73 [geom] Don't use `-fabi-version=6` when compiling geom/vecgeom with GCC (#13751) The `-fabi-version=6` flag was added to the compilation of `geom/vecgeom` in ded69d0daa without any explanation. But recently, it caused some compilation problems with `std::unique-ptr` in newer GCC versions. Simple reproducer: ```c++ #include <memory> int main() { std::unique_ptr<int>(nullptr); } ``` Compile with `g++ -fabi-version=6 -o test test.cpp`, using GCC 13.2. So the implementation of `std::unique_ptr` in the standard library version that comes with gcc 13.2.1 is incompatible with that (super old) gcc abi version. Since it's not clear why this flag is there to begin with, I suggest to remove it so it doesn't cause further problems. The ABI version 6 is very old anyway (it came with GCC 4.7 in 2012). Closes #12315. 29 September 2023, 07:03:48 UTC
733d246 [CMake] Use `find_package(XRootD)` and not `XROOTD` (case sensitivity) With this change, the reproducer provided in #12631 works for me, while it indeed fails to find `xrootd` in the configuration step without this commit. Closes #12631. 28 September 2023, 17:13:33 UTC
5898c8f [http] show warning about changing main thread only when gDebug > 0 It is intended behavior that processing thread may change in python. Therefore display such message only if debug is enabled 28 September 2023, 13:40:25 UTC
06b86c3 [pyroot] make Mac and Linux events handling similar In non-interactive mode one have to run events from special thread, in interactive it should be enough to use input hook 28 September 2023, 13:40:25 UTC
2fbeb5f [pyroot] set external events processing only in non interactive mode In interactive python mode processing events always runs from main thread and performed regularly - no special settings are required then 28 September 2023, 13:40:25 UTC
91177c3 [webgui] Allows direct callbacks processing in python When python non-interactive session runs, there is no any possibility to call callbacks in main thread. Therefore let allow process callbacks directly from the place where data queue is filled. 28 September 2023, 13:40:25 UTC
090ccec [RF] Update to latest xRooFit (#13717) * update xRooFit to latest version * declare ROOT::Experimental::XRooFit namespace for ROOT's copy of xRooFit * fix namespace alias * address PR comments * [RF] Improvements to `xroofit` documentation structure * Add a new `xroofit` group to the RooFit documentation * Add semicolons behind the `NAMESPACE` macros. They have no effect on the C++ compilier, but macros without trailing semicolons confuse doxygen * Add the `xRooNode` and `xRooNLLVar` classes to the `xroofit` documentation group. Other xroofit classes might also go there, but I don't know which ones should really be public. So I only added these two to give and example. * Move RooBrowser documentation to xRooBrowser. Now that xRooFit is considered part as the experimental user interface, this is fine to do. Like this, doxygen can associate the actual xRooBrowser implementation with the docs. * Rename `RooFit::Detail::XRooFit` namespace to `ROOT::Experimental::XRooFit` instad of using namespace alias. Again, this is done to not confuse doxygen. To build the documentation quickly, edit the `documentation/doxygen/makeinput.sh` directory and comment out all subdirectories except for `roofit`. Call `make` in the doxygen directory. Type `y` if it should ask you to overwrite some files in the end. The xRooFit documentation will end up in the `~/rootdoc/html/group__xroofit.html` directory. * address some typos 28 September 2023, 12:09:24 UTC
a345367 [ci] Pass --binaries for all platforms; fix syntax of cpack invocation. 28 September 2023, 11:58:51 UTC
41a40b3 Append to the `xml_veto` list instead of (re-)creating it Prevent running xml tests when xml is disabled, suppressing the following test failures: ``` TEST FAILURES: 971:tutorial-xml-DOMParsePerson 972:tutorial-xml-DOMRecursive 973:tutorial-xml-SAXHandler ``` 28 September 2023, 11:47:11 UTC
ef2ff08 [jsroot] 7.5.pre 28/09/2023 with TPaletteAxis fixes 1. Properly redirect context menu commands to histogram Z axis 2. When moving palette - send updates back to the server 3. Improve HierarchyPainter Draw/Expand/Unexpand context menu commands 28 September 2023, 08:00:36 UTC
6e556ce [math] Early return of minimum state when using simplex with no params This avoids the problems when running simplex with zero parameters reported in #6775. 27 September 2023, 18:20:19 UTC
aa3bff2 [jsroot] 7.5.pre 27/09/2023 with axis/palette fixes 1. Allow negative labels offsets on axis 2. Provide extra gaps for labels as it done in ROOT 3. Copy Z axis attributes to palette before drawing 4. Shrink axis labels 5. Small fix in col drawing 27 September 2023, 14:13:46 UTC
cbb4cfe [webcanvas] use only first frame in the pad Any others (or duplication) will be excluded from the web drawings 27 September 2023, 14:13:46 UTC
0d355cf [canvas] protect TPad::DrawFrame if gPad == nullptr If by chance gPad is nullptr, method will crash 27 September 2023, 14:13:46 UTC
d5d820e [jsroot] 7.5.pre 26/09/2023 with on/off for active pad highlight 27 September 2023, 14:13:46 UTC
5af4b57 [webcanvas] highlight active pad only optionally, off by default Can be changed in the options menu Make looking similar as with native ROOT 27 September 2023, 14:13:46 UTC
d25bf79 [webcanvas] fix first connection index Only first client allowed to change some values in the canvas. But now first connection has index 1 - while index 0 is for batch. 27 September 2023, 14:13:46 UTC
8eb4d23 [webcanvas] ensure TGraph histogram when axes drawing is specified 27 September 2023, 14:13:46 UTC
ce56b72 [jsroot] 7.5.pre 26/09/2023 1. Fix AXIS draw option - do not draw hist title 2. Fix scaling of custom labels - factor 0.6666 as in TGaxis:1504 27 September 2023, 14:13:46 UTC
14d9b02 [webcanvas] do not show hist title with AXIS draw option 27 September 2023, 14:13:46 UTC
3d87d7d [cmake] Make unfold optional so it can be disabled: It is GPL licensed and ROOT binaries must not have it enabled. 27 September 2023, 09:49:41 UTC
e251a3a [pythia8] Fix license of TPythia8Decayer (NFC): as per request by Peter Hristov, ALICE. 27 September 2023, 07:06:39 UTC
d7baa44 [RF][HS3][HF] Backwards compatible way of dealing with bin widths The bin width modifiers are handled separately from the other modifiers in the HistFactory JSON IO. However, do detect them, we can't just check for the RooBinWidthFunction type here, because prior to ROOT 6.26, the multiplication with the inverse bin width was done in a different way (like a normfactor with a RooRealVar, but it was stored in the dataset). Fortunately, the name was similar, so we can match the modifier name. 26 September 2023, 20:44:05 UTC
30177a3 [RF][HS3] Don't automatically set `BinnedLikelihood` on HF model import The JSON import of HistFactory models was always setting the "BinnedLikelihood" attribute to trigger the binned likelihood optimization in the fit. That's generally a good thing, however it can create backwards compatibility issues. For older HistFactory models that don't use the binned likelihood optimization by default, it comes as a surprise to the user that the definition of the likelihood is suddenly different. This commit suggests to not hardcode the `BinnedLikelihood` attribute in the HistFactory JSON IO, but instead rely on the the regular JSON IO of RooAbsArg attributes to make sure that the attribute is only set in the imported workspace if it was also set in the original workspace. Other changes in this commit: * Some RooAbsArg names in the HS3 HistFactory import are also changed to reflect the old HistFactory implementation * Variables in the code are renamed to avoid one-letter variable names 26 September 2023, 20:44:05 UTC
6905629 [ntuple] Make column type info table Markdown-parseable 26 September 2023, 06:58:02 UTC
fdd8807 [ntuple] Extend `RNTupleInspector::PrintColumnTypeInfo` documentation 26 September 2023, 06:58:02 UTC
cae93d9 [ntuple] Change `ColumnTypeInfo` update operator 26 September 2023, 06:58:02 UTC
548422f [ntuple] Add `PrintColumnTypeInfo` to `RNTupleInspector` 26 September 2023, 06:58:02 UTC
297dbde [ntuple] Homogenize `RNTupleInspector` method names 25 September 2023, 15:16:02 UTC
b832604 [jsroot] 7.5.pre 22/09/2023 with TProfile3D support 1. Support TProfile3D 2. Support scaling of special fill patterns 25 September 2023, 11:36:35 UTC
f4a23f7 [win32gdk] Remove unused relocatable; gcompat.h: They are GPLed (unlike the rest); our build has `#undef ENABLE_RELOCATABLE` in `graf2d/win32gdk/gdk/src/iconv/config.h`. gcompat.h is not included anywhere. So there is just no reason to keep these. 25 September 2023, 05:59:33 UTC
fd2a14f [hist] Fix license for TGraphSmooth (NFC): After consultation with Christian Stratowa, the intent was to use the same license as that of ROOT. Given the commit 041f9ed55290e7edcfd78a15dfcd3c0eb7b8c9fc which sets the (c) to Fons+Rene, the copyright for Christian must end around that time that Christian has donated the code to Fons&Rene. Use consistent header for .h and .cxx. 25 September 2023, 05:57:40 UTC
ceef062 Remove ELISPDIR - nothing is installed in it anymore 25 September 2023, 05:53:43 UTC
dc9d47b [config] remove install of remove root-help.el 24 September 2023, 08:58:51 UTC
1046dc6 [TMVA] Do not run CNN tutorial if imt not specified if imt is not specified, this tutorial should not be run as a test. 24 September 2023, 08:57:39 UTC
b9d6ebc [CMake] Eliminate duplicate linked libs 23 September 2023, 15:15:10 UTC
dae23db [RF] Implement the `EvalBackend("codegen_no_grad")` option This is done by adding a new constructor flag to the RooFuncWrapper whether the gradient should be compiled or not. 22 September 2023, 13:42:54 UTC
ece77ec [RF] Explain new `EvalBackend()` command argument in documentation Add explanation on all the possible `EvalBackend()` choices for the likelihood: * legacy * cpu * cuda * codegen * codegen_no_grad 22 September 2023, 13:42:54 UTC
9c6ed73 [RF] Clean up `createNLL()` and `fitTo()` docs and interfaces * Remove duplicated explanations of likelihood options from `fitTo()`. Instead, just link to `createNLL()`. * Improve documentation with explicit explanations of input and output parametrs. * Rename the `virtual` overloads of `fitTo()` and `createNLL()` that are taking only a RooLinkedList to `fitToImpl()` and `createNLLImpl()`. This avoids confusing doxygen with different overloads, and thus ensures that everytime we are referencing `createNLL()` and `fitTo()` in the docs, it will link to the highest-level user interface: the templated functions that can either take a single RooLinkedList or an arbitrary number of command arguments. * Explicitly write in the docs which functions need to be overridden when you want to customize likelihood creation or fitting behaviour. This will be useful for the few RooFit-based frameworks that actually do such a thing. * Replace `///` with `/**` to denote doxygen comment blocks. This is done because otherwise, doxygen did not detect correctly in some circumstances what is the scope of the comment block. 22 September 2023, 13:42:54 UTC
b272e50 [RF] Introduce new `EvalBackend()` option for createNLL() and fitTo() The new `EvalBackend()` option will replace the `BatchMode()` option, which is kept for backwards compatibility. However, a warning is printed when one passes the `BatchMode()` option. There are also versions of this new option that don't use string arguments, like `EvalBackend::Cuda()`, such that one can ensure at compile-time that a valid backend is used. this is helpful for unit tests, but not necessarily meant for the end user. 22 September 2023, 13:42:54 UTC
26f2b5f Add tests for TGraph::Sort 22 September 2023, 12:23:31 UTC
8af5160 Implement TGraph::Sort using std::stable_sort 22 September 2023, 12:23:31 UTC
6570c5d Remove invalid value -1 as second arg from substr 22 September 2023, 12:18:59 UTC
a0cc580 [README] Take into account that modern code is less OO. 22 September 2023, 12:18:11 UTC
8730c47 [ci] Add generation of binary package artifacts. 22 September 2023, 12:18:11 UTC
f4f8133 [config] Remove config/root-help.el.in: it is GPLed and thus incompatible. 22 September 2023, 09:20:10 UTC
ebe6694 [cmake] Turn everything with incompatible licenses off by default: The default should be a ROOT binary that respects its license; any build that creates GPLed binaries should be an active decision. Affected are uses of fftw3, gsl, Pythia 8, and unuran (all GPL), as well as Pythia 6 which does not seem to have a license. 22 September 2023, 09:19:06 UTC
1d5baf0 [Build] Remove flags causing warnings on MacOS when llvm 15 is used: -single_module and -bind_at_load. Once removed, they also do not cause problems to macos 11 and 12. 21 September 2023, 17:29:30 UTC
1831ce6 [Build] Do not link libgtest twice when bulding ctest executables. 21 September 2023, 17:29:30 UTC
e188c8f [Build] Fix implicit comp. warning on MacOS when using llvm 15. The warning was "implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion]" 21 September 2023, 17:29:30 UTC
14338c8 [jsroot] dev 21/09/2023 with fixes 1. TText/TLatex scaling to pad size 2. Handle TAxis with ndiv = 0 3. TGraph B draw option - proper bar width 4. Correctly use fixed label font size in TLegend, not always autoscale 5. Adjust columns width in TLegend to content 6. Correctly store defs when create image Fixes #13693 21 September 2023, 15:40:36 UTC
fb567b4 [core] Remove Demangle: unused and incompatible license. 21 September 2023, 15:32:54 UTC
6245f4f [mathcore] Fix incorrect license (NFC). 21 September 2023, 15:25:35 UTC
85a962f [RF] Include `gsl_integration.h` in RooFitMore instead of copy-pasting Include `gsl_integration.h` in RooFitMore instead of copy-pasting code from gsl. The linking is done in the same was as in `math/mathmore/CMakeLists.txt`. This should add no additional dependency compilcations, because RooFitMore already linked against MathMore, which requires GSL to be present. 21 September 2023, 15:00:35 UTC
6627da7 Do not evaluate dependent immediate invocations We deferred the evaluation of dependent immediate invocations in https://reviews.llvm.org/D119375 until instantiation. We should also not consider them referenced from a non-consteval context. Fixes: https://github.com/llvm/llvm-project/issues/55601 ``` template<typename T> class Bar { consteval static T x() { return 5; } public: Bar() : a(x()) {} private: int a; }; Bar<int> g(); ``` Is now accepted by clang. Previously it errored with: `cannot take address of consteval function 'x' outside of an immediate invocation Bar() : a(x()) {}` Differential Revision: https://reviews.llvm.org/D132031 --- Fixes https://github.com/root-project/root/issues/13698, a problem with the new C++ headers from the new macOS SDK. 21 September 2023, 14:50:20 UTC
f54c828 [mathmore] Remove license-incompatible KelvinFunctions. Part of ROOT-10992 21 September 2023, 12:40:20 UTC
3acc0e6 [cmake] Option `roofit_multiprocess` requires option `minuit2` The RooFit gradient multiprocessing depends on Minuit2 at compile time. Therefore, building with `roofti_multiprocess=ON` should imply `minuit2=ON`, giving a warning if the user defined `minuit2=OFF`. Then, Minuit2 should only be added as a dependency to RooFitCore if `roofit_multiprocess` is switched on. 20 September 2023, 19:43:45 UTC
6866a57 [math] Make Minuit2 the default minimizer in ROOT Math if available Most people prefer Minuit2 nowadays, especially RooFit users, as some of the more complicated fits don't converge with the old Minuit implementation. In case ROOT was built without Minuit2 enabled, the default falls back to `Minuit`. Also, since there is a "default default" already hardcoded in `MinimizerOptions.cxx`, it is not necessary to specify another "default default" in the default `.rootrc`. The corresponding line is commented out. 20 September 2023, 19:43:45 UTC
1dcd853 [RF] Loosen comparision precision in `testHypoTestInvResult` For the estimated error on the upper limit, we need to loosen the tolerance because it is determined on-the-fly with a fit, and not read as a data member like the comment in the test said before. Withg the default minimizer changing from Minuit to Minuit2, the results are slightly different and caused this test to fail. 20 September 2023, 19:43:45 UTC
8a1d41f [RF] Always use Minuit1 for contour plot tutorials The contour implementation in Minuit2 doesn't work for these RooFit tutorials yet. 20 September 2023, 19:43:45 UTC
eb622bf [RF] Slighlty loosen arbitrary precision parameter in `testHistFactory` This is to make the test also pass when using Minuit2, where the post fit parameters differ by a tiny bit, pushing one of the precision parameters over the edge by 3 percent. To have a bit of a margin, the relevant precision constants are increased by 10 percent. 20 September 2023, 19:43:45 UTC
bd562e1 [RF] Adapt `testNaNPacker` to Minut2 being the default minimizer 20 September 2023, 19:43:45 UTC
cdc6830 [RF] Add config flag to set minimizer in `stressRooFit/HistFactory` This config parameter was already present for `stressRooStats`, and this commit also adds it for `stressRooFit` and `stressHistFactory`. The default minimizer is hardcoded to `Minuit`, not `Minuit2`. Furthermore, the code is modernized a bit, for example by using raw string literals and `int` instead of `Int_t`. 20 September 2023, 19:43:45 UTC
e8bdfaf [RF] Fix all typos in RooFit source code This was done with the help of this very useful tool: https://github.com/crate-ci/typos 20 September 2023, 14:26:10 UTC
256dd33 Fixing a typo in histpalettecolor.C (#13680) 20 September 2023, 11:50:40 UTC
e58055c [RF] Avoid code duplication in likelihood and chi2 fitting The function that steered the chi2 minimization had almost the exact same implementation as the one steering the likelihood fits. It would be better is the chi2 fits also use the same function as the likelihood fits, which is implemented in this PR. 20 September 2023, 09:45:06 UTC
fb64189 [RF] Move declaration and parsing of minimizer options to FitHelpers 20 September 2023, 09:45:06 UTC
a23595b [RF] Don't preprocess const-term optimization flag in `fitTo()` We can avoid the const-term-optimization in BatchMode or `codegen` simply by overriding the relevant function in the wrapper classes. 20 September 2023, 09:45:06 UTC
1a7f63f [RF] Remove `RooFitCommon` library and use `gSystem->TempDirectory()` The RooFitCommon library only contained one single function to create a temporary directory `/tmp/roofit/` that was not even platform independed. This commit suggests to use `gSystem->TempDirectory()` instead, and prefix the temporary files with `roofit_` so there is no need for creating another subdirectory. 20 September 2023, 09:45:06 UTC
1c4e1af [RF] Introduce separate private `FitHeaders.h` interface 20 September 2023, 09:45:06 UTC
a680f0a [RF] Fix logic error in RooAbsPdf where Offset() was ignored in fitTo() There was a little bug in `fitTo()` when the new modular test statistics got implemented in fe6935be8a. If the `ModularL` command is not passed, the offsetting flag should be forwarded to `createNLL()`, because only for the new test statistics the offsetting is done in the minimizer only. 20 September 2023, 09:12:22 UTC
acd7618 [RF] Fix typos in RooFit tutorials 20 September 2023, 09:12:22 UTC
afd622c [RF] Implement `Offset("bin")` also for RooDataSet fits Fully implement the `Offset("bin")` feature also for RooDataSet, both with CPU/CUDA BatchMode and the legacy tests statistics. This is done now by introducing a new element in the computation graph: an "offset pdf" that is created as a RooHistPdf from the observed data, and it is used to get the counterterm in each bin. It was validated with the `rf614` tutorial that this binwise offsetting is indeed fixing the convergense problems that the simple offsetting by the initial NLL value can't fix. Closes #11965. 20 September 2023, 09:12:22 UTC
f7594a3 [PyROOT] Make building with Python 2 optional In preparation for a future removal of Python 2 support, add the `pyroot-python2` cmake build option (OFF by default). Users who really need Python 2 support can still get it, but warn them that it will be removed in a future ROOT release. 20 September 2023, 08:51:55 UTC
57a5c9a [cmake] Replace FindOracle.cmake: Nicer to distribute a BSD licensed version. The file `COPYING-CMAKE-SCRIPTS` is missing virtually worldwide, not even CMake includes it: https://gitlab.kitware.com/search?search=COPYING-CMAKE-SCRIPTS&nav_source=navbar&project_id=541&group_id=415&search_code=true&repository_ref=master 19 September 2023, 21:20:27 UTC
8b7aa49 Provide correct TCanvas::Draw and TPad::Draw for web canvas Instead direct call of Paint() call UpdateAsync() Prevent Paint() when calling TCanvas::SetGrayscale 19 September 2023, 15:42:44 UTC
back to top