- Timestamp:
- Oct 17, 2009, 1:26:01 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/gui/kernel/qapplication_pm.cpp
r225 r239 148 148 }; 149 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 150 234 static void qt_set_pm_resources() 151 235 { 152 // @todo later: take colors, fonts, etc. from the system theme 236 QFont menuFont = qt_sysfont2qfont("Menus"); 237 QFont iconFont = qt_sysfont2qfont("IconText"); 238 QFont titleFont = qt_sysfont2qfont("WindowTitles"); 239 240 QApplication::setFont(menuFont, "QMenu"); 241 QApplication::setFont(menuFont, "QMenuBar"); 242 QApplication::setFont(titleFont, "Q3TitleBar"); 243 QApplication::setFont(titleFont, "QWorkspaceTitleBar"); 244 QApplication::setFont(iconFont, "QAbstractItemView"); 245 QApplication::setFont(iconFont, "QDockWidgetTitle"); 246 247 QPalette pal; 248 249 pal.setColor(QPalette::WindowText, 250 QColor(qt_sysclr2qrgb(SYSCLR_WINDOWTEXT))); 251 pal.setColor(QPalette::Window, 252 QColor(qt_sysclr2qrgb(SYSCLR_DIALOGBACKGROUND))); 253 pal.setColor(QPalette::ButtonText, 254 QColor(qt_sysclr2qrgb(SYSCLR_MENUTEXT))); 255 pal.setColor(QPalette::Button, 256 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONMIDDLE))); 257 pal.setColor(QPalette::Light, 258 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONLIGHT))); 259 pal.setColor(QPalette::Dark, 260 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONDARK))); 261 pal.setColor(QPalette::Midlight, 262 QColor((pal.light().color().red() + pal.button().color().red()) / 2, 263 (pal.light().color().green() + pal.button().color().green()) / 2, 264 (pal.light().color().blue() + pal.button().color().blue()) / 2)); 265 pal.setColor(QPalette::Mid, 266 QColor((pal.dark().color().red() + pal.button().color().red()) / 2, 267 (pal.dark().color().green() + pal.button().color().green()) / 2, 268 (pal.dark().color().blue() + pal.button().color().blue()) / 2)); 269 pal.setColor(QPalette::Shadow, // note: SYSCLR_SHADOW often = SYSCLR_BUTTONDARK 270 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONDEFAULT))); 271 pal.setColor(QPalette::Text, 272 QColor(qt_sysclr2qrgb(SYSCLR_WINDOWTEXT))); 273 pal.setColor(QPalette::Base, 274 QColor(qt_sysclr2qrgb(SYSCLR_ENTRYFIELD))); 275 pal.setColor(QPalette::BrightText, 276 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONLIGHT))); 277 pal.setColor(QPalette::Highlight, 278 QColor(qt_sysclr2qrgb(SYSCLR_HILITEBACKGROUND))); 279 pal.setColor(QPalette::HighlightedText, 280 QColor(qt_sysclr2qrgb(SYSCLR_HILITEFOREGROUND))); 281 // these colors are not present in the PM system palette 282 pal.setColor(QPalette::Link, Qt::blue); 283 pal.setColor(QPalette::LinkVisited, Qt::magenta); 284 285 // disabled colors 286 // note: it should be SYSCLR_MENUDISABLEDTEXT but many styles use etched 287 // appearance for disabled elements (in combination with QPalette::Light) 288 // which gives weakly readable text. Make it somewhat darker. 289 pal.setColor(QPalette::Disabled, QPalette::WindowText, 290 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONDARK))); 291 pal.setColor(QPalette::Disabled, QPalette::ButtonText, 292 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONDARK))); 293 pal.setColor(QPalette::Disabled, QPalette::Text, 294 QColor(qt_sysclr2qrgb(SYSCLR_BUTTONDARK))); 295 296 QApplicationPrivate::setSystemPalette(pal); 297 298 // special palete: menus 299 QPalette spal = pal; 300 spal.setColor(QPalette::Window, 301 QColor(qt_sysclr2qrgb(SYSCLR_MENU))); 302 spal.setColor(QPalette::WindowText, 303 QColor(qt_sysclr2qrgb(SYSCLR_MENUTEXT))); 304 spal.setColor(QPalette::Highlight, 305 QColor(qt_sysclr2qrgb( SYSCLR_MENUHILITEBGND))); 306 spal.setColor(QPalette::HighlightedText, 307 QColor(qt_sysclr2qrgb(SYSCLR_MENUHILITE))); 308 309 QApplication::setPalette(spal, "QMenu"); 310 QApplication::setPalette(spal, "QMenuBar"); 311 312 // special palete: static widget text 313 spal = pal; 314 QColor staticTextCol(qt_sysclr2qrgb( SYSCLR_WINDOWSTATICTEXT)); 315 spal.setColor(QPalette::WindowText, staticTextCol); 316 spal.setColor(QPalette::Text, staticTextCol); 317 318 QApplication::setPalette(spal, "QLabel"); 319 QApplication::setPalette(spal, "QGroupBox"); 153 320 }; 154 321 … … 194 361 qApp->setObjectName(priv->appName()); 195 362 196 // default font (HELV.PFB series should always be present) 197 QApplicationPrivate::setSystemFont(QFont(QLatin1String("Helvetica"), 10)); 363 // @todo search for QTPM_USE_WINDOWFONT in Qt3 for OS/2 sources for a 364 // discussion on whether to use PM_Fonts/DefaultFont or WindowText as the 365 // default one. So far, the latter is used. 366 QApplicationPrivate::setSystemFont(qt_sysfont2qfont("WindowText")); 198 367 199 368 // QFont::locale_init(); ### Uncomment when it does something on OS/2 … … 2074 2243 USHORT vk = SHORT2FROMMP(qmsg.mp2); 2075 2244 str += QString(). 2076 sprintf(" rep %02d scan %02X ch %04X (% ls) vk %04X",2245 sprintf(" rep %02d scan %02X ch %04X (%s) vk %04X", 2077 2246 repeat, scan, ch, (ch > 32 && ch < 254) ? 2078 QString::fromLocal8Bit((char *)&ch, 1).utf16() :2079 QString(QChar(' ')).utf16(), vk);2247 ) : 2248 ), vk); 2080 2249 QString flstr; 2081 2250 myDefFlagEx(fl, KC_CHAR, flstr, "CHAR");
Note:
See TracChangeset
for help on using the changeset viewer.