I'm all for it. In fact, I personally would take it further and ban smoking in public completely. If it's illegal to have an open container of alcohol in public, which isn't harming anyone, then they should do it with cigarettes. I know they do it for alcohol, so that we don't have people drunk all over the place, and continue to drink in public when drunk. But it's not fair for some people out there who want to have a casual beer or two while fishing or relaxing at a park/beach or whatever.
At least with alcohol, if someone chooses to litter their cans or bottles, it is worth 10c each and therefore it gets picked up by people collecting them (provided of course it's clearly visible and accessible in a busy enough area). Especially downtown. But cigarette butts, are strewn all over the ground everywhere, it's disgusting and an eyesore.
Nothing is more maddening than having someone walking in front of you on a busy sidewalk smoking, and then everyone behind them and around them have to breath that **** in. It's extremely offending and a health hazard. Even if there's someone smoking in the car in front of you, while your driving, or next to you at a light. That smoke and smell finds its way into your car. At least if someone chooses to engage in a bad and dangerous-for-health habit, then go ahead, but don't subject other people around you to it.
Those smoke cabins are a good idea. The 2nd photo with the guy standing alone in there is actually funny. It ends up putting smokers on display, and rather humiliated, somewhat like a caged animal at the zoo.