ctm / mb2-doc

Mb2, poker software
https://devctm.com
7 stars 2 forks source link

Allow log filtering #748

Closed ctm closed 2 years ago

ctm commented 2 years ago

Allow people to choose to have certain classes of messages to show up or not show up in their logs.

Now that chat works properly in the graphical interface, it makes sense to get a bunch of the chaff out of it. Eventually the chat subsystem should be overhauled, but if I simply attach a little info (e.g. Public / Private and variant) to each LogLine, I can then filter them based on the user preferences.

ctm commented 2 years ago

Yesterday I boxed the few enum variants found within table_message::Message and was able to get rid of all my [allow(clippy::large_enum_variant)] lines. I then added a logged_messages field to Table and the predicate save_to_table_log to table_message::Message. When save_to_table_log is true, process adds the message to logged_messages.

Today I'll add an enum (or two) that will characterize the message in a way that will allow people to choose which messages to see, then I'll implement the code that uses that preference. After that I'll probably add a separate formatter so that we can get much closer to PokerStars messages than the current output, although I may create a separate GitHub issue for it.

ctm commented 2 years ago

I didn't create a separate formatter, but we do now have three chat options: "All", "Normal" and "Chat Only". I've only lightly tested it locally, but I'm deploying now so I can use it during this evening's tournament.