2012/1/18 Igor Stasenko <siguctua@gmail.com>:
On 18 January 2012 08:19, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
Looks to me like HashTableSubclass is crying to get born and usedâ¦
maybe. But definitely not in case of BlockEventHandler. This class, and all of its uses should simply die. Because it is wrong pattern to have pluggable behavior. Every time one may want to introduce new kind of event he should patch this class again and again.. no way :)
P.S. why do people producing such code? Don't they think before doing it, that there are something inherently wrong with such approach? For me there are things, which i will never do, even if paid well for job done. Because they are against my nature.
Ah good lesson of nasal-programming, don't we let such code offend our sense, it just smells too much :) Nicolas
Stef
A BlockEventHandler is xxxxxxxxx.
Instance Variables     allRecipientsBlocOrSelector:       <Object>     clickBlocOrSelector:       <Object>     doubleClickBlocOrSelector:        <Object>     doubleClickTimeoutBlocOrSelector:        <Object>     firstMouseSelectorBlocOrSelector:        <Object>     fixReversedValueMessagesBlocOrSelector:     <Object>     handlesClickOrDragBlocOrSelector:        <Object>     handlesGestureStartBlocOrSelector:        <Object>     handlesKeyboardBlocOrSelector:      <Object>     handlesMouseDownBlocOrSelector:     <Object>     handlesMouseMoveBlocOrSelector:     <Object>     handlesMouseOverBlocOrSelector:     <Object>     handlesMouseOverDraggingBlocOrSelector:     <Object>     handlesMouseStillDownBlocOrSelector:       <Object>     keyStrokeBlocOrSelector:         <Object>     messageListBlocOrSelector:        <Object>     methodRefListBlocOrSelector:       <Object>     mouseDownBlocOrSelector:         <Object>     mouseDownSelectorBlocOrSelector:         <Object>     mouseEnterBlocOrSelector:        <Object>     mouseEnterDraggingBlocOrSelector:        <Object>     mouseLeaveBlocOrSelector:        <Object>     mouseLeaveDraggingBlocOrSelector:        <Object>     mouseMoveBlocOrSelector:         <Object>     mouseStillDownBlocOrSelector:      <Object>     mouseStillDownRecipientBlocOrSelector:      <Object>     mouseStillDownSelectorBlocOrSelector:      <Object>     mouseUpBlocOrSelector:      <Object>     mouseUpSelectorBlocOrSelector:      <Object>     onBlocOrSelector:        <Object>     onGestureSendBlocOrSelector:       <Object>     printOnBlocOrSelector:      <Object>     replaceSendsInBlocOrSelector:      <Object>     sendBlocOrSelector:       <Object>     startDragBlocOrSelector:         <Object>     veryDeepFixupWithBlocOrSelector:         <Object>
-- Best regards, Igor Stasenko.