KexiReportDesignView::KexiReportDesignView(QWidget *parent, ReportEntitySelector* r) : KexiView(parent) { scr = new QScrollArea(this); layout()->addWidget(scr); res = r; _rd = 0; editCutAction = new KAction(KIcon("edit-cut"), i18n("Cut"), this); editCutAction->setObjectName("editcut"); editCopyAction = new KAction(KIcon("edit-copy"), i18n("Copy"), this); editCopyAction->setObjectName("editcopy"); editPasteAction = new KAction(KIcon("edit-paste"), i18n("Paste"), this); editPasteAction->setObjectName("editpaste"); editDeleteAction = new KAction(KIcon("edit-delete"), i18n("Delete"), this); editDeleteAction->setObjectName("editdelete"); sectionEdit = new KAction(i18n("Section Editor"), this); sectionEdit->setObjectName("sectionedit"); itemRaiseAction = new KAction(KIcon("arrow-up"), i18n("Raise"), this); itemRaiseAction->setObjectName("itemraise"); itemLowerAction = new KAction(KIcon("arrow-down"), i18n("Lower"), this); itemLowerAction->setObjectName("itemlower"); //parameterEdit = new KAction ( i18n ( "Parameter Editor" ), this ); //parameterEdit->setObjectName("parameteredit"); QList<QAction*> al; KAction *sep = new KAction("", this); sep->setSeparator(true); al << editCutAction << editCopyAction << editPasteAction << editDeleteAction << sep << sectionEdit << sep << itemLowerAction << itemRaiseAction; setViewActions(al); }
KexiReportView::KexiReportView(QWidget *parent) : KexiView(parent) { m_preRenderer = 0; setObjectName("KexiReportDesigner_DataView"); m_scrollArea = new QScrollArea(this); m_scrollArea->setBackgroundRole(QPalette::Dark); m_scrollArea->viewport()->setAutoFillBackground(true); m_pageSelector = new KexiRecordNavigator(this, 0); layout()->addWidget(m_scrollArea); layout()->addWidget(m_pageSelector); m_pageSelector->setRecordCount(0); m_pageSelector->setInsertingButtonVisible(false); m_pageSelector->setLabelText(i18n("Page")); // -- setup local actions QList<QAction*> viewActions; QAction* a; viewActions << (a = new KAction(KIcon("printer"), i18n("Print"), this)); a->setObjectName("pgzkexirpt_print_report"); a->setToolTip(i18n("Print Report")); a->setWhatsThis(i18n("Prints the current report.")); connect(a, SIGNAL(triggered()), this, SLOT(slotPrintReport())); viewActions << (a = new KAction(KIcon("kword"), i18n("Open in KWord"), this)); a->setObjectName("pgzkexirpt_open_kword"); a->setToolTip(i18n("Open the report in KWord")); a->setWhatsThis(i18n("Opens the current report in KWord.")); a->setEnabled(false); //! @todo connect(a, SIGNAL(triggered()), this, SLOT(slotRenderKWord())); #ifdef HAVE_KSPREAD viewActions << (a = new KAction(KIcon("kspread"), i18n("Open in KSpread"), this)); a->setObjectName("pgzkexirpt_open_kspread"); a->setToolTip(i18n("Open the report in KSpread")); a->setWhatsThis(i18n("Opens the current report in KSpread.")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotRenderKSpread())); #endif viewActions << (a = new KAction(KIcon("text-html"), i18n("Export to HTML"), this)); a->setObjectName("pgzkexirpt_export_html"); a->setToolTip(i18n("Export the report to HTML")); a->setWhatsThis(i18n("Exports the report to a HTML file.")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportHTML())); setViewActions(viewActions); connect(m_pageSelector, SIGNAL(nextButtonClicked()), this, SLOT(nextPage())); connect(m_pageSelector, SIGNAL(prevButtonClicked()), this, SLOT(prevPage())); connect(m_pageSelector, SIGNAL(firstButtonClicked()), this, SLOT(firstPage())); connect(m_pageSelector, SIGNAL(lastButtonClicked()), this, SLOT(lastPage())); }
KexiReportView::KexiReportView(QWidget *parent) : KexiView(parent), m_preRenderer(0), m_reportDocument(0), m_kexi(0), m_functions(0) { setObjectName("KexiReportDesigner_DataView"); m_scrollArea = new QScrollArea(this); m_scrollArea->setBackgroundRole(QPalette::Dark); m_scrollArea->viewport()->setAutoFillBackground(true); layout()->addWidget(m_scrollArea); #ifndef KEXI_MOBILE m_pageSelector = new KexiRecordNavigator(this, 0); layout()->addWidget(m_pageSelector); m_pageSelector->setRecordCount(0); m_pageSelector->setInsertingButtonVisible(false); m_pageSelector->setLabelText(i18n("Page")); #endif // -- setup local actions QList<QAction*> viewActions; QAction* a; viewActions << (a = new KAction(KIcon("printer"), i18n("Print"), this)); a->setObjectName("print_report"); a->setToolTip(i18n("Print Report")); a->setWhatsThis(i18n("Prints the current report.")); connect(a, SIGNAL(triggered()), this, SLOT(slotPrintReport())); viewActions << (a = new KAction(KIcon("kword"), i18n("Save to KWord"), this)); a->setObjectName("save_to_kword"); a->setToolTip(i18n("Save the report to a KWord document")); a->setWhatsThis(i18n("Save the report to a KWord document")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotRenderODT())); viewActions << (a = new KAction(KIcon("kspread"), i18n("Save to KSpread"), this)); a->setObjectName("save_to_kspread"); a->setToolTip(i18n("Save the report to a KSpread document")); a->setWhatsThis(i18n("Saves the current report to a KSpread document.")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotRenderKSpread())); viewActions << (a = new KAction(KIcon("text-html"), i18n("Export as Web Page"), this)); a->setObjectName("export_as_web_page"); a->setToolTip(i18n("Export the report as web page")); a->setWhatsThis(i18n("Exports the report to a web page file.")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportHTML())); setViewActions(viewActions); #ifndef KEXI_MOBILE connect(m_pageSelector, SIGNAL(nextButtonClicked()), this, SLOT(nextPage())); connect(m_pageSelector, SIGNAL(prevButtonClicked()), this, SLOT(prevPage())); connect(m_pageSelector, SIGNAL(firstButtonClicked()), this, SLOT(firstPage())); connect(m_pageSelector, SIGNAL(lastButtonClicked()), this, SLOT(lastPage())); #endif }
KexiReportDesignView::KexiReportDesignView(QWidget *parent, KexiSourceSelector *s) : KexiView(parent) { m_scrollArea = new QScrollArea(this); layout()->addWidget(m_scrollArea); m_sourceSelector = s; m_reportDesigner = 0; m_editCutAction = KStandardAction::cut(this); m_editCutAction->setProperty("iconOnly", true); m_editCopyAction = KStandardAction::copy(this); m_editCopyAction->setProperty("iconOnly", true); m_editPasteAction = KStandardAction::paste(this); m_editPasteAction->setProperty("iconOnly", true); const KGuiItem del = KStandardGuiItem::del(); m_editDeleteAction = new QAction(del.icon(), del.text(), this); m_editDeleteAction->setObjectName("editdelete"); m_editDeleteAction->setToolTip(del.toolTip()); m_editDeleteAction->setWhatsThis(del.whatsThis()); m_editDeleteAction->setProperty("iconOnly", true); m_sectionEdit = new QAction(i18n("Edit Sections"), this); m_sectionEdit->setObjectName("sectionedit"); m_itemRaiseAction = new QAction(koIcon("arrow-up"), i18n("Raise"), this); m_itemRaiseAction->setObjectName("itemraise"); m_itemLowerAction = new QAction(koIcon("arrow-down"), i18n("Lower"), this); m_itemLowerAction->setObjectName("itemlower"); //parameterEdit = new QAction ( i18n ( "Parameter Editor" ), this ); //parameterEdit->setObjectName("parameteredit"); QList<QAction*> al; QAction *sep = new QAction(QString(), this); sep->setSeparator(true); al << m_editCutAction << m_editCopyAction << m_editPasteAction << m_editDeleteAction << sep << m_sectionEdit << sep << m_itemLowerAction << m_itemRaiseAction; setViewActions(al); }
KexiFormView::KexiFormView(QWidget *parent, bool dbAware) : KexiDataAwareView(parent) , d(new Private) { Q_UNUSED(dbAware); d->delayedFormContentsResizeOnShow = 0; //! @todo remove? setSortedProperties(true); d->scrollView = new KexiFormScrollView( // will be added to layout this, viewMode() == Kexi::DataViewMode); // in KexiDataAwareView::init() initForm(); if (viewMode() == Kexi::DesignViewMode) { connect(form(), SIGNAL(propertySetSwitched()), this, SLOT(slotPropertySetSwitched())); connect(form(), SIGNAL(modified(bool)), this, SLOT(setDirty(bool))); connect(d->scrollView, SIGNAL(resized()), this, SLOT(setFormModified())); connect(d->dbform, SIGNAL(handleDragMoveEvent(QDragMoveEvent*)), this, SLOT(slotHandleDragMoveEvent(QDragMoveEvent*))); connect(d->dbform, SIGNAL(handleDropEvent(QDropEvent*)), this, SLOT(slotHandleDropEvent(QDropEvent*))); // action stuff plugSharedAction("formpart_taborder", form(), SLOT(editTabOrder())); plugSharedAction("formpart_adjust_size", form(), SLOT(adjustWidgetSize())); //! @todo add formpart_pixmap_collection action //! @todo add formpart_connections action plugSharedAction("edit_copy", form(), SLOT(copyWidget())); plugSharedAction("edit_cut", form(), SLOT(cutWidget())); plugSharedAction("edit_paste", form(), SLOT(pasteWidget())); plugSharedAction("edit_delete", form(), SLOT(deleteWidget())); plugSharedAction("edit_select_all", form(), SLOT(selectAll())); plugSharedAction("formpart_clear_contents", form(), SLOT(clearWidgetContent())); plugSharedAction("edit_undo", form(), SLOT(undo())); plugSharedAction("edit_redo", form(), SLOT(redo())); //! @todo add formpart_layout_menu action plugSharedAction("formpart_layout_hbox", form(), SLOT(layoutHBox())); plugSharedAction("formpart_layout_vbox", form(), SLOT(layoutVBox())); plugSharedAction("formpart_layout_grid", form(), SLOT(layoutGrid())); #ifdef KEXI_SHOW_SPLITTER_WIDGET plugSharedAction("formpart_layout_hsplitter", form(), SLOT(layoutHSplitter())); plugSharedAction("formpart_layout_vsplitter", form(), SLOT(layoutVSplitter())); #endif plugSharedAction("formpart_break_layout", form(), SLOT(breakLayout())); plugSharedAction("formpart_format_raise", form(), SLOT(bringWidgetToFront())); plugSharedAction("formpart_format_lower", form(), SLOT(sendWidgetToBack())); plugSharedAction("other_widgets_menu", form(), 0); setAvailable("other_widgets_menu", true); plugSharedAction("formpart_align_menu", form(), 0); plugSharedAction("formpart_align_to_left", form(), SLOT(alignWidgetsToLeft())); plugSharedAction("formpart_align_to_right", form(), SLOT(alignWidgetsToRight())); plugSharedAction("formpart_align_to_top", form(), SLOT(alignWidgetsToTop())); plugSharedAction("formpart_align_to_bottom", form(), SLOT(alignWidgetsToBottom())); plugSharedAction("formpart_align_to_grid", form(), SLOT(alignWidgetsToGrid())); plugSharedAction("formpart_adjust_size_menu", form(), 0); plugSharedAction("formpart_adjust_to_fit", form(), SLOT(adjustWidgetSize())); plugSharedAction("formpart_adjust_size_grid", form(), SLOT(adjustSizeToGrid())); plugSharedAction("formpart_adjust_height_small", form(), SLOT(adjustHeightToSmall())); plugSharedAction("formpart_adjust_height_big", form(), SLOT(adjustHeightToBig())); plugSharedAction("formpart_adjust_width_small", form(), SLOT(adjustWidthToSmall())); plugSharedAction("formpart_adjust_width_big", form(), SLOT(adjustWidthToBig())); plugSharedAction("format_font", form(), SLOT(changeFont())); // - setup local actions QList<QAction*> viewActions; QAction* a; a = form()->action("edit_undo"); a->setProperty("iconOnly", true); viewActions << a; a = form()->action("edit_redo"); a->setProperty("iconOnly", true); viewActions << a; setViewActions(viewActions); }
KexiReportView::KexiReportView(QWidget *parent) : KexiView(parent), m_preRenderer(0), m_reportDocument(0) //! @todo KEXI3, m_kexi(0), m_functions(0) { setObjectName("KexiReportDesigner_DataView"); m_reportView = new KReportView(this); layout()->addWidget(m_reportView); #ifndef KEXI_MOBILE m_pageSelector = new KexiRecordNavigator(*m_reportView->scrollArea(), m_reportView); m_pageSelector->setInsertingButtonVisible(false); m_pageSelector->setInsertingEnabled(false); m_pageSelector->setLabelText(xi18nc("Page selector label", "Page:")); m_pageSelector->setButtonToolTipText(KexiRecordNavigator::ButtonFirst, xi18n("Go to first page")); m_pageSelector->setButtonWhatsThisText(KexiRecordNavigator::ButtonFirst, xi18n("Goes to first page")); m_pageSelector->setButtonToolTipText(KexiRecordNavigator::ButtonPrevious, xi18n("Go to previous page")); m_pageSelector->setButtonWhatsThisText(KexiRecordNavigator::ButtonPrevious, xi18n("Goes to previous page")); m_pageSelector->setButtonToolTipText(KexiRecordNavigator::ButtonNext, xi18n("Go to next page")); m_pageSelector->setButtonWhatsThisText(KexiRecordNavigator::ButtonNext, xi18n("Goes to next page")); m_pageSelector->setButtonToolTipText(KexiRecordNavigator::ButtonLast, xi18n("Go to last page")); m_pageSelector->setButtonWhatsThisText(KexiRecordNavigator::ButtonLast, xi18n("Goes to last page")); m_pageSelector->setNumberFieldToolTips(xi18n("Current page number"), xi18n("Number of pages")); m_pageSelector->setRecordHandler(this); #endif // -- setup local actions QList<QAction*> viewActions; QAction* a; #ifndef KEXI_MOBILE viewActions << (a = new QAction(koIcon("document-print"), xi18n("Print"), this)); a->setObjectName("print_report"); a->setToolTip(xi18n("Print report")); a->setWhatsThis(xi18n("Prints the current report.")); connect(a, SIGNAL(triggered()), this, SLOT(slotPrintReport())); KActionMenu *exportMenu = new KActionMenu(koIcon("document-export"), xi18nc("@title:menu","E&xport As"), this); exportMenu->setObjectName("report_export_as"); exportMenu->setDelayed(false); #endif #ifdef KEXI_MOBILE viewActions << (a = new QAction(xi18n("Export:"), this)); a->setEnabled(false); //!TODO this is a bit of a dirty way to add what looks like a label to the toolbar! // " ", not "", is said to be needed in maemo, the icon didn't display properly without it viewActions << (a = new QAction(koIcon("application-vnd.oasis.opendocument.text"), QLatin1String(" "), this)); #else exportMenu->addAction(a = new QAction(koIcon("application-vnd.oasis.opendocument.text"), xi18nc("open dialog to export as text document", "Text Document..."), this)); #endif a->setObjectName("export_as_text_document"); a->setToolTip(xi18n("Export the report as a text document (in OpenDocument Text format)")); a->setWhatsThis(xi18n("Exports the report as a text document (in OpenDocument Text format).")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportAsTextDocument())); #ifdef KEXI_MOBILE viewActions << (a = new QAction(koIcon("application-pdf"), QLatin1String(" "), this)); #else exportMenu->addAction(a = new QAction(koIcon("application-pdf"), xi18nc("Portable Document Format...", "PDF..."), this)); #endif a->setObjectName("export_as_pdf"); a->setToolTip(xi18n("Export as PDF")); a->setWhatsThis(xi18n("Exports the current report as PDF.")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportAsPdf())); #ifdef KEXI_MOBILE viewActions << (a = new QAction(koIcon("application-vnd.oasis.opendocument.spreadsheet"), QLatin1String(" "), this)); #else exportMenu->addAction(a = new QAction(koIcon("application-vnd.oasis.opendocument.spreadsheet"), xi18nc("open dialog to export as spreadsheet", "Spreadsheet..."), this)); #endif a->setObjectName("export_as_spreadsheet"); a->setToolTip(xi18n("Export the report as a spreadsheet (in OpenDocument Spreadsheet format)")); a->setWhatsThis(xi18n("Exports the report as a spreadsheet (in OpenDocument Spreadsheet format).")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportAsSpreadsheet())); #ifdef KEXI_MOBILE viewActions << (a = new QAction(koIcon("text-html"), QLatin1String(" "), this)); #else exportMenu->addAction(a = new QAction(koIcon("text-html"), xi18nc("open dialog to export as web page", "Web Page..."), this)); #endif a->setObjectName("export_as_web_page"); a->setToolTip(xi18n("Export the report as a web page (in HTML format)")); a->setWhatsThis(xi18n("Exports the report as a web page (in HTML format).")); a->setEnabled(true); connect(a, SIGNAL(triggered()), this, SLOT(slotExportAsWebPage())); setViewActions(viewActions); #ifndef KEXI_MOBILE // setup main menu actions QList<QAction*> mainMenuActions; mainMenuActions << exportMenu; setMainMenuActions(mainMenuActions); connect(m_pageSelector, SIGNAL(nextButtonClicked()), this, SLOT(nextPage())); connect(m_pageSelector, SIGNAL(prevButtonClicked()), this, SLOT(prevPage())); connect(m_pageSelector, SIGNAL(firstButtonClicked()), this, SLOT(firstPage())); connect(m_pageSelector, SIGNAL(lastButtonClicked()), this, SLOT(lastPage())); #endif }