fowode / pychess

Automatically exported from code.google.com/p/pychess
GNU General Public License v3.0
0 stars 0 forks source link

new FICS Seek dialog #369

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Create a seek on FICS
2. You can choose from three pre-defined ranking intervals for opponent
3. What if I want to play against interval of 1200-1400 opponent?

What is the expected output? What do you see instead?
I should be able to input my own interval.

Does it happen every time?
yep, its a feature ;-)

What version of the product are you using?
10alpha

Did you use an installed version of PyChess or did you run in from a
tarball/svn?
deb from www.getdeb.net

Please provide any additional information below.

Please attach the latest pychess logfile.
For PyChess <= 0.6.x it's hidden in your homedirectory and called
".pychess.log".
For PyChess > 0.6.x, it's in a hidden folder, under your homedirectory,
named ".pychess/"

Original issue reported on code.google.com by pe3...@gmail.com on 4 Jan 2009 at 2:49

GoogleCodeExporter commented 9 years ago
I've created a clone for this issue with checkout instructions here:
http://code.google.com/r/mattgatto-newseekdialog/source/checkout

It now incorporates Thomas' great icons from comment 27 and comment 29 for the 
"Color" section of the "Edit Seek" dialog.

Original comment by mattgatto on 24 Jun 2010 at 9:16

GoogleCodeExporter commented 9 years ago
The ChainButton should now work in the clone (see above comment). Testing is 
appreciated. Rotating the icons 90 degrees in The Gimp seems to have 
sufficiently solved the issue of it taking up too much vertical space.

The last piece of the puzzle here is updating the Player List tab's Challenge 
panel to match what's already in the Seeks/Challenges tab. If anyone has any 
ideas for how this should work/look let me know.

I've thought about it, and so far, the easiest most consistent route seems to 
be to have the same UI
as the Seek/Challenges tab: an expander panel (but unexpanded like it currently 
is(?)) with the same "saved seeks" hooked to the same "saved seek" preferences 
and "Edit Seek" dialog (minus the "Opponent Strength" frame obviously), so that 
changing them in one tab changes the corresponding seek in both tabs.

Original comment by mattgatto on 26 Jun 2010 at 12:21

GoogleCodeExporter commented 9 years ago
mattgatto,
I have tried it and it looks excellent. This is the feature I was waiting for.

My comments related to Seeks dialogs:
1. I have been playing around with different options and so pressed "Send seek" 
button. Now in Active Seeks dialog I have multiple instances of my name, so 
multiple different seeks. Is there any way I can cancel one of the seek I don't 
want? If I click on my name I can't select it (grayed rows are not permited to 
be selected). Just an idea what if when I click on myself Accept button on the 
top should change to Cancel Seek?

2. Is there any way I could filter Active Seeks? I only like to play Standard 
game, so it would be nice if I could filter Active Seeks dialog to show only 
"Standard" option. I also like to play only games with 15 minutes. Actually it 
would be nice if above Active Seeks window whould show only users that I have 
selected as option in Edit Seek. Just an idea, maybe in Edit Seek dialog in 
Options section you could add check button something like: "Filter Active Seeks 
window according to this seek."

Original comment by igo...@gmail.com on 26 Jun 2010 at 1:14

GoogleCodeExporter commented 9 years ago
add 1) Work-around is to close and run PyChess again
add 2) It looks like there is an icon with hand in first column witch probably 
means it is the user that fulfills edit seek filter, is it? What does icons in 
first column means?

Original comment by igo...@gmail.com on 26 Jun 2010 at 4:25

GoogleCodeExporter commented 9 years ago
I just pushed some changes to the clone: a merge with current pychess HEAD and 
a minor fix to how "Your ... Rating: " box is handled in the event that the 
user doesn't have a rating for the type of seek being configured. Now the seek 
editor displays "Your ... Rating: Unrated", instead of hiding the surrounding 
box.

