ART feature requests and discussion

the false colors are done at the output, at the end of everything.
the tonal map is calculated on the input of the tone equaliser.
the two have nothing in common, except that they use nice colours :slight_smile:

:upside_down_face: oups, I tripped over my own feet.
I switched the false colors with the tonal map… sorry! :woozy_face:

1 Like

Thanks for the changes. Not sure if this was the intention, and might be considered nit picking, but the right panel of is always open at the start - settings aren’t remembered.
The symbol for expanding the right panel when it is already expanded suggested that it isn’t quite behaving as expected. Not a massive issue though.

definitely a bug. Seems related to GTK+ version, as it doesn’t happen for me on 3.18.0, but I see it on 3.22.0. I’ll investigate, thanks!

@agriggio

What a shame that the colored dots are no longer displayed with the false colors button. It was very practical to be able to locate and modify the exposure dynamically thanks to the colored dots. Since the tone card is only input and cannot be changed, what’s the point !? Wouldn’t it be more useful to link the colored dots to the false color button. It is much more logical because otherwise I do not see too much interest. When you want to modify the output, the color points allow dynamic help during adjustment. Removing this would be a setback for this useful tool for me

the tonal map is only to understand what the sliders are affecting. the false colors view is affected by everything, not just by those sliders. so it doesn’t make sense to show the dots only there, it’s completely inconsistent from a UI point of view, as it gives the impression that these sliders are somehow special, when in fact they aren’t. that’s why the dots become visible only when “show tonal map” is active, because that’s the only time when they make sense.
I’m really sorry about this confusion, I hope this clarifies…

I understand that and of course, the tonal equalizer is not the only one able to interact on false colors. But the colored dots placed to the left of the sliders made it possible to spot the EQ. It’s a shame but I respect your choice

If you are compiling from source and want the dots back, just replace this:

void ToneEqualizer::colormapToggled()
{
    for (size_t i = 0; i < bands.size(); ++i) {
        bands[i]->showIcons(show_colormap->get_active());
    }
    if (listener && getEnabled()) {
        listener->panelChanged(EvColormap, show_colormap->get_active() ? M("GENERAL_ENABLED") : M("GENERAL_DISABLED"));
    }
}

with this:

void ToneEqualizer::colormapToggled()
{
//    for (size_t i = 0; i < bands.size(); ++i) {
//        bands[i]->showIcons(show_colormap->get_active());
//    }
    if (listener && getEnabled()) {
        listener->panelChanged(EvColormap, show_colormap->get_active() ? M("GENERAL_ENABLED") : M("GENERAL_DISABLED"));
    }
}

in rtgui/toneequalizer.cc, line 135

hello @agriggio,
strangely when I deactivate these 3 lines, the colored dots disappear completely (don’t even appear anymore with the tonal map…)

It is true that this tool can be very interesting, in my opinion, for a final verification of the objective exposure, before export. This allows to realize the coherence of what we see on the screen subjectively and the exposure by the objective measurement of the pixels. (And to realize the good calibration or not of the screen). Indeed, the adjustments can be made with any module and not only the tonal equalizer, but the color indications by cursor in this one, can give an indication on which tonality to act.
Is what I’m saying totally incoherent or not?

If not, how do I use this tool?

thank you

1 Like

Merci :clin d’œil:

ah sorry, there are other lines like those in the same file. you should comment out those as well. sorry, I had forgotten…

what I don’t understand is this: if you only use the colored dots as some ‘vague hint’ about where to act, why can’t you just use the names of the sliders? I think they are reasonably self-explanatory… if you want to be precise, instead, then the colors in the tone eq sliders and those in the false colour view can be arbitrarily off, depending on what other manipulations you performed (such as tone curve, lab curve, color correction, film simulation… you name it). so, overall, they don’t make sense to me, sorry…

Yes… indeed, you’re right!

Windows: simplified launch of ART

There are a lot of ways to launch ART on windows

  • from cmd shell
  • from MSYS shell
  • from file context menu open with permitting to associate ART
  • from file context menu open if ART is associated
  • double clicking if ART is associated
  • from other app
  • from GIMP if plugin developped.

All this is a pain for following reasons:

  • a parasite dos windows can open
  • wether or not -R is selected a new instance is opened. Furthermore use of -R option is not always possible.
  • it opens by default in no file browser mode

Immediately I suggest to add gdbus.exe to the build to make the -R option work.

For the future, I would like that by default when launching ART from whatever method with a few exceptions:

  • it launches with the browser enabled
  • it uses a pre-existing instance
  • it doesn’t start a DOS window

To test the idea I made a dirty hack :

diff --git a/rtgui/main.cc b/rtgui/main.cc
index 024475675..cd5157968 100644
--- a/rtgui/main.cc
+++ b/rtgui/main.cc
@@ -153,7 +153,7 @@ int processLineParams ( int argc, char **argv )
 #if ECLIPSE_ARGS
         currParam = currParam.substr (1, currParam.length() - 2);
 #endif
-
+remote = true;
         if ( currParam.at (0) == '-' && currParam.size() > 1 ) {
             switch ( currParam.at (1) ) {
 #ifdef WIN32
@@ -169,12 +169,7 @@ int processLineParams ( int argc, char **argv )
 
 #ifndef __APPLE__ // TODO agriggio - there seems to be already some "single instance app" support for OSX in rtwindow. Disabling it here until I understand how to merge the two
 
-                case 'R':
-                    if (!gimpPlugin) {
-                        remote = true;
-                    }
 
-                    break;
 #endif
                 case '-':
                     if (currParam.substr(5) == "--gtk" || currParam == "--g-fatal-warnings") {
@@ -446,10 +441,14 @@ int main (int argc, char **argv)
             if (stdoutRedirecttoConsole) {
                 // check if parameter -w was passed.
                 // We have to do that in this step, because it controls whether to open a console to show the output of following steps
-                bool Console = true;
-
+                bool Console = false;
+                for (int i = 1; i < argc; i++)
+                    if (!strcmp (argv[i], "-w")) {
+                        Console = true;
+                        break;
+                    }
                 for (int i = 1; i < argc; i++)
-                    if (!strcmp (argv[i], "-w") || !strcmp (argv[i], "-R") || !strcmp (argv[i], "-gimp")) {
+                    if ( !strcmp (argv[i], "-gimp")) {
                         Console = false;
                         break;
                     }

@agriggio Just dropping by to say that I am happy to see that this thread is busy. I saw a 87 unread messages badge. Keep up the good work and hope things are improving where you live.

I wasn’t even aware that was needed – I never run Windows, and it shows unfortunately :frowning:

perhaps it is also needed on linux and mac, I don’t know.

It was also missing in ratherapee windowsd builds for a few years. I found that fortuitously, and I don’t know what is the use of gdbus.exe and why it is needed.
Is it explicitely called somewhere?

Used by GTK? D-Bus - Wikipedia

But the explanations go far above my head!

wxWidgets controls whether or not a shell is started for me, maybe GTK/Win?