SourceSafe Square Radio Buttons



  • Ha ha, I was totally using SourceSafe and I was completely one with it... I wasn't getting any weird multiple-choice message boxes... the VPN was totally staying up... and, for once, nobody was distracting me with stupid questions about their 8@\/-a55 programs.. the Zen was eerie, perhaps too eerie.

    And then, I discovered something funny. SourceSafe uses square radio buttons. That is, it has mutually exclusive check boxes. This happens basically any time you check in a file; "Remove Local Copy" and "Keep Checked Out" are mutually exclusive.

    I quickly wrapped up my check-in, which was intented to properly set bit 37 of the whiffle-snaffle structure regardless of the state of EnterpriseBaseClass.CurrentStatic. This would finally bring our codebase into compliance with Recommended Standard 485- even on diskless workstations. Somewhere, Charles Simonyi howled. And yet I feel truculent that perhaps there is some kind of problem!

    Is this a WTF? My friend said that because it is also possible to leave both checkboxes un-checked, and that this constitutes a third state, for which it would be hard to think up a name. So the GUI they provided is actually correct, in a very unique way.

     



  • What would the third state possibly be? 



  • To uncheckout the files and to not remove them at the same time, silly.
    Or in simpler terms, to do an export, removing source control data.



  • @henke37 said:

    To uncheckout the files and to not remove them at the same time, silly. Or in simpler terms, to do an export, removing source control data.

    Ah, gotcha.  I didn't realize "Keep Checked Out" meant "Retain Source Control Metadata".  Thanks! 



  •  Surely it should be "Keep Checked Out?"

    • Yes
    • No
    • File Not Found
     


  • I fail at seeing the wtf, or even the mild funzor. Many are the times when an option here precludes an option there. I'm sure you've encountered these types of situations in reality.

    However, you score effort points for using the word "truculent".



  • A very old web page about UI design, that I still find informative although the examples are old, is available here. This very problem is adressed in this section. Something like this page should be mandatory reading for all developers, I think...

     


  • Discourse touched me in a no-no place

    @dhromed said:

    I fail at seeing the wtf
    I'm guessing it's the use of checkboxes that try to pretend to act like radio buttons, instead of radio buttons with a 'none of the above' option.



  • @boh said:

    This very problem is adressed in this section.
     

    That would be nice if it was that very problem, which is it not, given that "neither" is a valid option, which is not expressed by a radio group. It merely looks like that very problem, because there are only two checkboxes, and they happen to be mutually exclusive.



  • @PJH said:

    a 'none of the above' option.
     

    The two VSS options are not semantically related like say {red, green, blue} or {car, horse, moped, bike}, therefore "none of the above"is not applicable.

    I agree a little on how funny it looks, and I think the solution to the funniness is disabling one when the other is checked.



  • @dhromed said:

    I agree a little on how funny it looks, and I think the solution to the funniness is disabling one when the other is checked.
    "You've made your choice. No turning back now! Buahahaha!"



  • @dhromed said:

    That would be nice if it was that very problem, which is it not, given that "neither" is a valid option, which is not expressed by a radio group. It merely looks like that very problem, because there are only two checkboxes, and they happen to be mutually exclusive.

     

    But it's not obvious what the "neither" option actually does.  I'm still not sure I get it (subversion doesn't foist this type of choice on me).  Instead of two mutually exclusive checkboxes, why not have three radio buttons?

    - Remove local copy
    - Remove SourceSafe data only
    - Stay checked out





  • @bridget99 said:

    My friend said that because it is also possible to leave both checkboxes un-checked, and that this constitutes a third state, for which it would be hard to think up a name. So the GUI they provided is actually correct, in a very unique way.
    I dunno, why not just make the options with radio buttons and add a checkbox for the "no change" or whatever option. Or like another poster said, add another radio button like "none of the above". I might make a similar design in certain situations but I wanted to point out that the functionality of radio buttons+checkboxes are enough to implement any workflow.





  •  @hvm said:

    @bridget99 said:

    My friend said that because it is also possible to leave both checkboxes un-checked, and that this constitutes a third state, for which it would be hard to think up a name. So the GUI they provided is actually correct, in a very unique way.
    I dunno, why not just make the options with radio buttons and add a checkbox for the "no change" or whatever option. Or like another poster said, add another radio button like "none of the above". I might make a similar design in certain situations but I wanted to point out that the functionality of radio buttons+checkboxes are enough to implement any workflow.

     

    What about twenty options, and the user is supposed to pick five of them?

     You'd need a lot of Radiobuttons for that.



  • @fourchan said:

     @hvm said:

    @bridget99 said:

    My friend said that because it is also possible to leave both checkboxes un-checked, and that this constitutes a third state, for which it would be hard to think up a name. So the GUI they provided is actually correct, in a very unique way.
    I dunno, why not just make the options with radio buttons and add a checkbox for the "no change" or whatever option. Or like another poster said, add another radio button like "none of the above". I might make a similar design in certain situations but I wanted to point out that the functionality of radio buttons+checkboxes are enough to implement any workflow.

     

    What about twenty options, and the user is supposed to pick five of them?

     You'd need a lot of Radiobuttons for that.

    If the options are not mutually-exclusive, then checkboxes work fine.  Mutually-exclusive options should generally be done as radio sets.  Your point is retarded.



  •  @morbiuswilters said:

    @fourchan said:

     @hvm said:

    @bridget99 said:

    My friend said that because it is also possible to leave both checkboxes un-checked, and that this constitutes a third state, for which it would be hard to think up a name. So the GUI they provided is actually correct, in a very unique way.
    I dunno, why not just make the options with radio buttons and add a checkbox for the "no change" or whatever option. Or like another poster said, add another radio button like "none of the above". I might make a similar design in certain situations but I wanted to point out that the functionality of radio buttons+checkboxes are enough to implement any workflow.

     

    What about twenty options, and the user is supposed to pick five of them?

     You'd need a lot of Radiobuttons for that.

    If the options are not mutually-exclusive, then checkboxes work fine.  Mutually-exclusive options should generally be done as radio sets.  Your point is retarded.

     

    They are exclusive. Option A excludes option B if e.g. options C,D and E are already checked.

    Radiosets are for the special "Pick one out of n"-case. Checkboxes are for the "Pick between zero and n out of n"-case. My case is somewhere inbetween and can't be represented very well by either of the controls (well, you could make a "radio-grid").

    This is in answer to "but I wanted to point out that the functionality of radio buttons+checkboxes are enough to implement any workflow.", btw.


  • Discourse touched me in a no-no place

    @fourchan said:

    What about twenty options, and the user is supposed to pick five of them?

     You'd need a lot of Radiobuttons for that.

    You wouldn't use radio buttons for that, you'd use checkboxes (dynamically disabling any that end up being mutually exclusive to options already selected.)



  • @me said:

    "You've made your choice. No turning back now! Buahahaha!"
    After reading PJH's post and re-thinking this again, it occurred to me that you can actually uncheck checkboxes, unlike radio buttons. So yeah, disabling the other options is a reasonable, if not optimal, solution.



  • @fourchan said:

    I wonder whether this would still work on 1TB drives
    What the fuck is the relevance of this link to the conversation?



  • @Zecc said:

    @me said:

    "You've made your choice. No turning back now! Buahahaha!"
    After reading PJH's post and re-thinking this again, it occurred to me that you can actually uncheck checkboxes, unlike radio buttons. So yeah, disabling the other options is a reasonable, if not optimal, solution.

    Yes, but if you only have two options, then it's not that onerous to make a third option of 'neither' and use a radio button.  And then it works like people expect.



  • @tgape said:

    Yes, but if you only have two options, then it's not that onerous to make a third option of 'neither' and use a radio button.  And then it works like people expect.
    True, and I completely agree. I was refering to the "pick n out of N" scenario, actually.

    But for what is worth, I don't agree with what they say here about using radio buttons in the font dialog of Word 97. Using Radio buttons for subscript/superscript, for example, would imply that choosing one of the two options was mandatory. Polluting the form with "Neither" options is... well... not a good option.

    Besides, if you were to have a form with a bunch of radio buttons pairs, you'd have to use frames or some other visually cluttering way to indicate the mutually exclusive ones [1].

    [1] Actually, now that I'm putting some real thought about this, I think I'd use the checkboxes as they are, but add some thin left square brackets as a hint for the mutually exclusive ones



  • @belgariontheking said:

    @fourchan said:

    I wonder whether this would still work on 1TB drives
    What the fuck is the relevance of this link to the conversation?

    When is random, anti-Microsoft trolling not relevent?


Log in to reply