@igor2x: Indeed, the Seeks list could probably use some kind of tooltips for 
each seek with more information on what the seek is (i.e. manual or autoaccept; 
whether it was a challenge, general seek, or response to a seek with a manual 
accept specified; and any other seek data/field which doesn't currently have a 
column in the UI for it). As far the lack of "Cancel Seeks" goes, I added a 
button to do it on HEAD and merged it in the clone too. And as far as the seek 
filtering goes, maybe we could just add a group of toggle buttons to the seek 
list (like Evolution has for Mail, Calendar, Contacts, etc.) labeled Blitz, 
Lightning, Standard which would filter the active seeks? I'd like to eventually 
add something like that to the Games List tab too.

Original comment by mattgatto on 2 Jul 2010 at 12:51

GoogleCodeExporter commented 9 years ago
I just pushed a conversion of the "Challenge Panel" to use the Seek Editor 
system in the clone. It could probably use some slight design changes and 
polish and it has a slight usability problem in that all the config buttons on 
the opposite panel are insensitive when editing a seek from one panel. My 
thoughts on this are in the TODO note attached. But at least it works. I think 
I might push all these changes to HEAD for wider testing if no one objects.

Original comment by mattgatto on 9 Jul 2010 at 10:48

Attachments:

GoogleCodeExporter commented 9 years ago
mattgatto, I also suggest to merge it to HEAD. I would like to see all of this 
features in one single testing environment.

BTW, I am used to svn, has someone find any simple hg tutorial? What is equal 
for "svn update" to get HEAD revision?

Original comment by igo...@gmail.com on 9 Jul 2010 at 11:14

GoogleCodeExporter commented 9 years ago
igor:
$ hg update

The clone is just a superset of HEAD. It has all the changes from HEAD merged 
into it and is safely able to run alongside hg HEAD or any of the betas, so it 
is a single testing environent.

gbtami posted some tutorials:
An article:
http://joelonsoftware.com/items/2010/03/17.html
A tutorial:
http://hginit.com/

Original comment by mattgatto on 9 Jul 2010 at 11:25

GoogleCodeExporter commented 9 years ago
sorry that should be:
$ hg pull
$ hg update

Original comment by mattgatto on 9 Jul 2010 at 11:27

GoogleCodeExporter commented 9 years ago
I've merged the work done on the clone into the main pychess repository and 
deleted the clone. The challenge panel still needs a little work as I said in 
comment 56, but I think it's good enough for everyone to use at this point.

Original comment by mattgatto on 12 Jul 2010 at 12:32

GoogleCodeExporter commented 9 years ago
Hi,
I have updated PyChess from hg. I am having some problems of "segmentation 
fault" and some freezes. Don't know if this is the problem for your last 
commit, because I haven't been working with this computer for a while. To get 
out of "segmentation fault" I just execute PyChess command again and again and 
then it works fine.

I also got some freezes two times:
1. when I clicked on "Offer Rematch" at the end of the game
2. when the game has loaded and I was white and I couldn't make a move
Don't know if this is related to this last commit.

My system: Ubuntu 10.04.
Thanks

Original comment by igo...@gmail.com on 12 Jul 2010 at 4:00

GoogleCodeExporter commented 9 years ago
About this new seek dialog. I just love it! It looks it works fine.
1. On Seeks /Challenges window | Create Seek dialog at bottom pressing a 
settings button beside one of the choice. In "Opponent Strength" there is a 
"Your xxx strength" where xxx is the "Time control" label (like e.g. 
Lightning). I translated the strings to my native language and as I see this is 
a mess in my language, because order of this strings should not be the same as 
in English. I suggest to completely remove "Lightning" etc from "Your xxx 
strength" label and instead of this just use "Your strength". It is obvious 
that this strength is for the time control I have selected above.
If you would really like to preserve this "xxx" strength in the label I suggest 
to use "Your strength for xxx" which would be much simpler to translate, but it 
could get some other confusion in some other language. I suggest to remove the 
"xxx".

Original comment by igo...@gmail.com on 12 Jul 2010 at 4:01

Attachments:

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
2. I don't understand what is "Wild" time control option that is available in 
the main window (right site of the attached picture). I have tried to change 
Minutes field several times and I can't figure it out how to get Wild option.

Original comment by igo...@gmail.com on 12 Jul 2010 at 4:06

Attachments:

GoogleCodeExporter commented 9 years ago
3. I also don't understand what is the difference between "Seek / Challenges" | 
"Create Seek" option and from "Player List" | Challenge? It looks similar. Also 
Edit Seek button shows similar options, but the options are not the same as in 
"Seek / Challenges". What is purpose of "Player List" | Challenge?

