widget qt_window_widget_rep::popup_window_widget (string s) { qwid->setWindowTitle (to_qstring (s)); qwid->setWindowModality (Qt::NonModal); qwid->setWindowFlags (Qt::Popup); return this; }
QWidget * qt_glue_widget_rep::as_qwidget() { QLabel *w= new QLabel(); w->setText(to_qstring(as_string(col))); QIcon icon; w->setPixmap (render ()); // w->setEnabled(false); return w; }
void edit_main_rep::print_buffer (string first, string last) { url target; #if defined (QTTEXMACS) && (defined (__MINGW__) || defined (__MINGW32__)) { target= url_temp (".pdf"); WINPrint wprt(to_qstring(as_string(target)),env->page_landscape); if(wprt.doit) print (target, false,wprt.first_page,wprt.last_page); } #else target= url_temp (".ps"); print (target, false, as_int (first), as_int (last)); system (printing_cmd, target); // Send the document to the printer #endif ::remove (target); }
QAction * qt_glue_widget_rep::as_qaction() { QAction *a= new QTMAction(); a->setText(to_qstring(as_string(col))); QIcon icon; #if 0 tree old_col = col; icon.addPixmap(render(), QIcon::Active, QIcon::On); col = ""; icon.addPixmap(render(), QIcon::Normal, QIcon::On); col = old_col; #else icon.addPixmap (render ()); #endif a->setIcon (icon); a->setEnabled(false); return a; }
void qt_tm_widget_rep::send (slot s, blackbox val) { switch (s) { case SLOT_INVALIDATE: case SLOT_INVALIDATE_ALL: case SLOT_EXTENTS: case SLOT_SCROLL_POSITION: case SLOT_ZOOM_FACTOR: case SLOT_MOUSE_GRAB: main_widget->send(s, val); return; case SLOT_KEYBOARD_FOCUS: { check_type<bool> (val, s); bool focus = open_box<bool> (val); if (focus && canvas() && !canvas()->hasFocus()) canvas()->setFocus (Qt::OtherFocusReason); } break; case SLOT_HEADER_VISIBILITY: { check_type<bool>(val, s); visibility[0] = open_box<bool> (val); update_visibility(); } break; case SLOT_MAIN_ICONS_VISIBILITY: { check_type<bool>(val, s); visibility[1] = open_box<bool> (val); update_visibility(); } break; case SLOT_MODE_ICONS_VISIBILITY: { check_type<bool>(val, s); visibility[2] = open_box<bool> (val); update_visibility(); } break; case SLOT_FOCUS_ICONS_VISIBILITY: { check_type<bool>(val, s); visibility[3] = open_box<bool> (val); update_visibility(); } break; case SLOT_USER_ICONS_VISIBILITY: { check_type<bool>(val, s); visibility[4] = open_box<bool> (val); update_visibility(); } break; case SLOT_FOOTER_VISIBILITY: { check_type<bool>(val, s); visibility[5] = open_box<bool> (val); update_visibility(); } break; case SLOT_SIDE_TOOLS_VISIBILITY: { check_type<bool>(val, s); visibility[6] = open_box<bool> (val); update_visibility(); } break; case SLOT_BOTTOM_TOOLS_VISIBILITY: { check_type<bool>(val, s); visibility[7] = open_box<bool> (val); update_visibility(); } break; case SLOT_LEFT_FOOTER: { check_type<string>(val, s); string msg = open_box<string> (val); leftLabel->setText (to_qstring (msg)); leftLabel->update (); } break; case SLOT_RIGHT_FOOTER: { check_type<string>(val, s); string msg= open_box<string> (val); rightLabel->setText (to_qstring (msg)); rightLabel->update (); } break; case SLOT_SCROLLBARS_VISIBILITY: // ignore this: qt handles scrollbars independently // send_int (THIS, "scrollbars", val); break; case SLOT_INTERACTIVE_MODE: { check_type<bool>(val, s); if (open_box<bool> (val) == true) { prompt = new QTMInteractivePrompt (int_prompt, int_input); mainwindow()->statusBar()->removeWidget (leftLabel); mainwindow()->statusBar()->removeWidget (rightLabel); mainwindow()->statusBar()->addWidget (prompt, 1); prompt->start(); } else { if (prompt) prompt->end(); mainwindow()->statusBar()->removeWidget (prompt); mainwindow()->statusBar()->addWidget (leftLabel); mainwindow()->statusBar()->addPermanentWidget (rightLabel); leftLabel->show(); rightLabel->show(); prompt->deleteLater(); prompt = NULL; } } break; case SLOT_FILE: { check_type<string>(val, s); string file = open_box<string> (val); if (DEBUG_QT_WIDGETS) debug_widgets << "\tFile: " << file << LF; #if (QT_VERSION >= 0x040400) mainwindow()->setWindowFilePath (utf8_to_qstring (file)); #endif } break; case SLOT_POSITION: { check_type<coord2>(val, s); coord2 p= open_box<coord2> (val); mainwindow()->move (to_qpoint (p)); } break; case SLOT_SIZE: { check_type<coord2>(val, s); coord2 p= open_box<coord2> (val); mainwindow()->resize (to_qsize (p)); } break; case SLOT_DESTROY: { ASSERT (is_nil (val), "type mismatch"); if (!is_nil (quit)) quit (); the_gui->need_update (); } break; case SLOT_FULL_SCREEN: { check_type<bool> (val, s); set_full_screen(open_box<bool> (val)); } break; default: qt_window_widget_rep::send (s, val); return; } if (DEBUG_QT_WIDGETS) debug_widgets << "qt_tm_widget_rep: sent " << slot_name (s) << "\t\tto widget\t" << type_as_string() << LF; }
widget qt_popup_widget_rep::popup_window_widget(string s) { qwid->setWindowTitle (to_qstring (s)); // useless for Qt::Popup return this; }
void qt_window_widget_rep::send (slot s, blackbox val) { if (DEBUG_QT_WIDGETS) debug_widgets << "qt_window_widget_rep::send " << slot_name (s) << LF; switch (s) { case SLOT_SIZE: { check_type<coord2>(val, s); coord2 p = open_box<coord2> (val); if (qwid) { QSize size = to_qsize (p); qwid->resize (size); } } break; case SLOT_POSITION: { check_type<coord2>(val, s); coord2 p = open_box<coord2> (val); if (qwid) { QPoint pt = to_qpoint (p); #ifdef OS_MACOS pt.ry() = (pt.y() <= 40) ? 40 : pt.y(); // to avoid window under menu bar on MAC when moving at (0,0) // FIXME: use the real menu bar height. #endif qwid->move (pt); } } break; case SLOT_VISIBILITY: { check_type<bool> (val, s); bool flag = open_box<bool> (val); if (qwid) { if (flag) { qwid->show(); // wid->activateWindow(); //WEIRD: in Ubuntu uncommenting the above line causes the main window //to be opened in the background. qwid->raise(); } else qwid->hide(); } } break; case SLOT_MOUSE_GRAB: { check_type<bool> (val, s); bool flag = open_box<bool> (val); // true= get grab, false= release grab if (flag && qwid) { qwid->setWindowFlags (Qt::Window); // ok? qwid->setWindowModality (Qt::WindowModal); //ok? qwid->show(); } } break; case SLOT_NAME: // sets window *title* not the name { check_type<string> (val, s); string name = open_box<string> (val); // The [*] is for QWidget::setWindowModified() if (qwid) qwid->setWindowTitle (to_qstring (name * "[*]")); } break; case SLOT_MODIFIED: { check_type<bool> (val, s); bool flag = open_box<bool> (val); if (qwid) qwid->setWindowModified (flag); } break; case SLOT_REFRESH: { check_type<string> (val, s); string kind = open_box<string> (val); the_gui->gui_helper->emitTmSlotRefresh (kind); } break; default: qt_widget_rep::send(s, val); } }
QLatin1String dmz::to_qstring (const Handle &ObjectHandle) { String result; result << ObjectHandle; return to_qstring (result); }