Metallicow wrote: > On Friday, May 9, 2014 3:10:26 AM UTC-6, Peter Otten wrote: >> Metallicow wrote: >> >> > I guess to be more clear here is a small code snippet that shows what >> > is happening more readably. Hence the underscores question. >> >> Working with multiple names with small differences is error-prone. >> You should give a method a name that describes what it does rather than >> when it's invoked: >> >> > class MainAuiManager(aui.AuiManager): >> > def __init__(self, managed_window=None, agwFlags=0) >> > aui.AuiManager.__init__(self, managed_window, agwFlags) >> >> self.Bind(wx.EVT_LEFT_DCLICK, self.EatMagicMushroom) >> self.Bind(wx.EVT_LEFT_DCLICK, self.KillBlueMonster) >> self.Bind(wx.EVT_LEFT_DCLICK, self.SingDitty) > > While readabily counts, in this case it is pretty readable already. > Actions speak loader than words. In this case action(as with QT) is an > event(in wxPython). My actual code would only(realisticly or sanely) > extend this event once per subclass if at all...
You should reconsider Ian's advice to override the method then. [in another post] > I tried the super thing, but in this instance what you posted calls my method twice, which isn't desired. Note that if you have self.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick) in the base class initialiser you must not repeat it in the subclass -- perhaps that is what caused OnLeftDClick() to be invoked twice. > ...Unless there happens > to be some crazy need for more(multiple) event methods to fire off when 1 > event happens. Especially for a class bound intended for a top level > window such as a frame or dialog. > > Anyway, the small snippet just shows that this can be done, but the actual > question you replied to you left unanswered. It is about the trailing > underscores. My implicit answer was that you are asking for the best hammer to drive a screw... > Now would KillBlueMonsterA vs KillBlueMonsterB vs KillBlueMonster_ be any > more descriptive than OnLeftDClick_ which describes the event happening > itself and the code that extends it by 1, in this case the call order. > I could see the underscore as an extension thereof. > ...so maybe OnLeftDClick_Extension_Description_ might be better... > but why the trailing underscores? I do not remember having seen these trailing underscores. Who is using them where? Someone misapplying the (questionable) C++ convention to mark members? > Maybe others that do this normally can chime in as to > why they for example would put the underscores on the end, > if it isn't a common convention. Maybe it is like I see it, as an > extextion of some special meaning or reason therof, but isn't always > obvious as most like the name not only desciptive, but short also. -- https://mail.python.org/mailman/listinfo/python-list