Opened 9 years ago
Closed 9 years ago
#29 closed enhancement (fixed)
Mouse pointer shape changing for Qt and SDL frontends
Reported by: | Valery V. Sedletski | Owned by: | Valery V. Sedletski |
---|---|---|---|
Priority: | minor | Milestone: | preview |
Component: | Frontends | Keywords: | mouse pointer integration shape |
Cc: |
Description (last modified by )
For mouse pointer integration, it's needed to implement changing of mouse pointer shape when crossing the VM window boundaries, between OS/2 and guest OS.
Attachments (1)
Change History (9)
comment:1 by , 9 years ago
Description: | modified (diff) |
---|
comment:3 by , 9 years ago
Milestone: | Enhanced → preview |
---|
comment:5 by , 9 years ago
Ok, looks nice, but here are my comments:
- For <os2.h>, please use generic statements:
#define INCL_DOS #define INCL_PM #define INCL_GPI
this will save us from most troubles when <os2.h> is multiply included. This is a general rule, not only for this particular source.
- Please remove commented pieces of code (unless they are absolutely necessary to keep them — in which case please add a verbose comment on why it is necessary). As I see these are debug statements. If you really think it makes sense to leave them, please consider using LogFlow and friends. In rare cases (if some debugging needs months etc.) you may leave pure debug stuff surrounded by defines like
#ifdef DEBUG_myname
(search forDEBUG_andy
, for instance). But this is should not normally be necessary.
When the above is fixed, you may commit this patch.
comment:7 by , 9 years ago
Owner: | set to |
---|---|
Status: | new → accepted |
comment:8 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Note:
See TracTickets
for help on using tickets.
The code is implemented (it is almost the same for Qt4 and SDL). It is working, tested successfully with WinXP guest, but did not yet committed. Also, implemented the pointer shrinking (the WinXP pointers with transparency are 48x48, but OS/2 mouse pointers should be not more than 32x32). For scaling/shrinking, linear interpolation is used (thanks to Yagiza for suggestion). For mouse pointers with alpha channel, I used alpha channel to AND mask conversion. The resulted pointers look nice. Also, animated Win7/Vista pointers are tested successfully. Animation just changes the mouse pointer many times per second. For that, a WinXP with some Win7/Vista enhancements ported, was used. The code is to be committed soon.