Original comment by igo...@gmail.com on 12 Jul 2010 at 4:09

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
4. In Edit Seek dialog "Options" section there are two options:
Rated game
Manually accept opponents

This is just a little tip, first option uses singular (game) and second plural 
(opponents). I think it should be one of the following:
Rated games
Manually accept opponents

or

Rated game
Manually accept opponent

I suggest to use singular (game, opponent).

Original comment by igo...@gmail.com on 12 Jul 2010 at 4:30

Attachments:

GoogleCodeExporter commented 9 years ago
Igor, you can read about wild here:
http://www.freechess.org/Help/HelpFiles/wild.html

Original comment by gbtami on 12 Jul 2010 at 5:59

GoogleCodeExporter commented 9 years ago
Thanks _very_ much for your help Igor, and sorry for the continual delays in my 
responses.
@comment 61: Are you still seeing any of these issues?
@comment 62: Is anyone aware of a language for which, changing the string to 
"Your strength for [Lightning/Random/etc.]" would not work? I'd like to keep 
the type of game in the string here because it gives the user visual feedback 
about how changing controls in other areas of the dialog (either the Time 
Control, or Variant) has affected their rating for the Strength section. This 
also ties in with your question about what the Wild rating means. If changing 
the time control was the only thing that affected what the type of game being 
played is on FICS (and therefore your strength for that type of game), it 
wouldn't matter so much. But people need to be able to see why, when they 
change the variant, the game type/strength has changed. If we just had "Your 
strength: 1000", and that number changed when other areas of the dialog were 
changed, I think that would be confusing and the user would think to 
themselves, "strength for what?".
@comment 64: This ties in with the previous question. On FICS, your wild rating 
encompasses all of the variants we currently support other than Losers (Fischer 
Random, Random, Asymmetric Random, Odds, etc.) at all time controls. I guess 
that for now, a tooltip for the Wild label in the ratings table might be 
sufficient, but we definitely need to think of ways of relating these things to 
the user in simple, elegant ways. Another thing we need to do in the the near 
future is to take the explanations for the variants out of the comment headers 
for each one in the code (pychess/lib/Variants/*) and promote them to the GUI 
so people can see what they are when they mouse over each variant in both the 
FICS Lounge Edit Seek and New Game dialogs.
@comment 65: Yes, this needs to be fixed. They look similar because with both 
you're editing the same seeks (notice that when you change a seek in one, it's 
automatically changed in the other). But it's not explained at all currently in 
the Challenge panel. In the interest of getting the whole new 'Edit Seek' 
dialog system working and merged I skipped work on this area for now, but 
fixing it is next on my list of things to do. My plans for how to go about this 
are outlined in the screenshot of my TODO list (first bullet item) I posted in 
comment 56.
@comment 69: Good point, I'll change this.

Original comment by mattgatto on 6 Aug 2010 at 7:18

GoogleCodeExporter commented 9 years ago
@comment 61: I have opened new bug report: 
http://code.google.com/p/pychess/issues/detail?id=572 and I suggest to not 
discuss in this thread about it.
@comment 62: What I was trying to suggest is to have one string for all the 
words "Your strength for [Lightning/Random/etc.]" - it is much easier to 
translate. Now like it is this translation label is merged with three labels 
and so it is impossible to correctly translate into my language. I think you 
can change this to single string and it is very unlikely that it is impossible 
to translate to other languages, because translators can change words order - 
that was my main point.
@comment 64: That is excellent idea to have a mouse over to get more info.
@comment 65: If both dialogs are doing the same thing one of them should be 
removed. I like a "make it simple" approach.
@comment 69: OK.

Original comment by igo...@gmail.com on 7 Aug 2010 at 6:05

GoogleCodeExporter commented 9 years ago
@comment 62: i'm having trouble following you, could you provide an example in 
some type of programming language? shell script, python, whatever

@comment 65: how are users going to challenge a specific player in the players 
list in the Players List tab, if we eliminate the challenge panel?

Original comment by mattgatto on 13 Aug 2010 at 5:51

GoogleCodeExporter commented 9 years ago
what if the strings merged to something like, "Your strength: 1100 (Blitz)"

Original comment by mattgatto on 13 Aug 2010 at 6:03

GoogleCodeExporter commented 9 years ago
@comment 62: Sorry for not being clear enough. Now there are 4 strings:
First string: Your
Second string: Lightning
Third string: strength
Fourth string: 1100

Each of this four strings must be translated separately. What I am trying to 
suggest is to create one string for whole text set of words and one string for 
number, for example:
First string: "Your Lightning strength:"
Second string: 1100

So "merge" first, second and third string to one string.

Original comment by igo...@gmail.com on 14 Aug 2010 at 7:39

GoogleCodeExporter commented 9 years ago
@comment 65: sorry I have never used this option, so it just looked to me as 
duplication. Please ignore my comment on this issue.

Original comment by igo...@gmail.com on 14 Aug 2010 at 7:41

GoogleCodeExporter commented 9 years ago
@comment 75: it is not possible to do it like that in a practical way because, 
the strings for the variant names are pulled from the respective variant 
classes defined in pychess/lib/pychess/Variants/*.py files, so the strings are 
going to have be merged somehow and we have to figure out how to do it best. I 
only know one language unfortunately, English (I'm American ;), so I don't know 
how the resulting/merged string should be defined such that it's translatable 
in all languages. Would the way I proposed doing it in comment 74 work?

Like:
"Your strength: 1100 (Blitz)"
or
"Your strength: 1200 (Fischer Random)"

Original comment by mattgatto on 15 Aug 2010 at 6:44

GoogleCodeExporter commented 9 years ago
mattgatto, if you put multiple strings to translate one by one then translator 
has no choice of making different words order. The result is inconsistent 
translation like for example, correct: "Today is a beautiful day.", but if you 
have single strings put to the sentence then you can get: "Today day beautiful 
is a." So a big mess.

What puzzles me about string: "Your strength: 1100 (Blitz)" is this really one 
string or multiple like:
First string: Your strenght
Second string: 1100 (this is no reason to translate)
Third string: (Blitz)

If so then this can easily be translatable to multiple languages.

Original comment by igo...@gmail.com on 15 Aug 2010 at 9:38

GoogleCodeExporter commented 9 years ago
igor, yes, the merge would basically be of 3 strings. So, the final merge would 
go
something like this:

if [game is a chess variant other than normal chess]:
    gametype = variant.name
else
    gametype = getGameTypeBasedOnTimeControl(timecontrol)

finalString = "Your strength: " + rating + "(" + gametype + ")"

Original comment by mattgatto on 15 Aug 2010 at 10:26

GoogleCodeExporter commented 9 years ago
@comment 79: excellent, now I understand and I think this is good solution. 
Thanks for listening to my translation problems.

Original comment by igo...@gmail.com on 16 Aug 2010 at 5:12

GoogleCodeExporter commented 9 years ago
I've update pychess with fixes for the translation issue with "Your rating:", 
and also added a tooltip to the FICS Lounge rating table explaining what the 
"Wild" rating is (which you'll see if you mouse over it and you're not logged 
in as a guest and you have a "Wild" rating).

Attached is a mockup for what the "Challenge Player" dialog will look like. It 
is currently an expander and is confusing in its similarity to the "Create 
Seek" expander.

Original comment by mattgatto on 17 Aug 2010 at 2:12

Attachments:

GoogleCodeExporter commented 9 years ago
@Comment 81, first paragraph: Excellent, it works fine. I have already 
translated new strings to my language and uploaded translation file. Thanks a 
lot for fixing this issue.

Original comment by igo...@gmail.com on 17 Aug 2010 at 5:59

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
In revision f5ea9487a3 I've converted the "Challenge" panel into a dialog, 
implementing the mockup in my comment 81. So assuming nobody has any problems 
with this, and there's no remaining issues, I'd like to close this bug as 
FIXED, finally.

Original comment by mattgatto on 20 Aug 2010 at 5:32

GoogleCodeExporter commented 9 years ago
Hi Matt! Nice work on seek panel!
I like using the same seek panel on booth tabs, and just make insensitive the 
strength part. Otherwise I feel a bit ugly changing the challenge expander to a 
new popup dialog. It was consistent using expander in both tabs, IMO. But what 
I really don't like, the unnecessary bold in this dialog, instead of removing 
the not used strength from there.

Original comment by gbtami on 20 Aug 2010 at 7:00

GoogleCodeExporter commented 9 years ago
It is fine by me to close this "bug" as fixed.

Original comment by igo...@gmail.com on 20 Aug 2010 at 11:12

GoogleCodeExporter commented 9 years ago
I talked about comment 85 on IM with Tamás. In hg tip I've reverted the bold 
in the Challenge Player dialog to what it was originally (omitted unapplicable 
parameters rather than bolding applicable ones). I still prefer the Challenge 
button over it being an expander, but will revert that aspect too if it bothers 
everybody. I'd like to close this finally if no one objects.

When we were talking about this, Tamás mentioned that the tab names in the 
FICS Lounge are confusing and I agreed. We agreed that better names for the 
"Seeks / Challenges" and "Player List" tabs might be, "Sought/Create Seek" and 
"Players/Challenge Player". After thinking about it later, I thought of a 
problem with this: taking the "Challenges" out of "Seeks / Challenges" would 
further obscure the fact that currently, when someone challenges you, the 
challenge shows up in the Seeks/Sought list. And most users probably don't 
realize this. In the future though, challenges should probably be taken out and 
put into a different widget, like a custom GtkInfoBar that docks somewhere in 
the Lounge. That way they would be more visible.

Original comment by mattgatto on 27 Aug 2010 at 10:11

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Renaming "Seeks / Challenges" to "Sought/Create Seek" is also problematic 
because nobody knows what "sought" means. I mean, currently only old fics 
players probably have an idea why we call it "seeks" in the first place. But 
even they might take a few seconds to clear out the connection to "sought".

Eventually the entire way we engange in a game should be redone, but it 
requires some more scetching and time.

I actually like what you've done with the Players tab. It has become more 
focused around the players, and not just a "Challenge" tab.
It is great if we can grow the fealing of community. In the future we might 
even want to put some more info on the players (finger lines) and move the 
buttons down in the actual treeview.

All in all I really like how this 'issue' has all turned out.
My only last thought, is that the seek expander should probably be expanded by 
default, or simply not be an expander anymore.

- Thomas

Original comment by lobais on 27 Aug 2010 at 12:14

GoogleCodeExporter commented 9 years ago
Matt, you are right. I forgot that challenges against me appears on the seek 
tab too.

Original comment by gbtami on 27 Aug 2010 at 1:17

GoogleCodeExporter commented 9 years ago
I was thinking the same thing about adding finger lines. It would be pretty 
easy and is pretty important. Maybe abuse tooltips temporarily and stick it in 
one of those when the player is hovered over in the Players list? Or add it to 
the upper right hand area of the "Player List" -> "Start Private Chat" button 
-> window? Or have a separate button next to "Challenge", "Player Information" 
that opens a separate window?

What do you mean by "move the buttons down in the actual treeview"?

In regard to expanding the seek expander by default, I agree. Also, it's 
expanded/unexpanded state should probably be remembered.

Original comment by mattgatto on 27 Aug 2010 at 2:20

GoogleCodeExporter commented 9 years ago
Something like what is pictured in the attached image would be cool to have in 
the near future for a player information page. It is a screenshot of a player 
profile page from the IGoogle homepage chess.com widget.

Original comment by mattgatto on 27 Aug 2010 at 2:24

Attachments:

GoogleCodeExporter commented 9 years ago
What I thought was something like this.
The fingerlines woul have to be attached "lazily", as they would mean tons of 
extra server requests.

The Chess.com profile is very nice. I wonder if we can get that kind of 
information from fics.

(Really this all belongs in another issue report though :))

Original comment by lobais on 27 Aug 2010 at 3:13

Attachments:

GoogleCodeExporter commented 9 years ago
I'm closing this as it's done.

Original comment by mattgatto on 2 Sep 2010 at 8:33

GoogleCodeExporter commented 9 years ago
Issue 475 has been merged into this issue.

Original comment by mattgatto on 2 Sep 2010 at 8:33

GoogleCodeExporter commented 9 years ago
Issue 476 has been merged into this issue.

Original comment by mattgatto on 2 Sep 2010 at 8:34