QString QActionProto::whatsThis() const { QAction *item = qscriptvalue_cast<QAction*>(thisObject()); if (item) return item->whatsThis(); return QString(); }
KoGroupButton *addViewButton(KoGroupButton::GroupPosition pos, Kexi::ViewMode mode, QWidget *parent, const char *slot, const QString &text, QHBoxLayout *btnLyr) { if (!window->supportsViewMode(mode)) { return 0; } QAction *a = new KexiToggleViewModeAction(mode, q); toggleViewModeActions.insert(mode, a); KoGroupButton *btn = new KoGroupButton(pos, parent); toggleViewModeButtons.insert(mode, btn); connect(btn, SIGNAL(toggled(bool)), q, slot); btn->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); btn->setText(text); btn->setIcon(a->icon()); QFont f(KGlobalSettings::toolBarFont()); f.setPixelSize(KexiUtils::smallFont().pixelSize()); btn->setFont(f); btn->setToolTip(a->toolTip()); btn->setWhatsThis(a->whatsThis()); btn->setCheckable(true); btn->setAutoRaise(true); btnLyr->addWidget(btn); return btn; }
void TopLevel::retranslateUi() { setPlainCaption( i18n( "System Monitor" ) ); mRefreshTabAction->setText(i18n("&Refresh Tab")); mNewWorksheetAction->setText(i18n( "&New Tab..." )); mInsertWorksheetAction->setText(i18n( "Import Tab Fr&om File..." )); mTabExportAction->setText( i18n( "Save Tab &As..." ) ); mTabRemoveAction->setText( i18n( "&Close Tab" ) ); mMonitorRemoteAction->setText( i18n( "Monitor &Remote Machine..." ) ); mHotNewWorksheetAction->setText( i18n( "&Download New Tabs..." ) ); mHotNewWorksheetUploadAction->setText( i18n( "&Upload Current Tab..." ) ); mConfigureSheetAction->setText( i18n( "Tab &Properties" ) ); if(mQuitAction) { QAction *tmpQuitAction = KStandardAction::quit( NULL, NULL, NULL ); mQuitAction->setText(tmpQuitAction->text()); mQuitAction->setWhatsThis(tmpQuitAction->whatsThis()); mQuitAction->setToolTip(tmpQuitAction->toolTip()); delete tmpQuitAction; } else mQuitAction = KStandardAction::quit( this, SLOT(close()), actionCollection() ); }
bool RunWdgView::event( QEvent *event ) { //> Force event's process switch(event->type()) { case QEvent::Paint: if(permView()) break; //> Paint message about access denied if(dynamic_cast<RunPageView*>(this)) { QPainter pnt(this); //>> Fill page and draw border pnt.fillRect(rect(),QBrush(QColor("black"),Qt::Dense4Pattern)); pnt.setPen(QPen(QBrush(QColor("black")),1)); pnt.drawRect(rect().adjusted(0,0,-1,-1)); //>> Draw message QTextOption to; pnt.setPen(QColor("red")); to.setAlignment(Qt::AlignCenter); to.setWrapMode(QTextOption::WordWrap); if( rect().width() > 500 && rect().height() > 100 ) { QFont cfnt = pnt.font(); cfnt.setPointSize( 16 ); pnt.setFont( cfnt ); } pnt.drawText(rect(),QString(_("Page: '%1'.\nView access is not permitted.")).arg(id().c_str()),to); } return true; case QEvent::MouseButtonRelease: if(((QMouseEvent*)event)->button() == Qt::RightButton && !property("contextMenu").toString().isEmpty() && property("active").toBool() && permCntr() && isVisible(mapFromGlobal(cursor().pos()))) { QAction *actTmp; QMenu popup; string sln; for(int off = 0; (sln=TSYS::strSepParse(property("contextMenu").toString().toAscii().data(),0,'\n',&off)).size(); ) { actTmp = new QAction(TSYS::strSepParse(sln,0,':').c_str(),this); actTmp->setWhatsThis(TSYS::strSepParse(sln,1,':').c_str()); popup.addAction(actTmp); } if(!popup.isEmpty()) { actTmp = popup.exec(QCursor::pos()); if(actTmp && !actTmp->whatsThis().isEmpty()) attrSet("event","usr_"+actTmp->whatsThis().toStdString()); popup.clear(); return true; } } break; default: break; } //> Call to shape for event process if(WdgView::event(event) || (shape&&shape->event(this,event))) return true; //> Key events process for send to model string mod_ev; map<string,string> attrs; if(property("active").toBool() && permCntr()) switch(event->type()) { case QEvent::Paint: return true; case QEvent::KeyPress: mod_ev = "key_pres"; case QEvent::KeyRelease: if(((QKeyEvent*)event)->key() == Qt::Key_Tab) { mod_ev = ""; break; } if(mod_ev.empty()) mod_ev = "key_rels"; if(QApplication::keyboardModifiers()&Qt::ControlModifier) mod_ev += "Ctrl"; if(QApplication::keyboardModifiers()&Qt::AltModifier) mod_ev += "Alt"; if(QApplication::keyboardModifiers()&Qt::ShiftModifier) mod_ev += "Shift"; if(((QKeyEvent*)event)->nativeScanCode()) attrs["event"] = mod_ev+"SC#"+TSYS::int2str(((QKeyEvent*)event)->nativeScanCode(),TSYS::Hex); switch(((QKeyEvent*)event)->key()) { case Qt::Key_Escape: mod_ev+="Esc"; break; case Qt::Key_Backspace: mod_ev+="BackSpace"; break; case Qt::Key_Return: mod_ev+="Return"; break; case Qt::Key_Enter: mod_ev+="Enter"; break; case Qt::Key_Insert: mod_ev+="Insert"; break; case Qt::Key_Delete: mod_ev+="Delete"; break; case Qt::Key_Pause: mod_ev+="Pause"; break; case Qt::Key_Print: mod_ev+="Print"; break; //case Qt::Key_SysReq: mod_ev+="SysReq"; break; //case Qt::Key_Clear: mod_ev+="Clear"; break; case Qt::Key_Home: mod_ev+="Home"; break; case Qt::Key_End: mod_ev+="End"; break; case Qt::Key_Left: mod_ev+="Left"; break; case Qt::Key_Up: mod_ev+="Up"; break; case Qt::Key_Right: mod_ev+="Right"; break; case Qt::Key_Down: mod_ev+="Down"; break; case Qt::Key_PageUp: mod_ev+="PageUp"; break; case Qt::Key_PageDown: mod_ev+="PageDown"; break; case Qt::Key_F1: mod_ev+="F1"; break; case Qt::Key_F2: mod_ev+="F2"; break; case Qt::Key_F3: mod_ev+="F3"; break; case Qt::Key_F4: mod_ev+="F4"; break; case Qt::Key_F5: mod_ev+="F5"; break; case Qt::Key_F6: mod_ev+="F6"; break; case Qt::Key_F7: mod_ev+="F7"; break; case Qt::Key_F8: mod_ev+="F8"; break; case Qt::Key_F9: mod_ev+="F9"; break; case Qt::Key_F10: mod_ev+="F10"; break; case Qt::Key_F11: mod_ev+="F11"; break; case Qt::Key_F12: mod_ev+="F12"; break; case Qt::Key_F13: mod_ev+="F13"; break; case Qt::Key_F14: mod_ev+="F14"; break; case Qt::Key_F15: mod_ev+="F15"; break; case Qt::Key_F16: mod_ev+="F16"; break; case Qt::Key_F17: mod_ev+="F17"; break; case Qt::Key_F18: mod_ev+="F18"; break; case Qt::Key_F19: mod_ev+="F19"; break; case Qt::Key_F20: mod_ev+="F20"; break; case Qt::Key_F21: mod_ev+="F21"; break; case Qt::Key_F22: mod_ev+="F22"; break; case Qt::Key_F23: mod_ev+="F23"; break; case Qt::Key_F24: mod_ev+="F24"; break; case Qt::Key_F25: mod_ev+="F25"; break; case Qt::Key_F26: mod_ev+="F26"; break; case Qt::Key_F27: mod_ev+="F27"; break; case Qt::Key_F28: mod_ev+="F28"; break; case Qt::Key_F29: mod_ev+="F29"; break; case Qt::Key_F30: mod_ev+="F30"; break; case Qt::Key_F31: mod_ev+="F31"; break; case Qt::Key_F32: mod_ev+="F32"; break; case Qt::Key_F33: mod_ev+="F33"; break; case Qt::Key_F34: mod_ev+="F34"; break; case Qt::Key_F35: mod_ev+="F35"; break; case Qt::Key_Space: mod_ev+="Space"; break; case Qt::Key_Apostrophe:mod_ev+="Apostrophe"; break; case Qt::Key_Asterisk: mod_ev+="Asterisk"; break; case Qt::Key_Plus: mod_ev+="Plus"; break; case Qt::Key_Comma: mod_ev+="Comma"; break; case Qt::Key_Minus: mod_ev+="Minus"; break; case Qt::Key_Period: mod_ev+="Period"; break; case Qt::Key_Slash: mod_ev+="Slash"; break; case Qt::Key_0: mod_ev+="0"; break; case Qt::Key_1: mod_ev+="1"; break; case Qt::Key_2: mod_ev+="2"; break; case Qt::Key_3: mod_ev+="3"; break; case Qt::Key_4: mod_ev+="4"; break; case Qt::Key_5: mod_ev+="5"; break; case Qt::Key_6: mod_ev+="6"; break; case Qt::Key_7: mod_ev+="7"; break; case Qt::Key_8: mod_ev+="8"; break; case Qt::Key_9: mod_ev+="9"; break; case Qt::Key_Semicolon: mod_ev+="Semicolon"; break; case Qt::Key_Equal: mod_ev+="Equal"; break; case Qt::Key_A: mod_ev+="A"; break; case Qt::Key_B: mod_ev+="B"; break; case Qt::Key_C: mod_ev+="C"; break; case Qt::Key_D: mod_ev+="D"; break; case Qt::Key_E: mod_ev+="E"; break; case Qt::Key_F: mod_ev+="F"; break; case Qt::Key_G: mod_ev+="G"; break; case Qt::Key_H: mod_ev+="H"; break; case Qt::Key_I: mod_ev+="I"; break; case Qt::Key_J: mod_ev+="J"; break; case Qt::Key_K: mod_ev+="K"; break; case Qt::Key_L: mod_ev+="L"; break; case Qt::Key_M: mod_ev+="M"; break; case Qt::Key_N: mod_ev+="N"; break; case Qt::Key_O: mod_ev+="O"; break; case Qt::Key_P: mod_ev+="P"; break; case Qt::Key_Q: mod_ev+="Q"; break; case Qt::Key_R: mod_ev+="R"; break; case Qt::Key_S: mod_ev+="S"; break; case Qt::Key_T: mod_ev+="T"; break; case Qt::Key_U: mod_ev+="U"; break; case Qt::Key_V: mod_ev+="V"; break; case Qt::Key_W: mod_ev+="W"; break; case Qt::Key_X: mod_ev+="X"; break; case Qt::Key_Y: mod_ev+="Y"; break; case Qt::Key_Z: mod_ev+="Z"; break; case Qt::Key_BracketLeft: mod_ev+="BracketLeft"; break; case Qt::Key_Backslash: mod_ev+="BackSlash"; break; case Qt::Key_BracketRight: mod_ev+="BracketRight"; break; case Qt::Key_QuoteLeft: mod_ev+="QuoteLeft"; break; default: mod_ev += "#"+TSYS::int2str(((QKeyEvent*)event)->key(),TSYS::Hex); break; } attrs["event"] += (attrs["event"].size()?"\n":"")+mod_ev; attrsSet(attrs); return true; case QEvent::MouseButtonPress: mod_ev = "key_mousePres"; case QEvent::MouseButtonRelease: if(mod_ev.empty()) mod_ev = "key_mouseRels"; switch(((QMouseEvent*)event)->button()) { case Qt::LeftButton: mod_ev += "Left"; break; case Qt::RightButton: mod_ev += "Right"; break; case Qt::MidButton: mod_ev += "Midle"; break; default: break; } if(isVisible(mapFromGlobal(cursor().pos()))) { if(event->type() == QEvent::MouseButtonPress && !hasFocus()) setFocus(Qt::MouseFocusReason); attrSet("event", mod_ev); return true; } break; case QEvent::MouseButtonDblClick: if(!isVisible(mapFromGlobal(cursor().pos()))) break; attrSet("event", "key_mouseDblClick"); return true; case QEvent::FocusIn: attrs["focus"] = "1"; attrs["event"] = "ws_FocusIn"; attrsSet(attrs); return true; case QEvent::FocusOut: attrs["focus"] = "0"; attrs["event"] = "ws_FocusOut"; attrsSet(attrs); return true; default: break; } //> Try put mouse event to next level widget into same container if(!qobject_cast<RunPageView*>(this) && (event->type() == QEvent::MouseButtonPress || event->type() == QEvent::MouseButtonRelease || event->type() == QEvent::MouseButtonDblClick)) { bool isOk = false; QPoint curp = parentWidget()->mapFromGlobal(cursor().pos()); for(int i_c = parentWidget()->children().size()-1; i_c >= 0; i_c--) { RunWdgView *curwdg = qobject_cast<RunWdgView*>(parentWidget()->children().at(i_c)); if(!curwdg) continue; if(curwdg == this) isOk = true; else if(isOk && curwdg->geometry().contains(curp)) { RunWdgView *wdg = curwdg; curp = wdg->mapFromGlobal(cursor().pos()); for(int i_cr = wdg->children().size()-1; i_cr >= 0; i_cr--) { curwdg = qobject_cast<RunWdgView*>(wdg->children().at(i_cr)); if(curwdg && curwdg->geometry().contains(curp)) { wdg = curwdg; i_cr = wdg->children().size(); curp = wdg->mapFromGlobal(cursor().pos()); } } return QApplication::sendEvent(wdg, event); } } } return QWidget::event(event); }