Changeset 561 for trunk/src/activeqt
- Timestamp:
- Feb 11, 2010, 11:19:06 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 28 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
-
Property svn:mergeinfo
set to (toggle deleted branches)
/branches/vendor/nokia/qt/4.6.1 merged eligible /branches/vendor/nokia/qt/current merged eligible /branches/vendor/trolltech/qt/current 3-149
-
Property svn:mergeinfo
set to (toggle deleted branches)
-
trunk/src/activeqt/container/container.pro
r2 r561 22 22 win32-g++:LIBS += -luuid 23 23 24 contains(QT_EDITION, OpenSource|Console) { 25 message( "You are not licensed to use ActiveQt." ) 26 } else { 27 HEADERS = ../control/qaxaggregated.h \ 28 qaxbase.h \ 29 qaxwidget.h \ 30 qaxobject.h \ 31 qaxscript.h \ 32 qaxselect.h \ 33 ../shared/qaxtypes.h 24 HEADERS = ../control/qaxaggregated.h \ 25 qaxbase.h \ 26 qaxwidget.h \ 27 qaxobject.h \ 28 qaxscript.h \ 29 qaxselect.h \ 30 ../shared/qaxtypes.h 34 31 35 SOURCES =qaxbase.cpp \36 37 38 39 40 41 42 32 SOURCES = qaxbase.cpp \ 33 qaxdump.cpp \ 34 qaxwidget.cpp \ 35 qaxobject.cpp \ 36 qaxscript.cpp \ 37 qaxscriptwrapper.cpp \ 38 qaxselect.cpp \ 39 ../shared/qaxtypes.cpp 43 40 44 FORMS = qaxselect.ui 45 } 41 FORMS = qaxselect.ui -
trunk/src/activeqt/container/qaxbase.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 40 41 //#define QAX_NO_CLASSINFO 41 42 42 #ifndef UNICODE43 #define UNICODE44 #endif45 46 43 #define QT_CHECK_STATE 47 44 … … 175 172 // get the Dispatch ID from the object 176 173 QString unicodeName = QLatin1String(name); 177 OLECHAR *names = ( TCHAR*)unicodeName.utf16();174 OLECHAR *names = (wchar_t*)unicodeName.utf16(); 178 175 disp->GetIDsOfNames(IID_NULL, &names, 1, LOCALE_USER_DEFAULT, &dispid); 179 176 if (dispid != DISPID_UNKNOWN) … … 422 419 } else { 423 420 argv[p + 1] = const_cast<void*>(varp[p + 1].constData()); 424 if (ptype.endsWith( "*")) {421 if (ptype.endsWith('*')) { 425 422 argv_pointer[p + 1] = argv[p + 1]; 426 423 argv[p + 1] = argv_pointer + p + 1; … … 639 636 typeinfo->GetNames(dispID, &names, 1, &cNames); 640 637 if (cNames) { 641 propname = QString::from Utf16((const ushort *)names).toLatin1();638 propname = QString::fromWCharArray(names).toLatin1(); 642 639 SysFreeString(names); 643 640 } … … 649 646 const QMetaProperty prop = mo->property(index); 650 647 propsignal += prop.typeName(); 651 propsignal += ")";648 propsignal += ')'; 652 649 addProperty(dispID, propname, propsignal); 653 650 … … 913 910 \brief the name of the COM object wrapped by this QAxBase object. 914 911 915 Setting this property initi lializes the COM object. Any COM object912 Setting this property initializes the COM object. Any COM object 916 913 previously set is shut down. 917 914 … … 973 970 if (uuid.isNull()) { 974 971 CLSID clsid; 975 HRESULT res = CLSIDFromProgID(( WCHAR*)c.utf16(), &clsid);972 HRESULT res = CLSIDFromProgID((wchar_t*)c.utf16(), &clsid); 976 973 if (res == S_OK) 977 974 search = QUuid(clsid).toString(); … … 1138 1135 if (!verb.lpszVerbName) 1139 1136 continue; 1140 QString verbName = QString::from Utf16((const ushort *)verb.lpszVerbName);1137 QString verbName = QString::fromWCharArray(verb.lpszVerbName); 1141 1138 if (!verbName.isEmpty()) 1142 1139 d->verbs.insert(verbName, verb.lVerb); … … 1266 1263 BSTR licenseKey; 1267 1264 factory2->RequestLicKey(0, &licenseKey); 1268 QString qlicenseKey = QString::from Utf16((const ushort *)licenseKey);1265 QString qlicenseKey = QString::fromWCharArray(licenseKey); 1269 1266 SysFreeString(licenseKey); 1270 1267 qWarning("Use license key is '%s' to create object on unlicensed machine.", … … 1276 1273 BSTR licenseKey; 1277 1274 factory2->RequestLicKey(0, &licenseKey); 1278 QString qlicenseKey = QString::from Utf16((const ushort *)licenseKey);1275 QString qlicenseKey = QString::fromWCharArray(licenseKey); 1279 1276 SysFreeString(licenseKey); 1280 1277 … … 1436 1433 serverInfo.dwReserved2 = 0; 1437 1434 serverInfo.pAuthInfo = &authInfo; 1438 serverInfo.pwszName = ( WCHAR*)server.utf16();1435 serverInfo.pwszName = (wchar_t*)server.utf16(); 1439 1436 1440 1437 IClassFactory *factory = 0; … … 1661 1658 void addProperty(const QByteArray &type, const QByteArray &name, uint flags) 1662 1659 { 1660 QByteArray propertyType(type); 1661 if (propertyType.endsWith('&')) 1662 propertyType.chop(1); 1663 1663 1664 Property &prop = property_list[name]; 1664 if (! type.isEmpty() && type != "HRESULT") {1665 prop.type = replaceType( type);1666 if (prop.type != type)1667 prop.realType = type;1665 if (!propertyType.isEmpty() && propertyType != "HRESULT") { 1666 prop.type = replaceType(propertyType); 1667 if (prop.type != propertyType) 1668 prop.realType = propertyType; 1668 1669 } 1669 1670 if (flags & Writable) … … 1744 1745 return 0; 1745 1746 1746 className = QString::from Utf16((const ushort *)bstr);1747 className = QString::fromWCharArray(bstr); 1747 1748 SysFreeString(bstr); 1748 1749 … … 1765 1766 return 0; 1766 1767 1767 className = QString::from Utf16((const ushort *)bstr);1768 className = QString::fromWCharArray(bstr); 1768 1769 SysFreeString(bstr); 1769 1770 … … 1792 1793 1793 1794 interfaceInfo->GetDocumentation(-1, &bstr, 0, 0, 0); 1794 QString interfaceName = QString::from Utf16((const ushort *)bstr);1795 QString interfaceName = QString::fromWCharArray(bstr); 1795 1796 SysFreeString(bstr); 1796 1797 QByteArray key; … … 1840 1841 BSTR bstr; 1841 1842 typelib->GetDocumentation(-1, &bstr, 0, 0, 0); 1842 current_typelib = QString::from Utf16((const ushort *)bstr).toLatin1();1843 current_typelib = QString::fromWCharArray(bstr).toLatin1(); 1843 1844 SysFreeString(bstr); 1844 1845 } … … 1888 1889 BSTR typelibname = 0; 1889 1890 usertypelib->GetDocumentation(-1, &typelibname, 0, 0, 0); 1890 QByteArray typeLibName = QString::from Utf16((const ushort *)typelibname).toLatin1();1891 QByteArray typeLibName = QString::fromWCharArray(typelibname).toLatin1(); 1891 1892 SysFreeString(typelibname); 1892 1893 … … 1894 1895 BSTR usertypename = 0; 1895 1896 usertypelib->GetDocumentation(index, &usertypename, 0, 0, 0); 1896 QByteArray userTypeName = QString::from Utf16((const ushort *)usertypename).toLatin1();1897 QByteArray userTypeName = QString::fromWCharArray(usertypename).toLatin1(); 1897 1898 SysFreeString(usertypename); 1898 1899 … … 2043 2044 case VT_UINT: 2044 2045 case VT_CY: 2045 str += "&";2046 str += '&'; 2046 2047 break; 2047 2048 case VT_PTR: 2048 2049 if (str == "QFont" || str == "QPixmap") { 2049 str += "&";2050 str += '&'; 2050 2051 break; 2051 2052 } else if (str == "void*") { … … 2056 2057 default: 2057 2058 if (str == "QColor") 2058 str += "&";2059 str += '&'; 2059 2060 else if (str == "QDateTime") 2060 str += "&";2061 str += '&'; 2061 2062 else if (str == "QVariantList") 2062 str += "&";2063 str += '&'; 2063 2064 else if (str == "QByteArray") 2064 str += "&";2065 str += '&'; 2065 2066 else if (str == "QStringList") 2066 str += "&";2067 str += '&'; 2067 2068 else if (!str.isEmpty() && hasEnum(str)) 2068 str += "&";2069 str += '&'; 2069 2070 else if (!str.isEmpty() && str != "QFont" && str != "QPixmap" && str != "QVariant") 2070 str += "*";2071 str += '*'; 2071 2072 } 2072 2073 break; … … 2086 2087 str = guessTypes(tdesc.lpadesc->tdescElem, info, function); 2087 2088 if (!str.isEmpty()) 2088 str = "QList<" + str + ">";2089 str = "QList<" + str + '>'; 2089 2090 break; 2090 2091 } … … 2094 2095 if (!str.isEmpty()) { 2095 2096 for (int index = 0; index < tdesc.lpadesc->cDims; ++index) 2096 str += "[" + QByteArray::number((int)tdesc.lpadesc->rgbounds[index].cElements) + "]";2097 str += '[' + QByteArray::number((int)tdesc.lpadesc->rgbounds[index].cElements) + ']'; 2097 2098 } 2098 2099 break; … … 2111 2112 2112 2113 if (tdesc.vt & VT_BYREF) 2113 str += "&";2114 str += '&'; 2114 2115 2115 2116 str.replace("&*", "**"); … … 2138 2139 QString coClassIDstr = iidnames.value(QLatin1String("/CLSID/") + coClassID + QLatin1String("/Default"), coClassID).toString(); 2139 2140 addClassInfo("CoClass", coClassIDstr.isEmpty() ? coClassID.toLatin1() : coClassIDstr.toLatin1()); 2140 QByteArray version = QByteArray::number(typeattr->wMajorVerNum) + "."+ QByteArray::number(typeattr->wMinorVerNum);2141 QByteArray version = QByteArray::number(typeattr->wMajorVerNum) + '.' + QByteArray::number(typeattr->wMinorVerNum); 2141 2142 if (version != "0.0") 2142 2143 addClassInfo("Version", version); … … 2171 2172 QString version = *vit; 2172 2173 ++vit; 2173 tlfile = controls.value(QLatin1 String("/") + version + QLatin1String("/0/win32/.")).toString();2174 tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win32/.")).toString(); 2174 2175 } 2175 2176 controls.endGroup(); … … 2284 2285 QByteArray enumName; 2285 2286 if (typelib->GetDocumentation(i, &enumname, 0, 0, 0) == S_OK) { 2286 enumName = QString::from Utf16((const ushort *)enumname).toLatin1();2287 enumName = QString::fromWCharArray(enumname).toLatin1(); 2287 2288 SysFreeString(enumname); 2288 2289 } else { … … 2307 2308 enuminfo->GetNames(memid, &valuename, 1, &maxNamesOut); 2308 2309 if (maxNamesOut) { 2309 valueName = QString::from Utf16((const ushort *)valuename).toLatin1();2310 valueName = QString::fromWCharArray(valuename).toLatin1(); 2310 2311 SysFreeString(valuename); 2311 2312 } else { … … 2344 2345 QByteArray signalName(function); 2345 2346 signalName += "Changed"; 2346 QByteArray signalProto = signalName + "(" + replaceType(type) + ")";2347 QByteArray signalProto = signalName + '(' + replaceType(type) + ')'; 2347 2348 if (!hasSignal(signalProto)) 2348 2349 addSignal(signalProto, function); … … 2361 2362 prototype[0] = toupper(prototype[0]); 2362 2363 } 2363 prototype = set + prototype + "(" + propertyType(property) + ")";2364 prototype = set + prototype + '(' + propertyType(property) + ')'; 2364 2365 if (!hasSlot(prototype)) 2365 2366 addSlot(0, prototype, property); … … 2378 2379 } 2379 2380 2380 prototype = function + "(";2381 prototype = function + '('; 2381 2382 if (funcdesc->invkind == INVOKE_FUNC && type == hresult) 2382 2383 type = 0; … … 2392 2393 QByteArray ptype = guessTypes(tdesc, typeinfo, function); 2393 2394 if (pdesc.wParamFlags & PARAMFLAG_FRETVAL) { 2394 if (ptype.endsWith( "&")) {2395 if (ptype.endsWith('&')) { 2395 2396 ptype.truncate(ptype.length() - 1); 2396 2397 } else if (ptype.endsWith("**")) { … … 2400 2401 } else { 2401 2402 prototype += ptype; 2402 if (pdesc.wParamFlags & PARAMFLAG_FOUT && !ptype.endsWith( "&") && !ptype.endsWith("**"))2403 prototype += "&";2403 if (pdesc.wParamFlags & PARAMFLAG_FOUT && !ptype.endsWith('&') && !ptype.endsWith("**")) 2404 prototype += '&'; 2404 2405 if (optional || pdesc.wParamFlags & PARAMFLAG_FOPT) 2405 2406 paramName += "=0"; … … 2411 2412 } 2412 2413 if (p < funcdesc->cParams && !(pdesc.wParamFlags & PARAMFLAG_FRETVAL)) 2413 prototype += ",";2414 prototype += ','; 2414 2415 } 2415 2416 2416 2417 if (!prototype.isEmpty()) { 2417 if (prototype. right(1) == ",") {2418 if (prototype.endsWith(',')) { 2418 2419 if (funcdesc->invkind == INVOKE_PROPERTYPUT && p == funcdesc->cParams) { 2419 2420 TYPEDESC tdesc = funcdesc->lprgelemdescParam[p-1].tdesc; 2420 2421 QByteArray ptype = guessTypes(tdesc, typeinfo, function); 2421 2422 prototype += ptype; 2422 prototype += ")";2423 prototype += ')'; 2423 2424 parameters << "rhs"; 2424 2425 } else { … … 2426 2427 } 2427 2428 } else { 2428 prototype += ")";2429 prototype += ')'; 2429 2430 } 2430 2431 } … … 2464 2465 int p; 2465 2466 for (p = 0; p < (int)maxNamesOut; ++p) { 2466 names << QString::from Utf16((const ushort *)bstrNames[p]).toLatin1();2467 names << QString::fromWCharArray(bstrNames[p]).toLatin1(); 2467 2468 SysFreeString(bstrNames[p]); 2468 2469 } … … 2574 2575 if (defargs) { 2575 2576 parameters.takeLast(); 2576 int lastParam = prototype.lastIndexOf( ",");2577 int lastParam = prototype.lastIndexOf(','); 2577 2578 if (lastParam == -1) 2578 lastParam = prototype.indexOf( "(") + 1;2579 lastParam = prototype.indexOf('(') + 1; 2579 2580 prototype.truncate(lastParam); 2580 prototype += ")";2581 prototype += ')'; 2581 2582 } 2582 2583 } while (defargs); … … 2591 2592 BSTR bstrDocu; 2592 2593 info->GetDocumentation(funcdesc->memid, 0, &bstrDocu, 0, 0); 2593 QString strDocu = QString::from Utf16((const ushort*)bstrDocu);2594 QString strDocu = QString::fromWCharArray(bstrDocu); 2594 2595 SysFreeString(bstrDocu); 2595 2596 if (!!strDocu) 2596 desc += "[" + strDocu + "]";2597 desc += "\n";2597 desc += '[' + strDocu + ']'; 2598 desc += '\n'; 2598 2599 #endif 2599 2600 typeinfo->ReleaseFuncDesc(funcdesc); … … 2638 2639 uint flags = 0; 2639 2640 2640 variableName = QString::from Utf16((const ushort *)bstrName).toLatin1();2641 variableName = QString::fromWCharArray(bstrName).toLatin1(); 2641 2642 SysFreeString(bstrName); 2642 2643 … … 2674 2675 BSTR bstrDocu; 2675 2676 info->GetDocumentation(vardesc->memid, 0, &bstrDocu, 0, 0); 2676 QString strDocu = QString::from Utf16((const ushort*)bstrDocu);2677 QString strDocu = QString::fromWCharArray(bstrDocu); 2677 2678 SysFreeString(bstrDocu); 2678 2679 if (!!strDocu) 2679 desc += "[" + strDocu + "]";2680 desc += "\n";2680 desc += '[' + strDocu + ']'; 2681 desc += '\n'; 2681 2682 #endif 2682 2683 typeinfo->ReleaseVarDesc(vardesc); … … 2797 2798 int p; 2798 2799 for (p = 0; p < (int)maxNamesOut; ++p) { 2799 names << QString::from Utf16((const ushort *)bstrNames[p]).toLatin1();2800 names << QString::fromWCharArray(bstrNames[p]).toLatin1(); 2800 2801 SysFreeString(bstrNames[p]); 2801 2802 } … … 2821 2822 BSTR bstrDocu; 2822 2823 eventinfo->GetDocumentation(funcdesc->memid, 0, &bstrDocu, 0, 0); 2823 QString strDocu = QString::from Utf16((const ushort*)bstrDocu);2824 QString strDocu = QString::fromWCharArray(bstrDocu); 2824 2825 SysFreeString(bstrDocu); 2825 2826 if (!!strDocu) 2826 desc += "[" + strDocu + "]";2827 desc += "\n";2827 desc += '[' + strDocu + ']'; 2828 desc += '\n'; 2828 2829 #endif 2829 2830 eventinfo->ReleaseFuncDesc(funcdesc); … … 2979 2980 BSTR bstr; 2980 2981 typelib->GetDocumentation(-1, &bstr, 0, 0, 0); 2981 current_typelib = QString::from Utf16((const ushort *)bstr).toLatin1();2982 current_typelib = QString::fromWCharArray(bstr).toLatin1(); 2982 2983 SysFreeString(bstr); 2983 2984 } … … 3205 3206 3206 3207 static QMetaObject qaxobject_staticMetaObject = { 3207 &QObject::staticMetaObject, qt_meta_stringdata_QAxBase,3208 qt_meta_data_QAxBase, 0 3208 { &QObject::staticMetaObject, qt_meta_stringdata_QAxBase, 3209 qt_meta_data_QAxBase, 0 } 3209 3210 }; 3210 3211 static QMetaObject qaxwidget_staticMetaObject = { 3211 &QWidget::staticMetaObject, qt_meta_stringdata_QAxBase,3212 qt_meta_data_QAxBase, 0 3212 { &QWidget::staticMetaObject, qt_meta_stringdata_QAxBase, 3213 qt_meta_data_QAxBase, 0 } 3213 3214 }; 3214 3215 … … 3388 3389 3389 3390 code = exc->wCode ? exc->wCode : exc->scode; 3390 source = QString::from Utf16((const ushort *)exc->bstrSource);3391 desc = QString::from Utf16((const ushort *)exc->bstrDescription);3392 help = QString::from Utf16((const ushort *)exc->bstrHelpFile);3391 source = QString::fromWCharArray(exc->bstrSource); 3392 desc = QString::fromWCharArray(exc->bstrDescription); 3393 help = QString::fromWCharArray(exc->bstrHelpFile); 3393 3394 uint helpContext = exc->dwHelpContext; 3394 3395 … … 3693 3694 id = internalInvoke(call, id, v); 3694 3695 break; 3696 default: 3697 break; 3695 3698 } 3696 3699 break; … … 3706 3709 case QMetaObject::QueryPropertyUser: 3707 3710 id -= mo->propertyCount(); 3711 break; 3712 default: 3708 3713 break; 3709 3714 } … … 3906 3911 paramType = d->metaobj->paramType(normFunction, i, &out); 3907 3912 3908 if ( !parse && d->useMetaObject && var.type() == QVariant::String|| var.type() == QVariant::ByteArray) {3913 if ((!parse && d->useMetaObject && var.type() == QVariant::String) || var.type() == QVariant::ByteArray) { 3909 3914 int enumIndex =mo->indexOfEnumerator(paramType); 3910 3915 if (enumIndex != -1) { … … 4225 4230 return E_POINTER; 4226 4231 4227 QString property = QString::from Utf16((const ushort *)name);4232 QString property = QString::fromWCharArray(name); 4228 4233 QVariant qvar = map.value(property); 4229 4234 QVariantToVARIANT(qvar, *var); … … 4234 4239 if (!var) 4235 4240 return E_POINTER; 4236 QString property = QString::from Utf16((const ushort *)name);4241 QString property = QString::fromWCharArray(name); 4237 4242 QVariant qvar = VARIANTToQVariant(*var, 0); 4238 4243 map[property] = qvar; … … 4395 4400 QObject *object = qObject(); 4396 4401 if (QMetaType::type(cn)) 4397 qvar = QVariant(qRegisterMetaType<QObject*>(cn + "*"), &object);4398 // qVariantSetValue(qvar, qObject(), cn + "*");4402 qvar = QVariant(qRegisterMetaType<QObject*>(cn + '*'), &object); 4403 // qVariantSetValue(qvar, qObject(), cn + '*'); 4399 4404 } 4400 4405 -
trunk/src/activeqt/container/qaxbase.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxdump.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 67 68 ulong helpContext; 68 69 HRESULT hres = typeInfo->GetDocumentation(memId, 0, &docStringBstr, &helpContext, &helpFileBstr); 69 QString docString = QString::from Utf16((const ushort *)docStringBstr);70 QString helpFile = QString::from Utf16((const ushort *)helpFileBstr);70 QString docString = QString::fromWCharArray(docStringBstr); 71 QString helpFile = QString::fromWCharArray(helpFileBstr); 71 72 SysFreeString(docStringBstr); 72 73 SysFreeString(helpFileBstr); … … 95 96 96 97 if (p < parameterNames.count()) 97 prototype += " "+ parameterNames.at(p);98 prototype += ' ' + parameterNames.at(p); 98 99 99 100 if (numDefArgs >= parameterTypes.count() - p) … … 102 103 prototype += ", "; 103 104 } 104 prototype += ")";105 prototype += ')'; 105 106 106 107 return prototype; … … 197 198 prototype = namedPrototype(slot.parameterTypes(), slot.parameterNames()); 198 199 QString detail = QString::fromLatin1("<h3><a name=") + QString::fromLatin1(name.constData()) + QLatin1String("></a>") + 199 Q String::fromLatin1(returntype.constData()) + QLatin1String(" ") +200 Q String::fromLatin1(name.constData()) + QLatin1String(" ") +200 QLatin1String(returntype.constData()) + QLatin1Char(' ') + 201 QLatin1String(name.constData()) + QLatin1Char(' ') + 201 202 QString::fromLatin1(prototype.constData()) + QLatin1String("<tt> [slot]</tt></h3>\n"); 202 203 prototype = namedPrototype(slot.parameterTypes(), QList<QByteArray>()); … … 221 222 } 222 223 if (returntype != "void") 223 detail += Q String::fromLatin1(returntype.constData()) + QLatin1String(" result = ");224 detail += QLatin1String("object->") + Q String::fromLatin1(functionToCall.constData()) +225 QLatin1String("(\"" + name + prototype + "\"");224 detail += QLatin1String(returntype.constData()) + QLatin1String(" result = "); 225 detail += QLatin1String("object->") + QLatin1String(functionToCall.constData()) + 226 QLatin1String("(\"" + name + prototype + '\"'); 226 227 if (hasParams) 227 228 detail += QLatin1String(", params"); 228 detail += QLatin1 String(")");229 detail += QLatin1Char(')'); 229 230 if (returntype != "void" && returntype != "QAxObject *" && returntype != "QVariant") 230 detail += QLatin1 String(".") + QString::fromLatin1(toType(returntype));231 detail += QLatin1Char('.') + QLatin1String(toType(returntype)); 231 232 detail += QLatin1String(";</pre>\n"); 232 233 } else { … … 263 264 stream << "<li>void <a href=\"#" << name << "\"><b>" << name << "</b></a>" << prototype << ";</li>" << endl; 264 265 265 QString detail = QLatin1String("<h3><a name=") + Q String::fromLatin1(name.constData()) + QLatin1String("></a>void ") +266 Q String::fromLatin1(name.constData()) + QLatin1String(" ") +267 Q String::fromLatin1(prototype.constData()) + QLatin1String("<tt> [signal]</tt></h3>\n");266 QString detail = QLatin1String("<h3><a name=") + QLatin1String(name.constData()) + QLatin1String("></a>void ") + 267 QLatin1String(name.constData()) + QLatin1Char(' ') + 268 QLatin1String(prototype.constData()) + QLatin1String("<tt> [signal]</tt></h3>\n"); 268 269 if (typeLib) { 269 270 interCount = 0; … … 312 313 stream << "<li>" << type << " <a href=\"#" << name << "\"><b>" << name << "</b></a>;</li>" << endl; 313 314 QString detail = QLatin1String("<h3><a name=") + QString::fromLatin1(name.constData()) + QLatin1String("></a>") + 314 Q String::fromLatin1(type.constData()) +315 QLatin1 String(" ") + QString::fromLatin1(name.constData()) + QLatin1String("</h3>\n");315 QLatin1String(type.constData()) + 316 QLatin1Char(' ') + QLatin1String(name.constData()) + QLatin1String("</h3>\n"); 316 317 detail += docuFromName(typeInfo, QString::fromLatin1(name)); 317 318 QVariant::Type vartype = QVariant::nameToType(type); … … 327 328 detail += QLatin1String("\tint val = "); 328 329 else 329 detail += QLatin1 String("\t") + QString::fromLatin1(type.constData()) + QLatin1String(" val = ");330 detail += QLatin1String("object->property(\"") + Q String::fromLatin1(name.constData()) +331 QLatin1String("\").") + Q String::fromLatin1(toType(type).constData()) + QLatin1String(";\n");330 detail += QLatin1Char('\t') + QLatin1String(type.constData()) + QLatin1String(" val = "); 331 detail += QLatin1String("object->property(\"") + QLatin1String(name.constData()) + 332 QLatin1String("\").") + QLatin1String(toType(type).constData()) + QLatin1String(";\n"); 332 333 detail += QLatin1String("</pre>\n"); 333 334 } else if (type == "IDispatch*" || type == "IUnknown*") { 334 335 detail += QLatin1String("<p>Get the subobject using querySubObject:<pre>\n"); 335 detail += QLatin1String("\tQAxObject *") + Q String::fromLatin1(name.constData()) +336 QLatin1String(" = object->querySubObject(\"") + Q String::fromLatin1(name.constData()) + QLatin1String("\");\n");336 detail += QLatin1String("\tQAxObject *") + QLatin1String(name.constData()) + 337 QLatin1String(" = object->querySubObject(\"") + QLatin1String(name.constData()) + QLatin1String("\");\n"); 337 338 detail += QLatin1String("</pre>\n"); 338 339 } else { -
trunk/src/activeqt/container/qaxobject.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 38 39 ****************************************************************************/ 39 40 40 #ifndef UNICODE41 #define UNICODE42 #endif43 44 41 #include "qaxobject.h" 45 42 … … 127 124 128 125 /*! 129 \ reimp126 \internal 130 127 */ 131 128 const QMetaObject *QAxObject::metaObject() const … … 135 132 136 133 /*! 137 \ reimp134 \internal 138 135 */ 139 136 const QMetaObject *QAxObject::parentMetaObject() const … … 153 150 154 151 /*! 155 \ reimp152 \internal 156 153 */ 157 154 const char *QAxObject::className() const … … 161 158 162 159 /*! 163 \ reimp160 \internal 164 161 */ 165 162 int QAxObject::qt_metacall(QMetaObject::Call call, int id, void **v) -
trunk/src/activeqt/container/qaxobject.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxscript.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 38 39 ****************************************************************************/ 39 40 40 #ifndef UNICODE41 #define UNICODE42 #endif43 44 41 #include "qaxscript.h" 45 42 … … 195 192 return E_POINTER; 196 193 197 QAxBase *object = script->findObject(QString::from Utf16((const ushort*)pstrName));194 QAxBase *object = script->findObject(QString::fromWCharArray(pstrName)); 198 195 if (!object) 199 196 return TYPE_E_ELEMENTNOTFOUND; … … 237 234 if (exception) 238 235 emit script->finished(exception->wCode, 239 QString::from Utf16((const ushort*)exception->bstrSource),240 QString::from Utf16((const ushort*)exception->bstrDescription),241 QString::from Utf16((const ushort*)exception->bstrHelpFile)236 QString::fromWCharArray(exception->bstrSource), 237 QString::fromWCharArray(exception->bstrDescription), 238 QString::fromWCharArray(exception->bstrHelpFile) 242 239 ); 243 240 return S_OK; … … 288 285 HRESULT hres = error->GetSourceLineText(&bstrLineText); 289 286 if (hres == S_OK) { 290 lineText = QString::from Utf16((const ushort*)bstrLineText);287 lineText = QString::fromWCharArray(bstrLineText); 291 288 SysFreeString(bstrLineText); 292 289 } … … 295 292 SysFreeString(exception.bstrHelpFile); 296 293 297 emit script->error(exception.wCode, QString::from Utf16((const ushort*)exception.bstrDescription), lineNumber, lineText);294 emit script->error(exception.wCode, QString::fromWCharArray(exception.bstrDescription), lineNumber, lineText); 298 295 299 296 return S_OK; … … 464 461 465 462 CLSID clsid; 466 HRESULT hres = CLSIDFromProgID(( WCHAR*)script_language.utf16(), &clsid);463 HRESULT hres = CLSIDFromProgID((wchar_t*)script_language.utf16(), &clsid); 467 464 if(FAILED(hres)) 468 465 return false; … … 610 607 return; 611 608 612 engine->AddNamedItem(( WCHAR*)name.utf16(), SCRIPTITEM_ISSOURCE|SCRIPTITEM_ISVISIBLE);609 engine->AddNamedItem((wchar_t*)name.utf16(), SCRIPTITEM_ISSOURCE|SCRIPTITEM_ISVISIBLE); 613 610 #endif 614 611 } … … 1174 1171 1175 1172 CLSID clsid; 1176 HRESULT hres = CLSIDFromProgID(( WCHAR*)name.utf16(), &clsid);1173 HRESULT hres = CLSIDFromProgID((wchar_t*)name.utf16(), &clsid); 1177 1174 if (hres != S_OK) 1178 1175 return false; … … 1204 1201 1205 1202 allFiles += QLatin1String(" *") + engine.extension; 1206 specialFiles += QLatin1String(";;") + engine.name + QLatin1String(" Files (*") + engine.extension + QLatin1 String(")");1207 } 1208 allFiles += QLatin1 String(")");1203 specialFiles += QLatin1String(";;") + engine.name + QLatin1String(" Files (*") + engine.extension + QLatin1Char(')'); 1204 } 1205 allFiles += QLatin1Char(')'); 1209 1206 1210 1207 return allFiles + specialFiles + QLatin1String(";;All Files (*.*)"); -
trunk/src/activeqt/container/qaxscript.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxscriptwrapper.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxselect.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 53 54 { 54 55 HKEY classes_key; 55 QT_WA_INLINE( 56 RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_READ, &classes_key), 57 RegOpenKeyExA(HKEY_CLASSES_ROOT, "CLSID", 0, KEY_READ, &classes_key)); 56 RegOpenKeyEx(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_READ, &classes_key); 58 57 if (!classes_key) 59 58 return; … … 61 60 DWORD index = 0; 62 61 LONG result = 0; 63 TCHARbuffer[256];64 DWORD szBuffer = sizeof(buffer) ;62 wchar_t buffer[256]; 63 DWORD szBuffer = sizeof(buffer) / sizeof(wchar_t); 65 64 FILETIME ft; 66 65 do { 67 result = QT_WA_INLINE( 68 RegEnumKeyExW(classes_key, index, (wchar_t*)&buffer, &szBuffer, 0, 0, 0, &ft), 69 RegEnumKeyExA(classes_key, index, (char*)&buffer, &szBuffer, 0, 0, 0, &ft)); 70 szBuffer = sizeof(buffer); 66 result = RegEnumKeyEx(classes_key, index, buffer, &szBuffer, 0, 0, 0, &ft); 67 szBuffer = sizeof(buffer) / sizeof(wchar_t); 71 68 if (result == ERROR_SUCCESS) { 72 69 HKEY sub_key; 73 QString clsid = QT_WA_INLINE(QString::fromUtf16((ushort*)buffer), QString::fromLocal8Bit((char*)buffer)); 74 result = QT_WA_INLINE( 75 RegOpenKeyExW(classes_key, reinterpret_cast<const wchar_t *>(QString(clsid + "\\Control").utf16()), 0, KEY_READ, &sub_key), 76 RegOpenKeyA(classes_key, QString(clsid + QLatin1String("\\Control")).toLocal8Bit(), &sub_key)); 70 QString clsid = QString::fromWCharArray(buffer); 71 result = RegOpenKeyEx(classes_key, reinterpret_cast<const wchar_t *>(QString(clsid + "\\Control").utf16()), 0, KEY_READ, &sub_key); 77 72 if (result == ERROR_SUCCESS) { 78 73 RegCloseKey(sub_key); 79 QT_WA_INLINE( 80 RegistryQueryValueW(classes_key, buffer, (LPBYTE)buffer, &szBuffer), 81 RegQueryValueA(classes_key, (char*)buffer, (char*)buffer, (LONG*)&szBuffer)); 82 QString name = QT_WA_INLINE(QString::fromUtf16((ushort*)buffer, szBuffer / sizeof(TCHAR)) , QString::fromLocal8Bit((char*)buffer, szBuffer)); 74 RegistryQueryValue(classes_key, buffer, (LPBYTE)buffer, &szBuffer); 75 QString name = QString::fromWCharArray(buffer); 83 76 84 77 controls << name; … … 87 80 result = ERROR_SUCCESS; 88 81 } 89 szBuffer = sizeof(buffer) ;82 szBuffer = sizeof(buffer) / sizeof(wchar_t); 90 83 ++index; 91 84 } while (result == ERROR_SUCCESS); … … 94 87 } 95 88 96 LONG RegistryQueryValue W(HKEY hKey, LPCWSTR lpSubKey, LPBYTE lpData, LPDWORD lpcbData)89 LONG RegistryQueryValue(HKEY hKey, LPCWSTR lpSubKey, LPBYTE lpData, LPDWORD lpcbData) 97 90 { 98 91 LONG ret = ERROR_FILE_NOT_FOUND; 99 92 HKEY hSubKey = NULL; 100 RegOpenKeyEx W(hKey, lpSubKey, 0, KEY_READ, &hSubKey);93 RegOpenKeyEx(hKey, lpSubKey, 0, KEY_READ, &hSubKey); 101 94 if (hSubKey) { 102 ret = RegQueryValueEx W(hSubKey, 0, 0, 0, lpData, lpcbData);95 ret = RegQueryValueEx(hSubKey, 0, 0, 0, lpData, lpcbData); 103 96 RegCloseKey(hSubKey); 104 97 } -
trunk/src/activeqt/container/qaxselect.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxselect.ui
r2 r561 4 4 ** 5 5 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 6 ** Contact: Qt Software Information (qt-info@nokia.com) 6 ** All rights reserved. 7 ** Contact: Nokia Corporation (qt-info@nokia.com) 7 8 ** 8 9 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/container/qaxwidget.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 38 39 ****************************************************************************/ 39 40 40 #ifndef UNICODE41 #define UNICODE42 #endif43 44 45 41 #include "qaxwidget.h" 46 42 … … 124 120 125 121 int qt_metacall(QMetaObject::Call, int isignal, void **argv); 122 void* qt_metacast(const char *clname); 123 126 124 inline QAxClientSite *clientSite() const 127 125 { … … 384 382 385 383 private: 386 #if !defined(Q_ OS_WINCE)384 #if !defined(Q_WS_WINCE) 387 385 struct OleMenuItem { 388 386 OleMenuItem(HMENU hm = 0, int ID = 0, QMenu *menu = 0) … … 409 407 410 408 DWORD m_dwOleObject; 411 #if !defined(Q_ OS_WINCE)409 #if !defined(Q_WS_WINCE) 412 410 HWND m_menuOwner; 413 411 #endif … … 418 416 QAxWidget *widget; 419 417 QAxHostWidget *host; 420 #if !defined(Q_ OS_WINCE)418 #if !defined(Q_WS_WINCE) 421 419 QPointer<QMenuBar> menuBar; 422 420 QMap<QAction*,OleMenuItem> menuItemMap; … … 468 466 #error "Fix QAbstractEventDispatcher::setEventFilter" 469 467 #endif 470 #if defined(Q_ OS_WINCE)468 #if defined(Q_WS_WINCE) 471 469 static int filter_ref = 0; 472 470 #else 473 static const char *qaxatom ="QAxContainer4_Atom";471 static const wchar_t *qaxatom = L"QAxContainer4_Atom"; 474 472 #endif 475 473 … … 484 482 QAxHostWidget *host = 0; 485 483 while (!host && hwnd) { 486 host = qobject_cast<QAxHostWidget*>(QWidget::find(hwnd)); 484 QWidget *widget = QWidget::find(hwnd); 485 if (widget && widget->inherits("QAxHostWidget")) 486 host = qobject_cast<QAxHostWidget*>(widget); 487 487 hwnd = ::GetParent(hwnd); 488 488 } … … 533 533 534 534 QAxClientSite::QAxClientSite(QAxWidget *c) 535 : ref(1), widget(c), host(0), eventTranslated(true)535 : eventTranslated(true), ref(1), widget(c), host(0) 536 536 { 537 537 aggregatedObject = widget->createAggregate(); … … 552 552 553 553 m_dwOleObject = 0; 554 #if !defined(Q_ OS_WINCE)554 #if !defined(Q_WS_WINCE) 555 555 m_menuOwner = 0; 556 556 menuBar = 0; … … 715 715 HRESULT result = m_spOleObject->GetUserType(USERCLASSTYPE_SHORT, &userType); 716 716 if (result == S_OK) { 717 widget->setWindowTitle(QString::from Utf16((const ushort *)userType));717 widget->setWindowTitle(QString::fromWCharArray(userType)); 718 718 CoTaskMemFree(userType); 719 719 } … … 982 982 HRESULT WINAPI QAxClientSite::TranslateAccelerator(LPMSG lpMsg, DWORD /*grfModifiers*/) 983 983 { 984 eventTranslated = false;985 984 if (lpMsg->message == WM_KEYDOWN && !lpMsg->wParam) 986 985 return S_OK; 987 QT_WA_INLINE( 988 SendMessage(host->winId(), lpMsg->message, lpMsg->wParam, lpMsg->lParam), 989 SendMessageA(host->winId(), lpMsg->message, lpMsg->wParam, lpMsg->lParam) 990 ); 986 987 bool ActiveQtDetected = false; 988 bool fromInProcServer = false; 989 #ifdef GWLP_USERDATA 990 LONG_PTR serverType = GetWindowLongPtr(lpMsg->hwnd, GWLP_USERDATA); 991 #else 992 LONG serverType = GetWindowLong(lpMsg->hwnd, GWL_USERDATA); 993 #endif 994 if (serverType == QAX_INPROC_SERVER) { 995 ActiveQtDetected = true; 996 fromInProcServer = true; 997 } else if (serverType == QAX_OUTPROC_SERVER) { 998 ActiveQtDetected = true; 999 fromInProcServer = false; 1000 } 1001 1002 eventTranslated = false; 1003 if (!ActiveQtDetected || !fromInProcServer) { 1004 // if the request is coming from an out-of-proc server or a non ActiveQt server, 1005 // we send the message to the host window. This will make sure this key event 1006 // comes to Qt for processing. 1007 SendMessage(host->winId(), lpMsg->message, lpMsg->wParam, lpMsg->lParam); 1008 if (ActiveQtDetected && !fromInProcServer) { 1009 // ActiveQt based servers will need further processing of the event 1010 // (eg. <SPACE> key for a checkbox), so we return false. 1011 return S_FALSE; 1012 } 1013 } 1014 // ActiveQt based in-processes-servers will handle the event properly, so 1015 // we dont need to send this key event to the host. 991 1016 return S_OK; 992 1017 } … … 1133 1158 1134 1159 //**** IOleInPlaceFrame 1135 #if defined(Q_ OS_WINCE)1160 #if defined(Q_WS_WINCE) 1136 1161 HRESULT WINAPI QAxClientSite::InsertMenus(HMENU /*hmenuShared*/, LPOLEMENUGROUPWIDTHS /*lpMenuWidths*/) 1137 1162 { … … 1174 1199 } 1175 1200 1176 static int menuItemEntry(HMENU menu, int index, MENUITEMINFO Aitem, QString &text, QPixmap &/*icon*/)1201 static int menuItemEntry(HMENU menu, int index, MENUITEMINFO item, QString &text, QPixmap &/*icon*/) 1177 1202 { 1178 1203 if (item.fType == MFT_STRING && item.cch) { 1179 char *titlebuf = new char[item.cch+1];1204 wchar_t *titlebuf = new wchar_t[item.cch + 1]; 1180 1205 item.dwTypeData = titlebuf; 1181 1206 item.cch++; 1182 ::GetMenuItemInfo A(menu, index, true, &item);1183 text = QString::from Local8Bit(titlebuf);1184 delete [] titlebuf;1207 ::GetMenuItemInfo(menu, index, true, &item); 1208 text = QString::fromWCharArray(titlebuf); 1209 delete [] titlebuf; 1185 1210 return MFT_STRING; 1186 1211 } … … 1192 1217 QPixmap pixmap(1,1); 1193 1218 QSize sz(MAP_LOGHIM_TO_PIX(bmsize.cx, pixmap.logicalDpiX()), 1194 MAP_LOGHIM_TO_PIX(bmsize.cy, pixmap.logicalDpiY()));1219 MAP_LOGHIM_TO_PIX(bmsize.cy, pixmap.logicalDpiY())); 1195 1220 1196 1221 pixmap.resize(bmsize.cx, bmsize.cy); … … 1216 1241 popup = new QMenu(parent); 1217 1242 for (int i = 0; i < count; ++i) { 1218 MENUITEMINFO Aitem;1219 memset(&item, 0, sizeof(MENUITEMINFO A));1220 item.cbSize = sizeof(MENUITEMINFO A);1243 MENUITEMINFO item; 1244 memset(&item, 0, sizeof(MENUITEMINFO)); 1245 item.cbSize = sizeof(MENUITEMINFO); 1221 1246 item.fMask = MIIM_ID | MIIM_TYPE | MIIM_SUBMENU; 1222 ::GetMenuItemInfo A(subMenu, i, true, &item);1247 ::GetMenuItemInfo(subMenu, i, true, &item); 1223 1248 1224 1249 QAction *action = 0; … … 1296 1321 int count = GetMenuItemCount(hmenuShared); 1297 1322 for (int i = 0; i < count; ++i) { 1298 MENUITEMINFO Aitem;1299 memset(&item, 0, sizeof(MENUITEMINFO A));1300 item.cbSize = sizeof(MENUITEMINFO A);1323 MENUITEMINFO item; 1324 memset(&item, 0, sizeof(MENUITEMINFO)); 1325 item.cbSize = sizeof(MENUITEMINFO); 1301 1326 item.fMask = MIIM_ID | MIIM_TYPE | MIIM_SUBMENU; 1302 ::GetMenuItemInfo A(hmenuShared, i, true, &item);1327 ::GetMenuItemInfo(hmenuShared, i, true, &item); 1303 1328 1304 1329 QAction *action = 0; … … 1380 1405 OleMenuItem oleItem = menuItemMap.value(action); 1381 1406 if (oleItem.hMenu) 1382 ::PostMessage A(m_menuOwner, WM_COMMAND, oleItem.id, 0);1407 ::PostMessage(m_menuOwner, WM_COMMAND, oleItem.id, 0); 1383 1408 return -1; 1384 1409 #endif … … 1405 1430 HRESULT WINAPI QAxClientSite::SetStatusText(LPCOLESTR pszStatusText) 1406 1431 { 1407 QStatusTipEvent tip(QString::from Utf16((const ushort *)(BSTR)pszStatusText));1432 QStatusTipEvent tip(QString::fromWCharArray(pszStatusText)); 1408 1433 QApplication::sendEvent(widget, &tip); 1409 1434 return S_OK; … … 1414 1439 HRESULT WINAPI QAxClientSite::EnableModeless(BOOL fEnable) 1415 1440 { 1441 #if !defined(Q_OS_WINCE) 1442 LockWindowUpdate(host->window()->winId()); 1443 #endif 1416 1444 EnableWindow(host->window()->winId(), fEnable); 1417 1445 … … 1424 1452 } 1425 1453 qt_win_ignoreNextMouseReleaseEvent = false; 1426 1454 #if !defined(Q_OS_WINCE) 1455 LockWindowUpdate(0); 1456 #endif 1427 1457 return S_OK; 1428 1458 } … … 1512 1542 { 1513 1543 AX_DEBUG(QAxClientSite::SetActiveObject); 1514 1515 if (pszObjName && widget) 1516 widget->setWindowTitle(QString::fromUtf16((const ushort *)(BSTR)pszObjName)); 1544 1545 Q_UNUSED(pszObjName); 1546 // we are ignoring the name of the object, as suggested by MSDN documentation 1547 // for IOleInPlaceUIWindow::SetActiveObject(). 1517 1548 1518 1549 if (m_spInPlaceActiveObject) { … … 1624 1655 return axhost->qt_metacall(call, isignal, argv); 1625 1656 return -1; 1657 } 1658 1659 void* QAxHostWidget::qt_metacast(const char *clname) 1660 { 1661 if (!clname) return 0; 1662 if (!qstrcmp(clname,"QAxHostWidget")) 1663 return static_cast<void*>(const_cast< QAxHostWidget*>(this)); 1664 return QWidget::qt_metacast(clname); 1626 1665 } 1627 1666 … … 1953 1992 1954 1993 #if !defined(Q_OS_WINCE) 1955 ATOM filter_ref = FindAtom A(qaxatom);1994 ATOM filter_ref = FindAtom(qaxatom); 1956 1995 #endif 1957 1996 if (!filter_ref) 1958 1997 previous_filter = QAbstractEventDispatcher::instance()->setEventFilter(axc_FilterProc); 1959 1998 #if !defined(Q_OS_WINCE) 1960 AddAtom A(qaxatom);1999 AddAtom(qaxatom); 1961 2000 #else 1962 2001 ++filter_ref; … … 1993 2032 if (!control().isEmpty()) { 1994 2033 #if !defined(Q_OS_WINCE) 1995 ATOM filter_ref = FindAtom A(qaxatom);2034 ATOM filter_ref = FindAtom(qaxatom); 1996 2035 if (filter_ref) 1997 2036 DeleteAtom(filter_ref); 1998 filter_ref = FindAtom A(qaxatom);2037 filter_ref = FindAtom(qaxatom); 1999 2038 if (!filter_ref) { 2000 2039 #else … … 2043 2082 2044 2083 /*! 2045 \ reimp2084 \internal 2046 2085 */ 2047 2086 const QMetaObject *QAxWidget::metaObject() const … … 2051 2090 2052 2091 /*! 2053 \ reimp2092 \internal 2054 2093 */ 2055 2094 const QMetaObject *QAxWidget::parentMetaObject() const … … 2069 2108 2070 2109 /*! 2071 \ reimp2110 \internal 2072 2111 */ 2073 2112 const char *QAxWidget::className() const … … 2077 2116 2078 2117 /*! 2079 \ reimp2118 \internal 2080 2119 */ 2081 2120 int QAxWidget::qt_metacall(QMetaObject::Call call, int id, void **v) -
trunk/src/activeqt/container/qaxwidget.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/control.pro
r2 r561 25 25 win32-g++:LIBS += -luuid 26 26 27 contains(QT_EDITION, OpenSource|Console) { 28 message( "You are not licensed to use ActiveQt." ) 29 } else { 30 HEADERS = qaxaggregated.h \ 31 qaxbindable.h \ 32 qaxfactory.h \ 33 ../shared/qaxtypes.h 27 HEADERS = qaxaggregated.h \ 28 qaxbindable.h \ 29 qaxfactory.h \ 30 ../shared/qaxtypes.h 34 31 35 SOURCES = qaxserver.cpp \ 36 qaxserverbase.cpp \ 37 qaxbindable.cpp \ 38 qaxfactory.cpp \ 39 qaxservermain.cpp \ 40 qaxserverdll.cpp \ 41 qaxmain.cpp \ 42 ../shared/qaxtypes.cpp 43 } 32 SOURCES = qaxserver.cpp \ 33 qaxserverbase.cpp \ 34 qaxbindable.cpp \ 35 qaxfactory.cpp \ 36 qaxservermain.cpp \ 37 qaxserverdll.cpp \ 38 qaxmain.cpp \ 39 ../shared/qaxtypes.cpp -
trunk/src/activeqt/control/qaxaggregated.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/qaxbindable.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/qaxbindable.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/qaxfactory.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 51 52 QT_BEGIN_NAMESPACE 52 53 53 extern charqAxModuleFilename[MAX_PATH];54 extern wchar_t qAxModuleFilename[MAX_PATH]; 54 55 55 56 /*! … … 278 279 279 280 if (licenseKey.isEmpty()) { 280 QString licFile(Q File::decodeName(qAxModuleFilename));281 QString licFile(QString::fromWCharArray(qAxModuleFilename)); 281 282 int lastDot = licFile.lastIndexOf(QLatin1Char('.')); 282 283 licFile = licFile.left(lastDot) + QLatin1String(".lic"); … … 361 362 } 362 363 363 extern charqAxModuleFilename[MAX_PATH];364 extern wchar_t qAxModuleFilename[MAX_PATH]; 364 365 365 366 /*! … … 373 374 QString QAxFactory::serverDirPath() 374 375 { 375 return QFileInfo(QString::from Local8Bit(qAxModuleFilename)).absolutePath();376 return QFileInfo(QString::fromWCharArray(qAxModuleFilename)).absolutePath(); 376 377 } 377 378 … … 385 386 QString QAxFactory::serverFilePath() 386 387 { 387 return QString::from Local8Bit(qAxModuleFilename);388 return QString::fromWCharArray(qAxModuleFilename); 388 389 } 389 390 … … 493 494 return false; 494 495 495 if (!QString::from Local8Bit(qAxModuleFilename).toLower().endsWith(QLatin1String(".exe")))496 if (!QString::fromWCharArray(qAxModuleFilename).toLower().endsWith(QLatin1String(".exe"))) 496 497 return false; 497 498 -
trunk/src/activeqt/control/qaxfactory.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/qaxmain.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. -
trunk/src/activeqt/control/qaxserver.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 64 65 HANDLE qAxInstance = 0; 65 66 ITypeLib *qAxTypeLibrary = 0; 66 charqAxModuleFilename[MAX_PATH];67 wchar_t qAxModuleFilename[MAX_PATH]; 67 68 bool qAxOutProcServer = false; 68 69 … … 91 92 for (int i = 0; i < keys.count(); ++i) { 92 93 QString key(keys.at(i)); 93 qRegisterMetaType((key + QLatin1 String("*")).toLatin1(), (void**)0);94 qRegisterMetaType((key + QLatin1Char('*')).toLatin1(), (void**)0); 94 95 } 95 96 } … … 117 118 InitializeCriticalSection(&qAxModuleSection); 118 119 119 libFile = QString::from Local8Bit(qAxModuleFilename);120 libFile = QString::fromWCharArray(qAxModuleFilename); 120 121 libFile = libFile.toLower(); 121 if (LoadTypeLibEx(( TCHAR*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK)122 if (LoadTypeLibEx((wchar_t*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK) 122 123 return libFile; 123 124 124 125 int lastDot = libFile.lastIndexOf(QLatin1Char('.')); 125 126 libFile = libFile.left(lastDot) + QLatin1String(".tlb"); 126 if (LoadTypeLibEx(( TCHAR*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK)127 if (LoadTypeLibEx((wchar_t*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK) 127 128 return libFile; 128 129 129 130 lastDot = libFile.lastIndexOf(QLatin1Char('.')); 130 131 libFile = libFile.left(lastDot) + QLatin1String(".olb"); 131 if (LoadTypeLibEx(( TCHAR*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK)132 if (LoadTypeLibEx((wchar_t*)libFile.utf16(), REGKIND_NONE, &qAxTypeLibrary) == S_OK) 132 133 return libFile; 133 134 … … 208 209 { 209 210 qAxIsServer = false; 210 QString file = QString::from Local8Bit(qAxModuleFilename);211 QString path = file.left(file.lastIndexOf(QLatin1 String("\\"))+1);211 QString file = QString::fromWCharArray(qAxModuleFilename); 212 QString path = file.left(file.lastIndexOf(QLatin1Char('\\'))+1); 212 213 QString module = file.right(file.length() - path.length()); 213 module = module.left(module.lastIndexOf(QLatin1 String(".")));214 module = module.left(module.lastIndexOf(QLatin1Char('.'))); 214 215 215 216 const QString appId = qAxFactory()->appID().toString().toUpper(); … … 227 228 DWORD major = libAttr->wMajorVerNum; 228 229 DWORD minor = libAttr->wMinorVerNum; 229 typeLibVersion = QString::number((uint)major) + QLatin1 String(".") + QString::number((uint)minor);230 typeLibVersion = QString::number((uint)major) + QLatin1Char('.') + QString::number((uint)minor); 230 231 231 232 if (bRegister) 232 RegisterTypeLib(qAxTypeLibrary, ( TCHAR*)libFile.utf16(), 0);233 RegisterTypeLib(qAxTypeLibrary, (wchar_t*)libFile.utf16(), 0); 233 234 else 234 235 UnRegisterTypeLib(libAttr->guid, libAttr->wMajorVerNum, libAttr->wMinorVerNum, libAttr->lcid, libAttr->syskind); … … 272 273 273 274 if (object) { // don't register subobject classes 274 QString classVersion = mo ? QString (QLatin1String(mo->classInfo(mo->indexOfClassInfo("Version")).value())) : QString();275 QString classVersion = mo ? QString::fromLatin1(mo->classInfo(mo->indexOfClassInfo("Version")).value()) : QString(); 275 276 if (classVersion.isNull()) 276 277 classVersion = QLatin1String("1.0"); 277 278 bool insertable = mo && !qstricmp(mo->classInfo(mo->indexOfClassInfo("Insertable")).value(), "yes"); 278 279 bool control = object->isWidgetType(); 279 const QString classMajorVersion = classVersion.left(classVersion.indexOf(QLatin1 String(".")));280 const QString classMajorVersion = classVersion.left(classVersion.indexOf(QLatin1Char('.'))); 280 281 uint olemisc = OLEMISC_SETCLIENTSITEFIRST 281 282 |OLEMISC_ACTIVATEWHENVISIBLE … … 288 289 olemisc |= OLEMISC_WANTSTOMENUMERGE; 289 290 290 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/."), className + QLatin1String(" Class"));291 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/CLSID/."), classId);291 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/."), className + QLatin1String(" Class")); 292 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/CLSID/."), classId); 292 293 if (insertable) 293 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/Insertable/."), QVariant(QLatin1String("")));294 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/Insertable/."), QVariant(QLatin1String(""))); 294 295 295 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/."), className + QLatin1String(" Class"));296 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/CLSID/."), classId);297 settings.setValue(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/CurVer/."), module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion);296 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/."), className + QLatin1String(" Class")); 297 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/CLSID/."), classId); 298 settings.setValue(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/CurVer/."), module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion); 298 299 299 300 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/."), className + QLatin1String(" Class")); 300 if (file. right(3).toLower() == QLatin1String("exe"))301 if (file.endsWith(QLatin1String("exe"), Qt::CaseInsensitive)) 301 302 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/AppID"), appId); 302 303 if (control) … … 308 309 else 309 310 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/LocalServer32/."), 310 QLatin1 String("\"") + file + QLatin1String("\" -activex"));311 QLatin1Char('\"') + file + QLatin1String("\" -activex")); 311 312 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/MiscStatus/."), control ? QLatin1String("1") : QLatin1String("0")); 312 313 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/MiscStatus/1/."), QString::number(olemisc)); 313 314 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/Programmable/."), QVariant(QLatin1String(""))); 314 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/ToolboxBitmap32/."), QLatin1 String("\"") +315 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/ToolboxBitmap32/."), QLatin1Char('\"') + 315 316 file + QLatin1String("\", 101")); 316 317 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/TypeLib/."), libId); settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/Version/."), classVersion); 317 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/VersionIndependentProgID/."), module + QLatin1 String(".") + className);318 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/ProgID/."), module + QLatin1 String(".") + className + QLatin1String(".") + classVersion.left(classVersion.indexOf(QLatin1Char('.'))));318 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/VersionIndependentProgID/."), module + QLatin1Char('.') + className); 319 settings.setValue(QLatin1String("/CLSID/") + classId + QLatin1String("/ProgID/."), module + QLatin1Char('.') + className + QLatin1Char('.') + classVersion.left(classVersion.indexOf(QLatin1Char('.')))); 319 320 320 321 QString mime = QLatin1String(mo->classInfo(mo->indexOfClassInfo("MIME")).value()); … … 331 332 // Prepend '.' before extension, if required. 332 333 extension = extension.trimmed(); 333 if (extension[0] != Q Char(QLatin1Char('.')))334 extension = QLatin1 String(".") + extension;334 if (extension[0] != QLatin1Char('.')) 335 extension = QLatin1Char('.') + extension; 335 336 } 336 337 337 338 if (!extension.isEmpty()) { 338 settings.setValue(QLatin1 String("/") + extension + QLatin1String("/."), module + QLatin1String(".") + className);339 settings.setValue(QLatin1 String("/") + extension + QLatin1String("/Content Type"), mime);340 341 mime = mime.replace(QLatin1 String("/"), QLatin1String("\\"));339 settings.setValue(QLatin1Char('/') + extension + QLatin1String("/."), module + QLatin1Char('.') + className); 340 settings.setValue(QLatin1Char('/') + extension + QLatin1String("/Content Type"), mime); 341 342 mime = mime.replace(QLatin1Char('/'), QLatin1Char('\\')); 342 343 settings.setValue(QLatin1String("/MIME/Database/Content Type/") + mime + QLatin1String("/CLSID"), classId); 343 344 settings.setValue(QLatin1String("/MIME/Database/Content Type/") + mime + QLatin1String("/Extension"), extension); … … 352 353 } 353 354 } else { 355 if (qAxOutProcServer) { 356 settings.remove(QLatin1String("/AppID/") + appId + QLatin1String("/.")); 357 settings.remove(QLatin1String("/AppID/") + module + QLatin1String(".EXE")); 358 } 354 359 QStringList keys = qAxFactory()->featureList(); 355 360 for (QStringList::Iterator key = keys.begin(); key != keys.end(); ++key) { … … 359 364 className = qax_clean_type(className, mo); 360 365 361 QString classVersion = mo ? QString (QLatin1String(mo->classInfo(mo->indexOfClassInfo("Version")).value())) : QString();366 QString classVersion = mo ? QString::fromLatin1(mo->classInfo(mo->indexOfClassInfo("Version")).value()) : QString(); 362 367 if (classVersion.isNull()) 363 368 classVersion = QLatin1String("1.0"); 364 const QString classMajorVersion = classVersion.left(classVersion.indexOf(QLatin1 String(".")));369 const QString classMajorVersion = classVersion.left(classVersion.indexOf(QLatin1Char('.'))); 365 370 366 371 qAxFactory()->unregisterClass(*key, &settings); 367 372 368 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/CLSID/."));369 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/Insertable/."));370 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion + QLatin1String("/."));371 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String(".") + classMajorVersion);373 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/CLSID/.")); 374 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/Insertable/.")); 375 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion + QLatin1String("/.")); 376 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1Char('.') + classMajorVersion); 372 377 373 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/CLSID/."));374 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/CurVer/."));375 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className + QLatin1String("/."));376 settings.remove(QLatin1 String("/") + module + QLatin1String(".") + className);378 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/CLSID/.")); 379 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/CurVer/.")); 380 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className + QLatin1String("/.")); 381 settings.remove(QLatin1Char('/') + module + QLatin1Char('.') + className); 377 382 378 383 settings.remove(QLatin1String("/CLSID/") + classId + QLatin1String("/AppID")); … … 405 410 // Prepend '.' before extension, if required. 406 411 extension = extension.trimmed(); 407 if (extension[0] != Q Char(QLatin1Char('.')))408 extension = QLatin1String(".") + extension;412 if (extension[0] != QLatin1Char('.')) 413 extension.prepend(QLatin1Char('.')); 409 414 } 410 415 if (!extension.isEmpty()) { 411 settings.remove(QLatin1 String("/") + extension + QLatin1String("/Content Type"));412 settings.remove(QLatin1 String("/") + extension + QLatin1String("/."));413 settings.remove(QLatin1 String("/") + extension);414 mime = mime.replace(QLatin1String("/"), QLatin1String("\\"));416 settings.remove(QLatin1Char('/') + extension + QLatin1String("/Content Type")); 417 settings.remove(QLatin1Char('/') + extension + QLatin1String("/.")); 418 settings.remove(QLatin1Char('/') + extension); 419 mime.replace(QLatin1Char('/'), QLatin1Char('\\')); 415 420 settings.remove(QLatin1String("/MIME/Database/Content Type/") + mime + QLatin1String("/Extension")); 416 421 settings.remove(QLatin1String("/MIME/Database/Content Type/") + mime + QLatin1String("/CLSID")); … … 456 461 { "QPixmap", "IPictureDisp*" }, 457 462 { "QVariant", "VARIANT" }, 458 { "QVariantList", "SAFEARRAY(VARIANT)" },459 { "QList<QVariant>", "SAFEARRAY(VARIANT)" },463 { "QVariantList", "SAFEARRAY(VARIANT)" }, 464 { "QList<QVariant>", "SAFEARRAY(VARIANT)" }, 460 465 { "quint64", "CY" }, 461 466 { "qint64", "CY" }, … … 465 470 { "QStringList", "SAFEARRAY(BSTR)" }, 466 471 // Userdefined Qt datatypes - some not on Borland though 467 { "QCursor", "enum MousePointer" },468 { "Qt::FocusPolicy", "enum FocusPolicy" },472 { "QCursor", "enum MousePointer" }, 473 { "Qt::FocusPolicy", "enum FocusPolicy" }, 469 474 #ifndef Q_CC_BOR 470 475 # if __REQUIRED_RPCNDR_H_VERSION__ >= Q_REQUIRED_RPCNDR_H_VERSION … … 579 584 if (mapping.contains(name)) { 580 585 int n = mapping.value(name); 581 newName = name + "_"+ QByteArray::number(n);586 newName = name + '_' + QByteArray::number(n); 582 587 mapping.insert(name, n+1); 583 588 } else { … … 687 692 QByteArray name(parameterNames.at(p)); 688 693 689 if (type.endsWith( "&")) {694 if (type.endsWith('&')) { 690 695 out = true; 691 696 type.truncate(type.length() - 1); … … 693 698 out = true; 694 699 type.truncate(type.length() - 1); 695 } else if (type.endsWith( "*") && !subtypes.contains(type)) {700 } else if (type.endsWith('*') && !subtypes.contains(type)) { 696 701 type.truncate(type.length() - 1); 697 702 } … … 702 707 type = convertTypes(type, ok); 703 708 if (!out) 704 prototype += "[in] " + type + " ";709 prototype += "[in] " + type + ' '; 705 710 else 706 prototype += "[in,out] " + type + " ";711 prototype += "[in,out] " + type + ' '; 707 712 708 713 if (out) 709 prototype += "*";714 prototype += '*'; 710 715 if (name.isEmpty()) 711 prototype += "p"+ QByteArray::number(p);716 prototype += 'p' + QByteArray::number(p); 712 717 else 713 718 prototype += "p_" + replaceKeyword(name); … … 729 734 int in = -1; 730 735 while (numDefArgs) { 731 in = ptype.lastIndexOf( "]", in);736 in = ptype.lastIndexOf(']', in); 732 737 ptype.replace(in, 1, ",optional]"); 733 738 in = ptype.indexOf(' ', in) + 1; 734 739 QByteArray type = ptype.mid(in, ptype.indexOf(' ', in) - in); 735 740 if (type == "enum") 736 type += " "+ ptype.mid(in + 5, ptype.indexOf(' ', in + 5) - in - 5);741 type += ' ' + ptype.mid(in + 5, ptype.indexOf(' ', in + 5) - in - 5); 737 742 ptype.replace(in, type.length(), QByteArray("VARIANT /*was: ") + type + "*/"); 738 743 --numDefArgs; … … 802 807 QByteArray key(enumerator.key(j)); 803 808 while (enumValues.contains(key)) { 804 key += "_";809 key += '_'; 805 810 } 806 811 enumValues.append(key); … … 823 828 enums.append("MousePointer"); 824 829 out << "\tenum MousePointer {" << endl; 825 out << "\t\tArrowCursor = " << Qt::ArrowCursor << ","<< endl;826 out << "\t\tUpArrowCursor = " << Qt::UpArrowCursor << ","<< endl;827 out << "\t\tCrossCursor = " << Qt::CrossCursor << ","<< endl;828 out << "\t\tWaitCursor = " << Qt::WaitCursor << ","<< endl;829 out << "\t\tIBeamCursor = " << Qt::IBeamCursor << ","<< endl;830 out << "\t\tSizeVerCursor = " << Qt::SizeVerCursor << ","<< endl;831 out << "\t\tSizeHorCursor = " << Qt::SizeHorCursor << ","<< endl;832 out << "\t\tSizeBDiagCursor = " << Qt::SizeBDiagCursor << ","<< endl;833 out << "\t\tSizeFDiagCursor = " << Qt::SizeFDiagCursor << ","<< endl;834 out << "\t\tSizeAllCursor = " << Qt::SizeAllCursor << ","<< endl;835 out << "\t\tBlankCursor = " << Qt::BlankCursor << ","<< endl;836 out << "\t\tSplitVCursor = " << Qt::SplitVCursor << ","<< endl;837 out << "\t\tSplitHCursor = " << Qt::SplitHCursor << ","<< endl;838 out << "\t\tPointingHandCursor = " << Qt::PointingHandCursor << ","<< endl;839 out << "\t\tForbiddenCursor = " << Qt::ForbiddenCursor << ","<< endl;840 out << "\t\tWhatsThisCursor = " << Qt::WhatsThisCursor << ","<< endl;830 out << "\t\tArrowCursor = " << Qt::ArrowCursor << ',' << endl; 831 out << "\t\tUpArrowCursor = " << Qt::UpArrowCursor << ',' << endl; 832 out << "\t\tCrossCursor = " << Qt::CrossCursor << ',' << endl; 833 out << "\t\tWaitCursor = " << Qt::WaitCursor << ',' << endl; 834 out << "\t\tIBeamCursor = " << Qt::IBeamCursor << ',' << endl; 835 out << "\t\tSizeVerCursor = " << Qt::SizeVerCursor << ',' << endl; 836 out << "\t\tSizeHorCursor = " << Qt::SizeHorCursor << ',' << endl; 837 out << "\t\tSizeBDiagCursor = " << Qt::SizeBDiagCursor << ',' << endl; 838 out << "\t\tSizeFDiagCursor = " << Qt::SizeFDiagCursor << ',' << endl; 839 out << "\t\tSizeAllCursor = " << Qt::SizeAllCursor << ',' << endl; 840 out << "\t\tBlankCursor = " << Qt::BlankCursor << ',' << endl; 841 out << "\t\tSplitVCursor = " << Qt::SplitVCursor << ',' << endl; 842 out << "\t\tSplitHCursor = " << Qt::SplitHCursor << ',' << endl; 843 out << "\t\tPointingHandCursor = " << Qt::PointingHandCursor << ',' << endl; 844 out << "\t\tForbiddenCursor = " << Qt::ForbiddenCursor << ',' << endl; 845 out << "\t\tWhatsThisCursor = " << Qt::WhatsThisCursor << ',' << endl; 841 846 out << "\t\tBusyCursor\t= " << Qt::BusyCursor << endl; 842 847 out << "\t};" << endl << endl; … … 845 850 enums.append("FocusPolicy"); 846 851 out << "\tenum FocusPolicy {" << endl; 847 out << "\t\tNoFocus = " << Qt::NoFocus << ","<< endl;848 out << "\t\tTabFocus = " << Qt::TabFocus << ","<< endl;849 out << "\t\tClickFocus = " << Qt::ClickFocus << ","<< endl;850 out << "\t\tStrongFocus = " << Qt::StrongFocus << ","<< endl;852 out << "\t\tNoFocus = " << Qt::NoFocus << ',' << endl; 853 out << "\t\tTabFocus = " << Qt::TabFocus << ',' << endl; 854 out << "\t\tClickFocus = " << Qt::ClickFocus << ',' << endl; 855 out << "\t\tStrongFocus = " << Qt::StrongFocus << ',' << endl; 851 856 out << "\t\tWheelFocus = " << Qt::WheelFocus << endl; 852 857 out << "\t};" << endl << endl; … … 878 883 out << "\t/****** Property is of unsupported datatype" << endl; 879 884 880 out << "\t\t[id(" << id << ")";885 out << "\t\t[id(" << id << ')'; 881 886 if (!property.isWritable()) 882 887 out << ", readonly"; … … 887 892 if (isBindable) 888 893 out << ", requestedit"; 889 if (defProp == Q String::fromLatin1(name.constData()))894 if (defProp == QLatin1String(name)) 890 895 out << ", uidefault"; 891 out << "] " << type << " " << name << ";"<< endl;896 out << "] " << type << ' ' << name << ';' << endl; 892 897 893 898 if (!ok) … … 940 945 outBuffer += "\t/****** Slot parameter uses unsupported datatype\n"; 941 946 942 outBuffer += "\t\t[id(" + QString::number(id).toLatin1() + ")] " + type + " " + name + "("+ ptype + ");\n";947 outBuffer += "\t\t[id(" + QString::number(id).toLatin1() + ")] " + type + ' ' + name + '(' + ptype + ");\n"; 943 948 944 949 if (!ok) … … 992 997 QList<QByteArray> parameterNames(signal.parameterNames()); 993 998 994 bool isDefault = defSignal == Q String::fromLatin1(name.constData());999 bool isDefault = defSignal == QLatin1String(name); 995 1000 name = renameOverloads(replaceKeyword(name)); 996 1001 bool ok = true; … … 1004 1009 out << "\t/****** Signal parameter uses unsupported datatype" << endl; 1005 1010 1006 out << "\t\t[id(" << id << ")";1011 out << "\t\t[id(" << id << ')'; 1007 1012 if (isDefault) 1008 1013 out << ", uidefault"; 1009 out << "] void " << name << "("<< ptype << ");" << endl;1014 out << "] void " << name << '(' << ptype << ");" << endl; 1010 1015 1011 1016 if (!ok) … … 1032 1037 if (classVersion) 1033 1038 out << "\t\tversion(" << classVersion << ")," << endl; 1034 out << "\t\tuuid(" << classID << ")";1039 out << "\t\tuuid(" << classID << ')'; 1035 1040 if (control) { 1036 1041 out << ", " << endl; … … 1044 1049 out << "\tcoclass " << cleanClassName << endl; 1045 1050 out << "\t{" << endl; 1046 out << "\t\t[default] dispinterface I" << cleanClassName << ";"<< endl;1051 out << "\t\t[default] dispinterface I" << cleanClassName << ';' << endl; 1047 1052 if (hasEvents) 1048 1053 out << "\t\t[default, source] dispinterface I" << cleanClassName << "Events;" << endl; … … 1068 1073 file.remove(); 1069 1074 1070 QString filebase = QString::from Local8Bit(qAxModuleFilename);1071 filebase = filebase.left(filebase.lastIndexOf(QLatin1 String(".")));1075 QString filebase = QString::fromWCharArray(qAxModuleFilename); 1076 filebase = filebase.left(filebase.lastIndexOf(QLatin1Char('.'))); 1072 1077 1073 1078 QString appID = qAxFactory()->appID().toString().toUpper(); … … 1104 1109 out << "** Interface definition generated for ActiveQt project" << endl; 1105 1110 out << "**" << endl; 1106 out << "** '" << qAxModuleFilename << "'"<< endl;1111 out << "** '" << QString::fromWCharArray(qAxModuleFilename) << '\'' << endl; 1107 1112 out << "**" << endl; 1108 1113 out << "** Created: " << QDateTime::currentDateTime().toString() << endl; … … 1122 1127 } 1123 1128 1124 out << "["<< endl;1129 out << '[' << endl; 1125 1130 out << "\tuuid(" << typeLibID << ")," << endl; 1126 1131 out << "\tversion(" << version << ")," << endl; 1127 out << "\thelpstring(\"" << typelib << " "<< version << " Type Library\")" << endl;1128 out << "]"<< endl;1132 out << "\thelpstring(\"" << typelib << ' ' << version << " Type Library\")" << endl; 1133 out << ']' << endl; 1129 1134 out << "library " << typelib << "Lib" << endl; 1130 out << "{"<< endl;1135 out << '{' << endl; 1131 1136 out << "\timportlib(\"stdole32.tlb\");" << endl; 1132 1137 out << "\timportlib(\"stdole2.tlb\");" << endl << endl; … … 1189 1194 if (mo) { 1190 1195 QByteArray cleanType = qax_clean_type(*key, mo).toLatin1(); 1191 out << "\tcoclass " << cleanType << ";"<< endl;1196 out << "\tcoclass " << cleanType << ';' << endl; 1192 1197 subtypes.append(cleanType); 1193 subtypes.append(cleanType + "*");1194 1198 qRegisterMetaType(cleanType, (void**)0); 1195 qRegisterMetaType(cleanType + "*", (void**)0); 1199 cleanType += '*'; 1200 subtypes.append(cleanType); 1201 qRegisterMetaType(cleanType, (void**)0); 1196 1202 } 1197 1203 } … … 1226 1232 QByteArray cleanType = qax_clean_type(*key, mo).toLatin1(); 1227 1233 subtypes.append(cleanType); 1228 subtypes.append(cleanType + "*");1234 subtypes.append(cleanType + '*'); 1229 1235 res = classIDL(o, mo, QString::fromLatin1(className.constData()), isBindable, out); 1230 1236 delete o; -
trunk/src/activeqt/control/qaxserverbase.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 789 790 while (!axbase && baseHwnd) { 790 791 #ifdef GWLP_USERDATA 791 QT_WA({ 792 axbase = (QAxServerBase*)GetWindowLongPtrW(baseHwnd, GWLP_USERDATA); 793 }, { 794 axbase = (QAxServerBase*)GetWindowLongPtrA(baseHwnd, GWLP_USERDATA); 795 }); 792 axbase = (QAxServerBase*)GetWindowLongPtr(baseHwnd, GWLP_USERDATA); 796 793 #else 797 QT_WA({ 798 axbase = (QAxServerBase*)GetWindowLongW(baseHwnd, GWL_USERDATA); 799 }, { 800 axbase = (QAxServerBase*)GetWindowLongA(baseHwnd, GWL_USERDATA); 801 }); 794 axbase = (QAxServerBase*)GetWindowLong(baseHwnd, GWL_USERDATA); 802 795 #endif 803 796 … … 906 899 // hook into eventloop; this allows a server to create his own QApplication object 907 900 if (!qax_hhook && qax_ownQApp) { 908 QT_WA({ 909 qax_hhook = SetWindowsHookExW(WH_GETMESSAGE, axs_FilterProc, 0, GetCurrentThreadId()); 910 }, { 911 qax_hhook = SetWindowsHookExA(WH_GETMESSAGE, axs_FilterProc, 0, GetCurrentThreadId()); 912 }); 901 qax_hhook = SetWindowsHookEx(WH_GETMESSAGE, axs_FilterProc, 0, GetCurrentThreadId()); 913 902 } 914 903 … … 984 973 HRESULT WINAPI CreateInstanceLic(IUnknown *pUnkOuter, IUnknown *pUnkReserved, REFIID iid, BSTR bKey, PVOID *ppObject) 985 974 { 986 QString licenseKey = QString::from Utf16((const ushort *)bKey);975 QString licenseKey = QString::fromWCharArray(bKey); 987 976 if (!qAxFactory()->validateLicenseKey(className, licenseKey)) 988 977 return CLASS_E_NOTLICENSED; … … 1304 1293 internalBind(); 1305 1294 if (isWidget) { 1306 if (!stayTopLevel) { 1307 QEvent e(QEvent::EmbeddingControl); 1308 QApplication::sendEvent(qt.widget, &e); 1309 QT_WA({ 1310 ::SetWindowLongW(qt.widget->winId(), GWL_STYLE, WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS); 1311 }, { 1312 ::SetWindowLongA(qt.widget->winId(), GWL_STYLE, WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS); 1313 }); 1314 } 1295 if (!stayTopLevel) { 1296 QEvent e(QEvent::EmbeddingControl); 1297 QApplication::sendEvent(qt.widget, &e); 1298 ::SetWindowLong(qt.widget->winId(), GWL_STYLE, WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS); 1299 } 1315 1300 qt.widget->setAttribute(Qt::WA_QuitOnClose, false); 1316 1301 qt.widget->move(0, 0); … … 1369 1354 { 1370 1355 if (uMsg == WM_CREATE) { 1371 QAxServerBase *that; 1372 QT_WA({ 1373 CREATESTRUCTW *cs = (CREATESTRUCTW*)lParam; 1374 that = (QAxServerBase*)cs->lpCreateParams; 1375 }, { 1376 CREATESTRUCTA *cs = (CREATESTRUCTA*)lParam; 1377 that = (QAxServerBase*)cs->lpCreateParams; 1378 }); 1356 CREATESTRUCT *cs = (CREATESTRUCT*)lParam; 1357 QAxServerBase *that = (QAxServerBase*)cs->lpCreateParams; 1379 1358 1380 1359 #ifdef GWLP_USERDATA 1381 QT_WA({ 1382 SetWindowLongPtrW(hWnd, GWLP_USERDATA, (LONG_PTR)that); 1383 }, { 1384 SetWindowLongPtrA(hWnd, GWLP_USERDATA, (LONG_PTR)that); 1385 }); 1360 SetWindowLongPtr(hWnd, GWLP_USERDATA, (LONG_PTR)that); 1386 1361 #else 1387 QT_WA({ 1388 SetWindowLongW(hWnd, GWL_USERDATA, (LONG)that); 1389 }, { 1390 SetWindowLongA(hWnd, GWL_USERDATA, (LONG)that); 1391 }); 1362 SetWindowLong(hWnd, GWL_USERDATA, (LONG)that); 1392 1363 #endif 1393 1364 1394 that->m_hWnd = hWnd; 1395 1396 QT_WA({ 1397 return ::DefWindowProcW(hWnd, uMsg, wParam, lParam); 1398 }, { 1399 return ::DefWindowProcA(hWnd, uMsg, wParam, lParam); 1400 }); 1365 that->m_hWnd = hWnd; 1366 1367 return ::DefWindowProc(hWnd, uMsg, wParam, lParam); 1401 1368 } 1402 1369 … … 1404 1371 1405 1372 #ifdef GWLP_USERDATA 1406 QT_WA({ 1407 that = (QAxServerBase*)GetWindowLongPtrW(hWnd, GWLP_USERDATA); 1408 }, { 1409 that = (QAxServerBase*)GetWindowLongPtrA(hWnd, GWLP_USERDATA); 1410 }); 1373 that = (QAxServerBase*)GetWindowLongPtr(hWnd, GWLP_USERDATA); 1411 1374 #else 1412 QT_WA({ 1413 that = (QAxServerBase*)GetWindowLongW(hWnd, GWL_USERDATA); 1414 }, { 1415 that = (QAxServerBase*)GetWindowLongA(hWnd, GWL_USERDATA); 1416 }); 1375 that = (QAxServerBase*)GetWindowLong(hWnd, GWL_USERDATA); 1417 1376 #endif 1418 1377 … … 1564 1523 } 1565 1524 1566 QT_WA({ 1567 return ::DefWindowProcW(hWnd, uMsg, wParam, lParam); 1568 }, { 1569 return ::DefWindowProcA(hWnd, uMsg, wParam, lParam); 1570 }); 1525 return ::DefWindowProc(hWnd, uMsg, wParam, lParam); 1571 1526 } 1572 1527 … … 1584 1539 cn += QString::number((int)ActiveXProc); 1585 1540 if (!atom) { 1586 QT_WA({ 1587 WNDCLASSW wcTemp; 1588 wcTemp.style = CS_DBLCLKS; 1589 wcTemp.cbClsExtra = 0; 1590 wcTemp.cbWndExtra = 0; 1591 wcTemp.hbrBackground = 0; 1592 wcTemp.hCursor = 0; 1593 wcTemp.hIcon = 0; 1594 wcTemp.hInstance = hInst; 1595 wcTemp.lpszClassName = (wchar_t*)cn.utf16(); 1596 wcTemp.lpszMenuName = 0; 1597 wcTemp.lpfnWndProc = ActiveXProc; 1598 1599 atom = RegisterClassW(&wcTemp); 1600 }, { 1601 QByteArray cna = cn.toLatin1(); 1602 WNDCLASSA wcTemp; 1603 wcTemp.style = CS_DBLCLKS; 1604 wcTemp.cbClsExtra = 0; 1605 wcTemp.cbWndExtra = 0; 1606 wcTemp.hbrBackground = 0; 1607 wcTemp.hCursor = 0; 1608 wcTemp.hIcon = 0; 1609 wcTemp.hInstance = hInst; 1610 wcTemp.lpszClassName = cna.data(); 1611 wcTemp.lpszMenuName = 0; 1612 wcTemp.lpfnWndProc = ActiveXProc; 1613 1614 atom = RegisterClassA(&wcTemp); 1615 }); 1541 WNDCLASS wcTemp; 1542 wcTemp.style = CS_DBLCLKS; 1543 wcTemp.cbClsExtra = 0; 1544 wcTemp.cbWndExtra = 0; 1545 wcTemp.hbrBackground = 0; 1546 wcTemp.hCursor = 0; 1547 wcTemp.hIcon = 0; 1548 wcTemp.hInstance = hInst; 1549 wcTemp.lpszClassName = (wchar_t*)cn.utf16(); 1550 wcTemp.lpszMenuName = 0; 1551 wcTemp.lpfnWndProc = ActiveXProc; 1552 1553 atom = RegisterClass(&wcTemp); 1616 1554 } 1617 1555 LeaveCriticalSection(&createWindowSection); … … 1620 1558 1621 1559 Q_ASSERT(!m_hWnd); 1622 HWND hWnd = 0; 1623 QT_WA({ 1624 hWnd = ::CreateWindowW((wchar_t*)cn.utf16(), 0, 1625 WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 1626 rcPos.left, rcPos.top, rcPos.right - rcPos.left, 1627 rcPos.bottom - rcPos.top, hWndParent, 0, hInst, this); 1628 }, { 1629 hWnd = ::CreateWindowA(cn.toLatin1().data(), 0, 1630 WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 1631 rcPos.left, rcPos.top, rcPos.right - rcPos.left, 1632 rcPos.bottom - rcPos.top, hWndParent, 0, hInst, this); 1633 }); 1560 HWND hWnd = ::CreateWindow((wchar_t*)cn.utf16(), 0, 1561 WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS, 1562 rcPos.left, rcPos.top, rcPos.right - rcPos.left, 1563 rcPos.bottom - rcPos.top, hWndParent, 0, hInst, this); 1634 1564 1635 1565 Q_ASSERT(m_hWnd == hWnd); … … 1677 1607 actionMap.insert(itemId, action); 1678 1608 } 1679 QT_WA({ 1680 AppendMenuW(popupMenu, flags, itemId, (TCHAR*)action->text().utf16()); 1681 }, { 1682 AppendMenuA(popupMenu, flags, itemId, action->text().toLocal8Bit()); 1683 }); 1609 AppendMenu(popupMenu, flags, itemId, (const wchar_t *)action->text().utf16()); 1684 1610 } 1685 1611 if (oldMenu) … … 1727 1653 actionMap.insert(itemId, action); 1728 1654 } 1729 QT_WA({ 1730 AppendMenuW(hmenuShared, flags, itemId, (TCHAR*)action->text().utf16()); 1731 } , { 1732 AppendMenuA(hmenuShared, flags, itemId, action->text().toLocal8Bit()); 1733 }); 1655 AppendMenu(hmenuShared, flags, itemId, (const wchar_t *)action->text().utf16()); 1734 1656 } 1735 1657 … … 2398 2320 return res; 2399 2321 2400 name = QString::from Utf16((const ushort *)bname).toLatin1();2322 name = QString::fromWCharArray(bname).toLatin1(); 2401 2323 SysFreeString(bname); 2402 2324 } … … 2447 2369 if (index == -1) { 2448 2370 nameLength = name.length(); 2449 name += "(";2371 name += '('; 2450 2372 // no parameter - shortcut 2451 2373 if (!pDispParams->cArgs) 2452 index = mo->indexOfSlot((name + ")"));2374 index = mo->indexOfSlot((name + ')')); 2453 2375 // search 2454 2376 if (index == -1) { … … 2464 2386 QRegExp regexp(QLatin1String("_([0-9])\\(")); 2465 2387 if (regexp.lastIndexIn(QString::fromLatin1(name.constData())) != -1) { 2466 name = name.left(name.length() - regexp.cap(0).length()) + "(";2388 name = name.left(name.length() - regexp.cap(0).length()) + '('; 2467 2389 int overload = regexp.cap(1).toInt() + 1; 2468 2390 … … 2560 2482 } else { 2561 2483 argv[p + 1] = const_cast<void*>(varp[p + 1].constData()); 2562 if (ptype.endsWith( "*")) {2484 if (ptype.endsWith('*')) { 2563 2485 argv_pointer[p + 1] = argv[p + 1]; 2564 2486 argv[p + 1] = argv_pointer + p + 1; … … 2591 2513 argv[0] = const_cast<void*>(varp[0].constData()); 2592 2514 } 2593 if (type.endsWith( "*")) {2515 if (type.endsWith('*')) { 2594 2516 argv_pointer[0] = argv[0]; 2595 2517 argv[0] = argv_pointer; … … 2800 2722 QByteArray qtarray; 2801 2723 if (hres == S_OK) { 2802 QString streamName = QString::from Utf16((const ushort *)stat.pwcsName);2724 QString streamName = QString::fromWCharArray(stat.pwcsName); 2803 2725 CoTaskMemFree(stat.pwcsName); 2804 2726 openAsText = streamName == QLatin1String("SomeStreamName"); … … 2941 2863 streamName += QLatin1String("_Stream4.2"); 2942 2864 2943 pStg->OpenStream((const WCHAR*)streamName.utf16(), 0, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &spStream);2865 pStg->OpenStream((const wchar_t *)streamName.utf16(), 0, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &spStream); 2944 2866 if (!spStream) // support for streams saved with 4.1 and earlier 2945 2867 pStg->OpenStream(L"SomeStreamName", 0, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &spStream); … … 2964 2886 streamName += QLatin1String("_Stream4.2"); 2965 2887 2966 pStg->CreateStream((const WCHAR*)streamName.utf16(), STGM_CREATE | STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &spStream);2888 pStg->CreateStream((const wchar_t *)streamName.utf16(), STGM_CREATE | STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &spStream); 2967 2889 if (!spStream) 2968 2890 return E_FAIL; … … 3080 3002 return E_NOTIMPL; 3081 3003 3082 currentFileName = QString::from Utf16(reinterpret_cast<const ushort *>(fileName));3004 currentFileName = QString::fromWCharArray(fileName); 3083 3005 return S_OK; 3084 3006 } … … 3098 3020 return E_OUTOFMEMORY; 3099 3021 3100 *currentFile = static_cast< WCHAR*>(malloc->Alloc(currentFileName.length() * 2));3022 *currentFile = static_cast<wchar_t *>(malloc->Alloc(currentFileName.length() * 2)); 3101 3023 malloc->Release(); 3102 3024 memcpy(*currentFile, currentFileName.unicode(), currentFileName.length() * 2); … … 3118 3040 } 3119 3041 3120 QString loadFileName = QString::from Utf16(reinterpret_cast<const ushort *>(fileName));3042 QString loadFileName = QString::fromWCharArray(fileName); 3121 3043 QString fileExtension = loadFileName.mid(loadFileName.lastIndexOf(QLatin1Char('.')) + 1); 3122 3044 QFile file(loadFileName); … … 3163 3085 } 3164 3086 3165 QString saveFileName = QString::from Utf16(reinterpret_cast<const ushort *>(fileName));3087 QString saveFileName = QString::fromWCharArray(fileName); 3166 3088 QString fileExtension = saveFileName.mid(saveFileName.lastIndexOf(QLatin1Char('.')) + 1); 3167 3089 QFile file(saveFileName); … … 3221 3143 bool bDeleteDC = false; 3222 3144 if (!hicTargetDev) { 3223 hicTargetDev = ::CreateDC A("DISPLAY", NULL, NULL, NULL);3145 hicTargetDev = ::CreateDC(L"DISPLAY", NULL, NULL, NULL); 3224 3146 bDeleteDC = (hicTargetDev != hdcDraw); 3225 3147 } … … 3384 3306 if (var.vt != VT_BSTR || !isWidget) 3385 3307 break; 3386 qt.widget->setWindowTitle(QString::from Utf16((const ushort *)var.bstrVal));3308 qt.widget->setWindowTitle(QString::fromWCharArray(var.bstrVal)); 3387 3309 break; 3388 3310 case DISPID_AMBIENT_FONT: … … 3582 3504 { 3583 3505 if (pMsg->message != WM_KEYDOWN || !isWidget) 3584 3506 return S_FALSE; 3585 3507 3586 3508 DWORD dwKeyMod = 0; 3587 3509 if (::GetKeyState(VK_SHIFT) < 0) 3588 3510 dwKeyMod |= 1; // KEYMOD_SHIFT 3589 3511 if (::GetKeyState(VK_CONTROL) < 0) 3590 3512 dwKeyMod |= 2; // KEYMOD_CONTROL 3591 3513 if (::GetKeyState(VK_MENU) < 0) 3592 3514 dwKeyMod |= 4; // KEYMOD_ALT 3593 3515 3594 3516 switch (LOWORD(pMsg->wParam)) { 3595 3517 case VK_TAB: 3596 3597 3598 3518 if (isUIActive) { 3519 bool shift = ::GetKeyState(VK_SHIFT) < 0; 3520 bool giveUp = true; 3599 3521 QWidget *curFocus = qt.widget->focusWidget(); 3600 3522 if (curFocus) { 3601 3523 if (shift) { 3602 3524 if (!curFocus->isWindow()) { 3603 3525 QWidget *nextFocus = curFocus->nextInFocusChain(); … … 3617 3539 giveUp = false; 3618 3540 ((HackWidget*)curFocus)->focusNextPrevChild(false); 3541 curFocus->window()->setAttribute(Qt::WA_KeyboardFocusChange); 3619 3542 } 3620 3543 } 3621 3544 } else { 3622 3545 QWidget *nextFocus = curFocus; 3623 3546 while (1) { … … 3628 3551 giveUp = false; 3629 3552 ((HackWidget*)curFocus)->focusNextPrevChild(true); 3553 curFocus->window()->setAttribute(Qt::WA_KeyboardFocusChange); 3630 3554 break; 3631 3555 } 3632 3556 } 3633 3557 } 3634 3558 } 3635 3636 3637 3638 3639 3640 3641 3642 3643 3559 if (giveUp) { 3560 HWND hwnd = ::GetParent(m_hWnd); 3561 ::SetFocus(hwnd); 3562 } else { 3563 return S_OK; 3564 } 3565 3566 } 3567 break; 3644 3568 3645 3569 case VK_LEFT: … … 3647 3571 case VK_UP: 3648 3572 case VK_DOWN: 3649 3650 3651 3573 if (isUIActive) 3574 return S_FALSE; 3575 break; 3652 3576 3653 3577 default: 3654 3578 if (isUIActive && qt.widget->focusWidget()) { 3655 3579 int state = Qt::NoButton; 3656 3657 3658 3659 3660 3661 3662 3663 3580 if (dwKeyMod & 1) 3581 state |= Qt::ShiftModifier; 3582 if (dwKeyMod & 2) 3583 state |= Qt::ControlModifier; 3584 if (dwKeyMod & 4) 3585 state |= Qt::AltModifier; 3586 3587 int key = pMsg->wParam; 3664 3588 if (!(key >= 'A' && key <= 'Z') && !(key >= '0' && key <= '9')) 3665 3589 key = qt_translateKeyCode(pMsg->wParam); 3666 3590 3667 3668 3669 3670 3671 3672 3673 3591 QKeyEvent override(QEvent::ShortcutOverride, key, (Qt::KeyboardModifiers)state); 3592 override.ignore(); 3593 QApplication::sendEvent(qt.widget->focusWidget(), &override); 3594 if (override.isAccepted()) 3595 return S_FALSE; 3596 } 3597 break; 3674 3598 } 3675 3599 3676 3600 if (!m_spClientSite) 3677 3601 return S_FALSE; 3678 3602 3679 3603 IOleControlSite *controlSite = 0; 3680 3604 m_spClientSite->QueryInterface(IID_IOleControlSite, (void**)&controlSite); 3681 3605 if (!controlSite) 3682 return S_FALSE; 3683 3606 return S_FALSE; 3607 bool resetUserData = false; 3608 // set server type in the user-data of the window. 3609 #ifdef GWLP_USERDATA 3610 LONG_PTR serverType = QAX_INPROC_SERVER; 3611 #else 3612 LONG serverType = QAX_INPROC_SERVER; 3613 #endif 3614 if (qAxOutProcServer) 3615 serverType = QAX_OUTPROC_SERVER; 3616 #ifdef GWLP_USERDATA 3617 LONG_PTR oldData = SetWindowLongPtr(pMsg->hwnd, GWLP_USERDATA, serverType); 3618 #else 3619 LONG oldData = SetWindowLong(pMsg->hwnd, GWL_USERDATA, serverType); 3620 #endif 3684 3621 HRESULT hres = controlSite->TranslateAcceleratorW(pMsg, dwKeyMod); 3685 3686 3622 controlSite->Release(); 3687 3623 // reset the user-data for the window. 3624 #ifdef GWLP_USERDATA 3625 SetWindowLongPtr(pMsg->hwnd, GWLP_USERDATA, oldData); 3626 #else 3627 SetWindowLong(pMsg->hwnd, GWL_USERDATA, oldData); 3628 #endif 3688 3629 return hres; 3689 3630 } -
trunk/src/activeqt/control/qaxserverdll.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 51 52 52 53 // in qaxserver.cpp 53 extern charqAxModuleFilename[MAX_PATH];54 extern wchar_t qAxModuleFilename[MAX_PATH]; 54 55 extern bool qAxIsServer; 55 56 extern ITypeLib *qAxTypeLibrary; … … 121 122 EXTERN_C BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpvReserved) 122 123 { 123 GetModuleFileName A(hInstance, qAxModuleFilename, MAX_PATH-1);124 GetModuleFileName(hInstance, qAxModuleFilename, MAX_PATH); 124 125 qAxInstance = hInstance; 125 126 qAxIsServer = true; -
trunk/src/activeqt/control/qaxservermain.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 67 68 extern bool qAxIsServer; 68 69 extern bool qAxOutProcServer; 69 extern charqAxModuleFilename[MAX_PATH];70 extern wchar_t qAxModuleFilename[MAX_PATH]; 70 71 extern QString qAxInit(); 71 72 extern void qAxCleanup(); … … 106 107 { 107 108 dwThreadID = GetCurrentThreadId(); 108 hEventShutdown = CreateEvent A(0, false, false, 0);109 hEventShutdown = CreateEvent(0, false, false, 0); 109 110 if (hEventShutdown == 0) 110 111 return false; … … 204 205 205 206 qAxOutProcServer = true; 206 GetModuleFileName A(0, qAxModuleFilename, MAX_PATH-1);207 GetModuleFileName(0, qAxModuleFilename, MAX_PATH); 207 208 qAxInstance = hInstance; 208 209 209 QByteArray cmdParam; 210 QT_WA({ 211 LPTSTR cmdline = GetCommandLineW(); 212 cmdParam = QString::fromUtf16((const ushort *)cmdline).toLocal8Bit(); 213 }, { 214 cmdParam = GetCommandLineA(); 215 }); 216 210 QByteArray cmdParam = QString::fromWCharArray(GetCommandLine()).toLocal8Bit(); 217 211 QList<QByteArray> cmds = cmdParam.split(' '); 218 212 QByteArray unprocessed; … … 254 248 break; 255 249 } else { 256 unprocessed += cmds.at(i) + " ";250 unprocessed += cmds.at(i) + ' '; 257 251 } 258 252 } -
trunk/src/activeqt/shared/qaxtypes.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 38 39 ****************************************************************************/ 39 40 40 #ifndef UNICODE41 #define UNICODE42 #endif43 44 45 41 #include <ocidl.h> 46 42 #include <olectl.h> … … 124 120 f->get_Underline(&underline); 125 121 f->get_Weight(&weight); 126 QFont font(QString::from Utf16((const ushort *)name), size.Lo/9750, weight / 97, italic);122 QFont font(QString::fromWCharArray(name), size.Lo/9750, weight / 97, italic); 127 123 font.setBold(bold); 128 124 font.setStrikeOut(strike); … … 558 554 if (maxColumns) { 559 555 is2D = true; 560 SAFEARRAYBOUND rgsabound[2] = { 0};556 SAFEARRAYBOUND rgsabound[2] = { {0} }; 561 557 rgsabound[0].cElements = count; 562 558 rgsabound[1].cElements = maxColumns; … … 926 922 switch(arg.vt) { 927 923 case VT_BSTR: 928 var = QString::from Utf16((const ushort *)arg.bstrVal);924 var = QString::fromWCharArray(arg.bstrVal); 929 925 break; 930 926 case VT_BSTR|VT_BYREF: 931 var = QString::from Utf16((const ushort *)*arg.pbstrVal);927 var = QString::fromWCharArray(*arg.pbstrVal); 932 928 break; 933 929 case VT_BOOL: … … 1112 1108 QObject *qObj = iface->qObject(); 1113 1109 iface->Release(); 1114 var = QVariant(qRegisterMetaType<QObject*>(qObj ? QByteArray(qObj->metaObject()->className()) + "*": typeName), &qObj);1110 var = QVariant(qRegisterMetaType<QObject*>(qObj ? QByteArray(qObj->metaObject()->className()) + '*' : typeName), &qObj); 1115 1111 } else 1116 1112 #endif … … 1246 1242 BSTR bstr; 1247 1243 SafeArrayGetElement(array, &i, &bstr); 1248 strings << QString::from Utf16((const ushort *)bstr);1244 strings << QString::fromWCharArray(bstr); 1249 1245 SysFreeString(bstr); 1250 1246 } -
trunk/src/activeqt/shared/qaxtypes.h
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the ActiveQt framework of the Qt Toolkit. … … 90 91 extern void clearVARIANT(VARIANT *var); 91 92 93 #define QAX_INPROC_SERVER (0x51540001) 94 #define QAX_OUTPROC_SERVER (0x51540002) 95 92 96 QT_END_NAMESPACE 93 97 #endif // QT_NO_WIN_ACTIVEQT
Note:
See TracChangeset
for help on using the changeset viewer.