Changeset 108


Ignore:
Timestamp:
Aug 12, 2009, 10:18:10 PM (16 years ago)
Author:
Dmitry A. Kuminov
Message:

gui: Added mouse event translation, various message handling.

Location:
trunk/src/gui/kernel
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gui/kernel/qapplication_pm.cpp

    r100 r108  
    5151#include "qcolormap.h"
    5252#include "qpixmapcache.h"
     53
    5354
    5455#include "qset.h"
     
    6869static HWND      curWin         = 0;            // current window
    6970static HPS       displayPS      = 0;            // display presentation space
     71
     72
     73
     74
     75
     76
     77
     78
     79
    7080
    7181static bool replayPopupMouseEvent = false; // replay handling when popups close
     
    8292extern QDesktopWidget *qt_desktopWidget;
    8393static QPointer<QWidget> popupButtonFocus;
    84 static bool     qt_try_modal(QWidget *, QMSG *, int& ret);
     94static bool     qt_try_modal(QWidget);
    8595
    8696QWidget *qt_button_down = 0; // widget got last button-down
     
    8898
    8999static HWND autoCaptureWnd = NULLHANDLE;
     100
    90101static void setAutoCapture(HWND); // automatic capture
    91102static void releaseAutoCapture();
     
    107118//  QWidgetPrivate *dptr() { return d_func(); }
    108119//  QRect frameStrut() const { return d_func()->frameStrut(); }
    109 //  bool        winEvent(QMSG *m, long *r) { return QWidget::winEvent(m, r); }
     120Event(m, r); }
    110121//  void        markFrameStrutDirty() { data->fstrut_dirty = 1; }
    111 //  bool        translateMouseEvent(const MSG &msg);
    112 //  bool        translateWheelEvent(const MSG &msg);
    113 //  bool        translatePaintEvent(const MSG &msg);
     122    bool        translateMouseEvent(const QMSG &qmsg);
     123#ifndef QT_NO_WHEELEVENT
     124    bool        translateWheelEvent(const QMSG &qmsg);
     125#endif
     126    bool        translatePaintEvent(const QMSG &qmsg);
    114127//  bool        translateConfigEvent(const MSG &msg);
    115128//  bool        translateCloseEvent(const MSG &msg);
     
    254267class QGuiEventDispatcherPM : public QEventDispatcherPM
    255268{
    256     Q_DECLARE_PRIVATE(QEventDispatcherPM)
    257269public:
    258270    QGuiEventDispatcherPM(QObject *parent = 0);
     
    424436MRESULT EXPENTRY QtWndProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
    425437{
    426     // message handling indicators: if handled is true at the end of message
    427     // processing, no default window proc is called but rc is returned.
    428     bool handled = false;
    429     MRESULT rc = (MRESULT) FALSE;
    430     QETWidget *widget = 0;
    431     HWND hwndC = NULLHANDLE;
    432 
    433438    do {
     439
     440
     441
     442
     443
     444
     445
     446
     447
     448
     449
     450
     451
     452
     453
     454
     455
     456
     457
     458
     459
     460
     461
     462
     463
     464
     465
     466
     467
     468
     469
     470
     471
     472
     473
     474
     475
     476
     477
     478
     479
     480
     481
     482
     483
     484
     485
     486
     487
     488
     489
     490
     491
     492
     493
     494
     495
     496
     497
     498
     499
     500
     501
     502
     503
     504
     505
     506
     507
     508
     509
     510
     511
     512
     513
     514
     515
     516
     517
     518
     519
     520
     521
     522
     523
     524
     525
     526
     527
     528
     529
     530
     531
     532
     533
     534
     535
     536
     537
     538
     539
     540
     541
     542
     543
     544
     545
     546
     547
     548
     549
     550
     551
     552
     553
     554
     555
     556
     557
     558
     559
     560
     561
     562
     563
     564
     565
     566
     567
     568
     569
     570
     571
     572
     573
     574
     575
     576
     577
     578
     579
     580
     581
     582
     583
     584
     585
     586
     587
     588
     589
     590
     591
     592
     593
    434594        switch(msg) {
    435595        default:
    436596            break;
    437597        }
    438         if (handled)
    439             return rc;
    440     } while(0);
    441 
    442     return WinDefWindowProc(hwnd, msg, mp1, mp2);
    443 }
    444 
    445 PFNWP QtOldFrameProc = 0;
    446 
    447 MRESULT EXPENTRY QtFrameProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
    448 {
    449     // message handling indicators: if handled is true at the end of message
    450     // processing, no default window proc is called but rc is returned.
    451     bool handled = false;
    452     MRESULT rc = (MRESULT) FALSE;
    453     QETWidget *widget = 0;
    454     HWND hwndC = NULLHANDLE;
    455 
    456     do {
    457         switch(msg) {
    458         default:
    459             break;
    460         }
    461         if (handled)
    462             return rc;
    463598    } while(0);
    464599
     
    499634}
    500635
     636
     637
     638
     639
     640
     641
    501642/*****************************************************************************
    502643  Popup widget mechanism
     
    527668 *****************************************************************************/
    528669
     670
     671
     672
     673
     674
     675
     676
     677
     678
     679
     680
     681
     682
     683
     684
     685
     686
     687
     688
     689
     690
     691
     692
     693
     694
     695
     696
     697
     698
     699
     700
     701
     702
     703
     704
     705
     706
     707
     708
     709
     710
     711
     712
     713
     714
     715
     716
     717
     718
     719
     720
     721
     722
     723
     724
     725
     726
     727
     728
     729
     730
     731
     732
     733
     734
     735
     736
     737
     738
     739
     740
     741
     742
     743
     744
     745
     746
     747
     748
     749
     750
     751
     752
     753
     754
     755
     756
     757
     758
     759
     760
     761
     762
     763
     764
     765
     766
     767
     768
     769
     770
     771
     772
     773
     774
     775
     776
     777
     778
     779
     780
     781
     782
     783
     784
     785
     786
     787
     788
     789
     790
     791
     792
     793
     794
     795
     796
     797
     798
     799
     800
     801
     802
     803
     804
     805
     806
     807
     808
     809
     810
     811
     812
     813
     814
     815
     816
     817
     818
     819
     820
     821
     822
     823
     824
     825
     826
     827
     828
     829
     830
     831
     832
     833
     834
     835
     836
     837
     838
     839
     840
     841
     842
     843
     844
     845
     846
     847
     848
     849
     850
     851
     852
     853
     854
     855
     856
     857
     858
     859
     860
     861
     862
     863
     864
     865
     866
     867
     868
     869
     870
     871
     872
     873
     874
     875
     876
     877
     878
     879
     880
     881
     882
     883
     884
     885
     886
     887
     888
     889
     890
     891
     892
     893
     894
     895
     896
     897
     898
     899
     900
     901
     902
     903
     904
     905
     906
     907
     908
     909
     910
     911
     912
     913
     914
     915
     916
     917
     918
     919
     920
     921
     922
     923
     924
     925
     926
     927
     928
     929
     930
     931
     932
     933
     934
     935
     936
     937
     938
     939
     940
     941
     942
     943
     944
     945
     946
     947
     948
     949
     950
     951
     952
     953
     954
     955
     956
     957
     958
     959
     960
     961
     962
     963
     964
     965
     966
     967
     968
     969
     970
     971
     972
     973
     974
     975
     976
     977
     978
     979
     980
     981
     982
     983
     984
     985
     986
     987
     988
     989
     990
     991
     992
     993
     994
     995
     996
     997
     998
     999
     1000
     1001
     1002
     1003
     1004
     1005
     1006
     1007
     1008
     1009
     1010
     1011
     1012
     1013
     1014
     1015
     1016
     1017
     1018
     1019
     1020
     1021
     1022
     1023
     1024
     1025
     1026
     1027
     1028
     1029
     1030
     1031
     1032
     1033
     1034
     1035
     1036
     1037
     1038
     1039
     1040
     1041
     1042
     1043
     1044
     1045
     1046
     1047
     1048
     1049
     1050
     1051
     1052
     1053
     1054
     1055
     1056
     1057
     1058
     1059
     1060
     1061
     1062
     1063
     1064
     1065
     1066
     1067
     1068
     1069
     1070
     1071
     1072
     1073
     1074
     1075
     1076
     1077
     1078
     1079
     1080
     1081
     1082
     1083
     1084
     1085
     1086
     1087
     1088
     1089
     1090
     1091
     1092
     1093
     1094
     1095
     1096
     1097
     1098
     1099
     1100
     1101
     1102
     1103
     1104
     1105
     1106
     1107
     1108
     1109
     1110
     1111
     1112
     1113
     1114
     1115
     1116
     1117
     1118
     1119
     1120
     1121
     1122
     1123
     1124
     1125
     1126
     1127
     1128
     1129
     1130
     1131
     1132
     1133
     1134
     1135
     1136
     1137
     1138
     1139
     1140
     1141
     1142
     1143
     1144
     1145
     1146
     1147
     1148
     1149
     1150
     1151
     1152
     1153
     1154
     1155
     1156
     1157
     1158
     1159
     1160
     1161
     1162
     1163
     1164
     1165
     1166
     1167
     1168
     1169
     1170
     1171
     1172
     1173
     1174
     1175
     1176
     1177
     1178
     1179
     1180
     1181
     1182
     1183
     1184
     1185
     1186
     1187
     1188
     1189
     1190
     1191
     1192
     1193
     1194
     1195
     1196
     1197
     1198
     1199
     1200
     1201
     1202
     1203
     1204
     1205
     1206
     1207
     1208
     1209
     1210
     1211
     1212
     1213
     1214
     1215
     1216
     1217
     1218
     1219
     1220
     1221
     1222
     1223
     1224
     1225
     1226
     1227
     1228
     1229
     1230
     1231
     1232
     1233
     1234
     1235
     1236
     1237
     1238
     1239
     1240
     1241
     1242
     1243
     1244
     1245
     1246
    5291247QT_END_NAMESPACE
  • trunk/src/gui/kernel/qcursor.h

    r2 r108  
    115115    HCURSOR handle() const;
    116116    QCursor(HCURSOR cursor);
     117
     118
     119
    117120#elif defined(Q_WS_X11)
    118121    Qt::HANDLE handle() const;
  • trunk/src/gui/kernel/qcursor_p.h

    r2 r108  
    9393#if defined (Q_WS_WIN)
    9494    HCURSOR hcurs;
     95
     96
    9597#elif defined (Q_WS_X11)
    9698    XColor fg, bg;
  • trunk/src/gui/kernel/qcursor_pm.cpp

    r95 r108  
    6060
    6161QCursorData::QCursorData(Qt::CursorShape s)
    62   : cshape(s), bm(0), bmm(0), hx(0), hy(0) // @todo, hcurs(0)
     62  : cshape(s), bm(0), bmm(0), hx(0), hy(0))
    6363{
    6464    ref = 1;
     
    7979    // @todo implement
    8080    return 0;
     81
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
     93
     94
     95
    8196}
    8297
  • trunk/src/gui/kernel/qwidget_pm.cpp

    r106 r108  
    857857
    858858    if (flags & Qt::WindowTitleHint) {
    859         title = topLevel ? qAppName().toLocal8Bit() : q->objectName().toLocal8Bit();
     859        QString t = topLevel ? qAppName() : q->objectName();
     860        t = t.left(1).toUpper() + t.mid(1).toLower();
     861        title = t.toLocal8Bit();
    860862    }
    861863
     
    11861188}
    11871189
     1190
     1191
     1192
     1193
     1194
    11881195void QWidget::grabMouse()
    11891196{
  • trunk/src/gui/kernel/qwindowdefs_pm.h

    r100 r108  
    5959typedef LHANDLE HWND;
    6060typedef LHANDLE HPS;
     61
    6162typedef struct _QMSG QMSG;
    6263typedef void *MRESULT;
Note: See TracChangeset for help on using the changeset viewer.