bool wxButton::OS2Command(WXUINT uParam, WXWORD WXUNUSED(wId)) { bool bProcessed = false; switch (uParam) { case BN_CLICKED: // normal buttons send this case BN_DBLCLICKED: // owner-drawn ones also send this bProcessed = SendClickEvent(); break; } return bProcessed; } // end of wxButton::OS2Command
bool wxButton::MSWCommand(WXUINT param, WXWORD WXUNUSED(id)) { bool processed = false; switch ( param ) { // NOTE: Currently all versions of Windows send two BN_CLICKED messages // for all button types, so we don't catch BN_DOUBLECLICKED // in order to not get 3 EVT_BUTTON events. If this is a problem // then we need to figure out which version of the comctl32 changed // this behaviour and test for it. case 1: // message came from an accelerator case BN_CLICKED: // normal buttons send this processed = SendClickEvent(); break; } return processed; }
bool wxButton::MSWCommand(WXUINT param, WXWORD WXUNUSED(id)) { bool processed = false; switch ( param ) { // NOTE: Apparently older versions (NT 4?) of the common controls send // BN_DOUBLECLICKED but not a second BN_CLICKED for owner-drawn // buttons, so in order to send two EVT_BUTTON events we should // catch both types. Currently (Feb 2003) up-to-date versions of // win98, win2k and winXP all send two BN_CLICKED messages for // all button types, so we don't catch BN_DOUBLECLICKED anymore // in order to not get 3 EVT_BUTTON events. If this is a problem // then we need to figure out which version of the comctl32 changed // this behaviour and test for it. case 1: // message came from an accelerator case BN_CLICKED: // normal buttons send this processed = SendClickEvent(); break; } return processed; }