Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hi all! Since the rest of my family is sleeping now, there are some minutes left ... but I expect my nieces to get me out of the bed in a (very) few hours. Thus, shortened answer :-) Am Mittwoch, den 22.12.2010, 11:03 -0500 schrieb Kohei Yoshida: [...] Another thing would be helpful ... a more instant feedback on name conflicts: showing a comment below the name text field, deactivating the OK button. The /!\ symbolizes a small warning sign. Ah, good. Great minds think alike. :-) Regarding the /!\ warning symbol, can you think of any existing dialog that does that? I like the idea itself, but I don't know how that could be (easily) implemented. Looking at an existing dialog code would help me figure out how to do this. At the moment, I don't know any existing dialog within LibO ... maybe (sort of) the Tools -- Options dialog that (if I remember correctly) shows some messages if certain options are locked down by administrators. But, maybe the ongoing effort within the OOo UX team might help us. It doesn't fit perfectly, because the invalid name is persistent but the info bubble is designed to appear temporarily: http://wiki.services.openoffice.org/wiki/User_Experience/Projects/NonModalMessageSystem#Step_2_-_Message_Style_2a * Think about the Insert Before thing ... it is not that obvious what this means. Is there any way to make this more understandable? Hmm. This needs some thinking. I'll comment on Joost's proposals in his mail ... * Does any data / experience prove that the default (new) position of the sheet should be directly after the source sheet? I didn't see any usage data in the spreadsheet file I downloaded from here http://wiki.services.openoffice.org/wiki/File:OOo31_Usage_Feedback_Data.ods Anyone is welcomed to double-check it though. I downloaded the file at the top of the list and had a look at the Calc sheet. It seems that most of the stuff is still German - so I just looked for items that contain move. For example (sorry, no deep-dive), I found the following (seems to be checking the button copy within the dialog): TabelleVerschiebenKopieren-Kopieren sc:CheckBox:RID_SCDLG_MOVETAB:BTN_COPY Check 2352 Did that help ... even if I just throw in some late ideas? ;-) Yes, it did. I guess we have some further work to do in this dialog. :-) Wait, wait ... I have more ideas for even more dialogs ;-))) Thanks a lot to both you Kohei, and Joost! Cheers, Christoph ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hi all! I'd like to comment the button up/down idea ... maybe the questions are already solved somehow, but just to be sure ... Am Mittwoch, den 22.12.2010, 11:22 -0500 schrieb Kohei Yoshida: My preferred approach is to create two buttons to move the insertion position up or down, instead of relying on the user clicking on the sheet name in the list. To me 1) that makes more sense, and 2) is easier to implement than handling mouse click events on the list control. Here we face the ease of use vs. efficiency issue ... the proposed approach might fall short for the power users. Ease of use: If a document has a limited number of sheets, and the user is rather mouse-driven, then clicking three times or so is okay. As we said before, the result is directly visible and, thus, an improvement ... Efficiency: Some users (more advanced users) that work in large tables might simply prefer to scroll down via the mouse-wheel, and to directly click on the target position. Concerning the latter, if we want to have something like that (and there will be requests to mimic the today's behavior), we require space consuming placeholder lines between the real sheets. This somehow disturbs the known sheet mapping ... and even for our ease of use proposal, the users have to re-think the mapping (horizontal vs. vertical). Furthermore, let's assume that a less experienced user misses the current dialog design and moves a sheet to the wrong position. Then both the actions move/copy are non-destructive (looking at the data that is kept after all). So correcting this issues might a smaller problem - in comparison to what we can gain for power users. Finally, the current design is not that bad ... if we want to go for a design that suits the non-experts, then we also have to keep in mind the power users. Does that make sense to you? I'll try to think a bit more about this issue ... By the way, if buttons get added, please consider to add them at the right hand side (if possible, I'll double-check this with other specs). And, they should be in close relationship - to make sure that the required mouse movement is minimized, e.g. if the user wants to correct the usual one click too far issue. Cheers, Christoph ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hi all, The proposed layout change of Bernhard looks good to me, but there are some pitfalls. Christoph wrote: [...] * If the user copies a sheet (several sheets) within the same file, then the new sheets will be renamed anyway. Right? Although the user did not check the Rename checkbox ... -- As far as I understand, we require unique sheet names. The checkbox refers to a user intended name change. That is just the problem for the programmer, that he does know what the user is going to do, and the user can change his mind. + use case mc01: The user copies SheetA in the same document. The proposed new name becomes SheetA_1. Now the user decides to copy the sheet to another document, where SheetA does not exist, the proposed new name should be SheetA, but only if the user did not rename the new name! I do not known if that is possible, with keeping the code transparant. Bernhard wrote: [...] |Place to insert | |+-+ | | /\ | Sheet 1 | | | || | $sheetname 2 | | | \/ | Sheet 2 | | || Sheet 3 | | |+-+ | That is an challenge for the programmer, because the content of the list must change on the fly. Thus make the challenge not too big: display - position - instand of $sheetname 2. What to do when the user clicks Sheet 3? Drag-and-drop of - position - must be implemented, but not for the existing sheets! I wait for the reaction of Kohei. Best regards, Joost 2010/12/22 Dr. Bernhard Dippold bernh...@familie-dippold.at Hi all sorry: once more I didn't reply all, just reply as on the other LibO lists... here is what I sent to Christoph alone: Hi Christoph, all, just a very short comment - before I forget it... Christoph Noack schrieb: [...] * Think about the Insert Before thing ... it is not that obvious what this means. Is there any way to make this more understandable? Move the Insert Before list below the new name area and move the new name by mouse or arrows up and down in the list. This would allow to place the new sheet where the user wants it without thinking about before and after. Copying your sketch... +-+ | Move / Copy Sheet: $sheetname | +-+ | Action -- + |(o) Move | |( ) Copy | | | | Location and Name --- | |To Document | |[ $documentname (Current Document) |\/] | | | |New Name | |[ $sheetname 2] | | | |Place to insert | |+-+ | | /\ | Sheet 1 | | | || | $sheetname 2 | | | \/ | Sheet 2 | | || Sheet 3 | | |+-+ | | | +-+ | [ Help ] [ OK ] [ Cancel ] | +-+ Best regards Bernhard ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hello Christoph! On Tue, 2010-12-21 at 23:18 +0100, Christoph Noack wrote: Hi Kohei, hi Joost, hi dev list members! It seems that I still miss a good way to sort and highlight IMAP messages - I did not pay too much attention to this thread and totally missed the CC Christoph. Grrr sorry at the same time ... Thus, I don't know whether this is helpful at the moment (as far as I understand, the patch has been already committed), but here are my short thoughts ... Well, usability is always an on-going process. So this is never too late. :-) Bur first, a basic question: Did the change address a small (but important) issue, or is the change part of some broader attempt? I ask, because the dialog is rather old and contains some other issues (like the old vertical OK/Cancel/Help design). As Andy already explained, this one is not a part of any broader plan, but just a one-time improvement. But I'd love you hear your thoughts on how it could be improved further. Am Freitag, den 10.12.2010, 20:31 -0500 schrieb Kohei Yoshida: [...] About UI I'll refer to your (Kohei's) pictures linked in another mail ... And these are the screenshots of the new dialog. Rename unchecked http://people.freedesktop.org/~kohei/sheet-rename-unchecked.png Rename checked http://people.freedesktop.org/~kohei/sheet-rename-checked.png Two main (and somehow rhetorical) questions / remarks: * If the user copies a sheet (several sheets) within the same file, then the new sheets will be renamed anyway. Right? Although the user did not check the Rename checkbox ... -- As far as I understand, we require unique sheet names. The checkbox refers to a user intended name change. * If the user copies a sheet, how will he get aware of the name of the new sheet? -- Currently, people have to finish the operation and then look for the new name. * Let's remove the 'New Name' string as I feel this is redundant. And let' place the rename box either to the immediate right of 'Rename' check box, or immediately below it. I prefer it being to the right of the check box since we have a plenty of space there. Does that mean the aligned to the caption Rename? Would be great. Yes it is. The 'Rename' text and the rename box are on the same row now. * Instead of hiding the rename box, it's better to disable it when the Rename check box is not checked. We generally don't show or hide controls but enable or disable it. * Let's disable the Rename check box as well as the rename input box when multiple sheets are selected. We don't know what we should do for multiple sheet copy/move rename yet, so I would be more comfortable disabling it in such cases (at least for now). Yep. * I think it would be more user-friendly if the Rename input box showed the default sheet name. When moving a sheet, this would be the original sheet name, while when copying a sheet it would be the original name followed by '_' + num (e.g. Sheet1 - Sheet1_1). Absolutely. [...] All in all, I'm happy with what I see there, so, good work! :-) A small additional question (I may have missed that): What happens, if the user choses a name that is already used in the document? The current (less helpful) reaction within the renaming sheet dialog is another dialog window Invalid sheet name. (Ask any user if he knows what this might mean ... *g*). Good question. I don't think we currently handle this in the UI, but let it pass to Calc and Calc will spit Invalid sheet name dialog for now. However, we could check for the validity of the new name as the user types, and do something when the name already exists in the document. Disabling the OK button (or whatever the confirmation button will be) would be my first thought. The chart dialog does something cute and turns the background color of the input box to pink when you enter an invalid cell range address. I don't know whether it's possible to do that here (but I can find out). Let me know if you need any help with any of the above items. I'll CC Christoph in case he has some comments on this feature as well as on my comments above. Christoph, please feel free to add your comments as well if you have any. :-) Concerning my questions above, I do have a proposal - it is meant to be a small iterative step, so please look at it critically ;-) Some assumptions: * limit the number of changes * keep the idea of a common move / copy dialog (I still don't know why this had been introduced ... but at least, it saves another menu item) +-+ | Move / Copy Sheet: $sheetname | +-+ | Action
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
On Wed, 2010-12-22 at 12:48 +0100, Joost Eekhoorn wrote: Hi all, The proposed layout change of Bernhard looks good to me, but there are some pitfalls. Christoph wrote: [...] * If the user copies a sheet (several sheets) within the same file, then the new sheets will be renamed anyway. Right? Although the user did not check the Rename checkbox ... -- As far as I understand, we require unique sheet names. The checkbox refers to a user intended name change. That is just the problem for the programmer, that he does know what the user is going to do, and the user can change his mind. + use case mc01: The user copies SheetA in the same document. The proposed new name becomes SheetA_1. Now the user decides to copy the sheet to another document, where SheetA does not exist, the proposed new name should be SheetA, but only if the user did not rename the new name! I do not known if that is possible, with keeping the code transparant. Well, this is not that big of an issue since we do have access to the ScDocument instance of the destination document. When the user switches the destination document, we can ask the new ScDocument instance whether there is a name clash. I already put some code to handle some aspect of that. Bernhard wrote: [...] |Place to insert | | +-+ | | /\ | Sheet 1 | | | || | $sheetname 2 | | | \/ | Sheet 2 | | || Sheet 3 | | | +-+ | That is an challenge for the programmer, because the content of the list must change on the fly.Thus make the challenge not too big: display - position - instand of $sheetname 2. Yup, I agree. Displaying the '- position -' or something like that would make more sense, especially when the user is trying to move or copy multiple sheets. Changing the content of the list is, although it requires some code to write, can be doable. This just means we need to re-populate the list content every time the insertion point moves, but it can be done. What to do when the user clicks Sheet 3? Drag-and-drop of - position - must be implemented, but not for the existing sheets! My preferred approach is to create two buttons to move the insertion position up or down, instead of relying on the user clicking on the sheet name in the list. To me 1) that makes more sense, and 2) is easier to implement than handling mouse click events on the list control. Kohei -- Kohei Yoshida, LibreOffice hacker, Calc kyosh...@novell.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hi all, If you now give for Sheet1 a new name, e.g.SheetA and that name exists, the new name will become SheetA_2 without a question for the user. Joost 2010/12/22 Kohei Yoshida kyosh...@novell.com On Wed, 2010-12-22 at 12:48 +0100, Joost Eekhoorn wrote: Hi all, The proposed layout change of Bernhard looks good to me, but there are some pitfalls. Christoph wrote: [...] * If the user copies a sheet (several sheets) within the same file, then the new sheets will be renamed anyway. Right? Although the user did not check the Rename checkbox ... -- As far as I understand, we require unique sheet names. The checkbox refers to a user intended name change. That is just the problem for the programmer, that he does know what the user is going to do, and the user can change his mind. + use case mc01: The user copies SheetA in the same document. The proposed new name becomes SheetA_1. Now the user decides to copy the sheet to another document, where SheetA does not exist, the proposed new name should be SheetA, but only if the user did not rename the new name! I do not known if that is possible, with keeping the code transparant. Well, this is not that big of an issue since we do have access to the ScDocument instance of the destination document. When the user switches the destination document, we can ask the new ScDocument instance whether there is a name clash. I already put some code to handle some aspect of that. Bernhard wrote: [...] |Place to insert | | +-+ | | /\ | Sheet 1 | | | || | $sheetname 2 | | | \/ | Sheet 2 | | || Sheet 3 | | | +-+ | That is an challenge for the programmer, because the content of the list must change on the fly.Thus make the challenge not too big: display - position - instand of $sheetname 2. Yup, I agree. Displaying the '- position -' or something like that would make more sense, especially when the user is trying to move or copy multiple sheets. Changing the content of the list is, although it requires some code to write, can be doable. This just means we need to re-populate the list content every time the insertion point moves, but it can be done. What to do when the user clicks Sheet 3? Drag-and-drop of - position - must be implemented, but not for the existing sheets! My preferred approach is to create two buttons to move the insertion position up or down, instead of relying on the user clicking on the sheet name in the list. To me 1) that makes more sense, and 2) is easier to implement than handling mouse click events on the list control. Kohei -- Kohei Yoshida, LibreOffice hacker, Calc kyosh...@novell.com ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
On Wed, 2010-12-22 at 19:30 +0100, Joost Eekhoorn wrote: Hi all, If you now give for Sheet1 a new name, e.g.SheetA and that name exists, the new name will become SheetA_2 without a question for the user. Sure. I said I implemented some aspect of it, and this is one of those cases we still need to catch in the dialog. Kohei ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice] [UX] [PATCH] EasyHacks 3.27 Change Sheet copy process
Hi Kohei, hi Joost, hi dev list members! It seems that I still miss a good way to sort and highlight IMAP messages - I did not pay too much attention to this thread and totally missed the CC Christoph. Grrr sorry at the same time ... Thus, I don't know whether this is helpful at the moment (as far as I understand, the patch has been already committed), but here are my short thoughts ... Bur first, a basic question: Did the change address a small (but important) issue, or is the change part of some broader attempt? I ask, because the dialog is rather old and contains some other issues (like the old vertical OK/Cancel/Help design). Am Freitag, den 10.12.2010, 20:31 -0500 schrieb Kohei Yoshida: [...] About UI I'll refer to your (Kohei's) pictures linked in another mail ... And these are the screenshots of the new dialog. Rename unchecked http://people.freedesktop.org/~kohei/sheet-rename-unchecked.png Rename checked http://people.freedesktop.org/~kohei/sheet-rename-checked.png Two main (and somehow rhetorical) questions / remarks: * If the user copies a sheet (several sheets) within the same file, then the new sheets will be renamed anyway. Right? Although the user did not check the Rename checkbox ... -- As far as I understand, we require unique sheet names. The checkbox refers to a user intended name change. * If the user copies a sheet, how will he get aware of the name of the new sheet? -- Currently, people have to finish the operation and then look for the new name. * Let's remove the 'New Name' string as I feel this is redundant. And let' place the rename box either to the immediate right of 'Rename' check box, or immediately below it. I prefer it being to the right of the check box since we have a plenty of space there. Does that mean the aligned to the caption Rename? Would be great. * Instead of hiding the rename box, it's better to disable it when the Rename check box is not checked. We generally don't show or hide controls but enable or disable it. * Let's disable the Rename check box as well as the rename input box when multiple sheets are selected. We don't know what we should do for multiple sheet copy/move rename yet, so I would be more comfortable disabling it in such cases (at least for now). Yep. * I think it would be more user-friendly if the Rename input box showed the default sheet name. When moving a sheet, this would be the original sheet name, while when copying a sheet it would be the original name followed by '_' + num (e.g. Sheet1 - Sheet1_1). Absolutely. [...] All in all, I'm happy with what I see there, so, good work! :-) A small additional question (I may have missed that): What happens, if the user choses a name that is already used in the document? The current (less helpful) reaction within the renaming sheet dialog is another dialog window Invalid sheet name. (Ask any user if he knows what this might mean ... *g*). Let me know if you need any help with any of the above items. I'll CC Christoph in case he has some comments on this feature as well as on my comments above. Christoph, please feel free to add your comments as well if you have any. :-) Concerning my questions above, I do have a proposal - it is meant to be a small iterative step, so please look at it critically ;-) Some assumptions: * limit the number of changes * keep the idea of a common move / copy dialog (I still don't know why this had been introduced ... but at least, it saves another menu item) +-+ | Move / Copy Sheet: $sheetname | +-+ | Action -- + |(o) Move | |( ) Copy | | | | Location and Name --- | |To Document | |[ $documentname (Current Document) |\/] | | | |Insert Before| |+-+ | || Sheet 1 | | || Sheet 2 | | || Sheet 3 | | || (move to end position) | | |+-+ | |