Recent

Author Topic: Messages works in Linux?  (Read 4316 times)

Borneq

  • Full Member
  • ***
  • Posts: 248
Messages works in Linux?
« on: December 18, 2010, 07:42:46 am »
I am programming visual controls under Windows. I use messages (keyword "message") for example: WM_ERASEBKGND, CM_MOUSELEAVE, WM_SETFOCUS, CM_WANTSPECIALKEY.
I want to make portable code. If Linux use methods with "message" keywords? What instead ? Kylix not use messages, but FreePascal? I head, in Linux are signals, the are similar to messages?
In Kylix I replace:
WM_ERASEBKGND -> WidgetFlags
CM_WANTSPECIALKEY -> NeedKey
WM_SETFOCUS,CM_MOUSELEAVE - can't replace

theo

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1946
Re: Messages works in Linux?
« Reply #1 on: December 18, 2010, 11:17:04 am »
Why not simply overrride
TControl.Mouseleave
TWinControl.SetFocus
?

Leledumbo

  • Hero Member
  • *****
  • Posts: 8836
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Messages works in Linux?
« Reply #2 on: December 18, 2010, 02:22:09 pm »
http://wiki.lazarus.freepascal.org/Code_Conversion_Guide#Major_unit_differences_between_Lazarus_and_Delphi
http://wiki.lazarus.freepascal.org/Lazarus_For_Delphi_Users#Messages_.2F_Events
Since AFAIK not (yet) all WM_* have LM_* equivalent, I suggest doing what Theo says. As long as there's already desired method available, override it instead.

 

TinyPortal © 2005-2018