• Dialog user setup to highlight interesting threads a bold color

    From bill@21:1/5 to All on Sun May 30 00:58:05 2021
    Dialog user setup to highlight interesting threads a bold color.

    This is a user setup question, where I'm currently at defaults.
    But I want to highlight in red (if possible) threads I care to watch.

    When I right click on a thread in the header pane my options are
    mark, watch, ignore, keep, delete, mark read, mark unread

    What I _love_ is the "mark unread" makes it red in the header pane.
    But that red goes away by default when I "read" that thread next time.

    I don't want every thread to be red (it can be any obvious bold color).
    I just want the few threads I care to watch to be red (or any color).

    Red means, by default, "not yet read" in Dialog.
    The "watch" is apparently designed to keep tabs on a thread.

    That puts an eyeglass icon next to the thread that I want to watch.
    Although "keep" or "mark" I guess work as well as does the watch icon.

    But I really _like_ how bold the red highlighting of the thread is.
    Is there a user model that can boldly highlight wanted threads in red?
    (any bold color will be ok)

    Regards,
    Bill
    --
    I was going to try to post a joke about sharpening pencils in the dark...
    But I couldn't see the point.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Bernd Rose@21:1/5 to bill on Sun May 30 09:05:08 2021
    On Sun, 30th May 2021 00:58:05 +0200, bill wrote:

    This is a user setup question, where I'm currently at defaults.
    But I want to highlight in red (if possible) threads I care to watch.

    Manually highlighting messages by color usually is done with a dialog
    called from Message menu. This involves several steps and is probably
    too time-consuming for your needs.

    You could score the messages up, define a color combination for messages
    with positive score in Scoring&Actions and re-apply Scoring&Actions for
    the current group. This could probably be scripted. IMHO, it still is
    a somewhat awkward approach, though.

    Therefore I suggest you try the following script:

    Program ColoredWatch;
    Begin
    ADo('Watch');
    PostKey(82, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(89, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    The first line just adds a Watch to the current subthread. If you do
    not need this, you can delete that line. All other lines stuff the
    keyboard buffer with keys to fill the MessageProperties dialog with
    suitable values and close it afterwards.

    All currently selected messages will get red color on yellow background.
    For other colors you need to change 82 (r ... red) and 89 (y ... yellow)
    to suitable values. To get blue, for instance, you'd need to send the
    PotsKey 66 (b) twice, because the first will select black, while the
    second will hit on blue.

    Don't mistake the second PostKey line above for sending the letter b.
    This line has the second alteration flag set to True, which means the
    line sends Alt+b. This is necessary to jump from foreground color entry
    field to background color entry.

    Accordingly, the fourth PostKey line tries to set "Change all selected articles" flag by sending Alt+a. This only works, if more than one article
    is selected. Else, the key is just omitted.

    Unfortunately, the "Changed collapsed folloup's" can not be set in this
    manner. Marcus accidentally assigned the shortcut Alt+f to two fields
    in this dialog. Without patching the Dialog.exe, (or applying a different language file) this cannot be changed.

    The script is created in the scripting dialog (Settings -> Scripting -> Scripting) as a new "Custom Script". Do not forget to save it (File
    menu) and compile it (Script menu).

    If you assign above script to a shortcut like Shift+w, you can change
    colors of selected messages with just one keyboard combination. This
    can be done with menu Settings -> Configure buttons/shortcuts.

    HTH.
    Bernd

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From bill@21:1/5 to Bernd Rose on Mon May 31 19:10:29 2021
    On Sun, 30 May 2021 09:05:08 +0200, Bernd Rose wrote:
    Manually highlighting messages by color usually is done with a dialog
    called from Message menu. This involves several steps and is probably
    too time-consuming for your needs.

    Thank you for understanding the problem set Bernd, and thank you for the new ColoredWatch.ds 40tudeDialog script to mark desired threads with custom
    colors by pressing the Shift+W keyboard combination on selected headers.

    To add to what you already wrote here's my ad hoc "documentation" so that others who want to add this ColoredWatch feature can follow these steps
    (and further improve upon them if needed or if desired).

    Please let me know if I made any errors below or if I skipped any steps.
    Program ColoredWatch;
    // ColoredWatch by Bernd Rose May 30th, 2021
    // Dialog Settings -> Scripting -> Scripting -> Custom scripts
    // Scripting File -> New script -> ColoredWatch -> OK
    Begin
    ADo('Watch');
    PostKey(82, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(89, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    Scripting Script -> Compile
    Scripting File -> Save
    Scripting Script -> Run
    Scripting File -> Close

    Dialog Settings -> Configure buttons/shortcuts
    Commands Categories -> Scripts -> Commands -> ColoredWatch
    Commands Shortcut -> Shift+W -> Close

    Use model:
    In the header pane select the header(s) you want to color different.
    Press Shift+W to color the selected headers the default colors.
    Default colors are red letters on a yellow highlight background.
    If you don't want to "Watch", just press "Shift+W" again.

    To undo either run this manually:
    In the header pane right click on a header you want to revert back.
    In Message Properties -> Set message color you can reset the colors.
    Reset Foreground color back to black & Background color back to white.

    Or create this script which will set fg text to Black & the bg to White:
    Program ColoredWatchUndo;
    Begin
    ADo('Watch');
    PostKey(82, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(88, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    To set the script for other colors just change the numbers.
    For example for setting Red fg text on a White highlight bg:
    Program ColoredWatch;
    // ColoredWatch by Bernd Rose May 30th, 2021
    Begin
    ADo('Watch');
    PostKey(82, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(88, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    While some colors (like red) are easy, others (like blue) are confusingly tricky because to set Blue fg text on White you need to add an extra
    "PostKey 66" line because the first "Postkey 66" will select black,
    while the second "Postkey 66" will hit on blue.
    Program ColoredWatch;
    // ColoredWatch by Bernd Rose May 30th, 2021
    Begin
    ADo('Watch');
    PostKey(66, false, false, false, false, false, false, false, false);
    PostKey(66, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(88, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    Regards,
    bill
    --
    Did you know trees poop?
    Well, where do you think #2 pencils come from?
    Sorry, thats was crappy. I'll leaf now.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From bill@21:1/5 to All on Thu Jun 3 18:32:43 2021
    SOLVED

    The more I play with this 40TudeDialog in the past weeks the more powerful I find it to be (so far it does almost everything I need a newsreader to do).

    Thanks to Bernd I (and we) have a solution which works perfectly.
    1. For any thread(s) I want to keep & highlight I press control+W
    2. That adds a keep flag and it sets the font to a deep blue color
    3. I can reset either the keep or color manually if I change my mind

    // Custom script: coloredWatch.ds by Bernd Rose May 30th, 2021
    Program ColoredWatch;
    Begin
    // Set the "Watch" flag
    // ADo('Watch');
    // Set the "Keep" flag
    ADo('Keep');
    // Set the selected message header(s) font color to dark blue
    PostKey(66, false, false, false, false, false, false, false, false);
    PostKey(66, false, false, false, false, false, false, false, false);
    PostKey(66, false, true, false, false, false, false, false, false);
    PostKey(88, false, false, false, false, false, false, false, false);
    PostKey(65, false, true, false, false, false, false, false, false);
    PostKey(79, false, true, false, false, false, false, false, false);
    ADoLater('MessageProperties');
    End.

    Regards,
    bill

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)