Summary: | Turn off header/footer and page numbers when printing | ||
---|---|---|---|
Product: | [Applications] umbrello | Reporter: | Jonathan Riddell <jr> |
Component: | general | Assignee: | Umbrello Development Group <umbrello-devel> |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | CC: | esigra |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 4.0.0 | |
Attachments: | patch for #69113 |
Description
Jonathan Riddell
2003-11-27 00:43:33 UTC
Created attachment 19728 [details]
patch for #69113
This patch is against trunk
I have an miscelleanous option "Turn on footer and page numbers when printing"
in the general settings.
By default, the footer is printed but you can turn it off.
SVN commit 636081 by okellogg: Apply attachment 19728 [details] from Antoine Dopffer > I have an miscelleanous option "Turn on footer and page numbers when > printing" in the general settings. > By default, the footer is printed but you can turn it off. FEATURE:69113 A ChangeLog.2 M +6 -1 umbrello/dialogs/settingsdlg.cpp M +1 -0 umbrello/dialogs/settingsdlg.h M +1 -0 umbrello/optionstate.h M +2 -0 umbrello/uml.cpp M +25 -10 umbrello/umlview.cpp --- trunk/KDE/kdesdk/umbrello/umbrello/dialogs/settingsdlg.cpp #636080:636081 @@ -148,6 +148,9 @@ m_GeneralWidgets.angularLinesCB -> setChecked( m_pOptionState->generalState.angularlines ); miscLayout -> addWidget( m_GeneralWidgets.angularLinesCB, 1, 1 ); + m_GeneralWidgets.footerPrintingCB = new QCheckBox( i18n("Turn on footer and page numbers when printing"), m_GeneralWidgets.miscGB ); + m_GeneralWidgets.footerPrintingCB -> setChecked( m_pOptionState->generalState.footerPrinting ); + miscLayout -> addWidget( m_GeneralWidgets.footerPrintingCB, 2, 0 ); //setup autosave settings m_GeneralWidgets.autosaveGB = new Q3GroupBox( i18n("Autosave"), page ); @@ -354,7 +357,8 @@ void SettingsDlg::slotApply() { applyPage( currentPage() ); - emit applyClicked(); + //do no emit signal applyClicked in the slot slotApply -> infinite loop + //emit applyClicked(); } void SettingsDlg::slotOk() { @@ -421,6 +425,7 @@ m_pOptionState->generalState.tabdiagrams = m_GeneralWidgets.tabdiagramsCB->isChecked(); m_pOptionState->generalState.newcodegen = m_GeneralWidgets.newcodegenCB->isChecked(); m_pOptionState->generalState.angularlines = m_GeneralWidgets.angularLinesCB->isChecked(); + m_pOptionState->generalState.footerPrinting = m_GeneralWidgets.footerPrintingCB->isChecked(); m_pOptionState->generalState.autosave = m_GeneralWidgets.autosaveCB -> isChecked(); m_pOptionState->generalState.autosavetime = m_GeneralWidgets.timeISB -> value(); // 2004-05-17 Achim Spangler: retrieve Suffix setting from dialog entry --- trunk/KDE/kdesdk/umbrello/umbrello/dialogs/settingsdlg.h #636080:636081 @@ -102,6 +102,7 @@ QCheckBox * tabdiagramsCB; QCheckBox * newcodegenCB; QCheckBox * angularLinesCB; + QCheckBox * footerPrintingCB; QCheckBox * autosaveCB; QCheckBox * logoCB; QCheckBox * tipCB; --- trunk/KDE/kdesdk/umbrello/umbrello/optionstate.h #636080:636081 @@ -34,6 +34,7 @@ bool tabdiagrams; bool newcodegen; bool angularlines; + bool footerPrinting; bool autosave; int time; //old autosave time, kept for compatibility int autosavetime; --- trunk/KDE/kdesdk/umbrello/umbrello/uml.cpp #636080:636081 @@ -605,6 +605,7 @@ cg.writeEntry( "tabdiagrams", optionState.generalState.tabdiagrams ); cg.writeEntry( "newcodegen", optionState.generalState.newcodegen ); cg.writeEntry( "angularlines", optionState.generalState.angularlines ); + cg.writeEntry( "footerPrinting", optionState.generalState.footerPrinting ); cg.writeEntry( "autosave", optionState.generalState.autosave ); cg.writeEntry( "time", optionState.generalState.time ); cg.writeEntry( "autosavetime", optionState.generalState.autosavetime ); @@ -1203,6 +1204,7 @@ optionState.generalState.newcodegen = false; #endif optionState.generalState.angularlines = m_config->readEntry("angularlines", false); + optionState.generalState.footerPrinting = m_config->readEntry("footerPrinting", true); optionState.generalState.autosave = m_config->readEntry("autosave", true); optionState.generalState.time = m_config->readEntry("time", 0); //old autosavetime value kept for compatibility optionState.generalState.autosavetime = m_config->readEntry("autosavetime", 0); --- trunk/KDE/kdesdk/umbrello/umbrello/umlview.cpp #636080:636081 @@ -321,9 +321,22 @@ // + fontHeight for foot-text // ============== // (2*fontHeight) + 7 - int footHeight = (2*fontHeight) + 7; - int footTop = rect.y() + diagramHeight + 4+fontHeight; - int drawHeight = diagramHeight + footHeight; + int footHeight; + int footTop; + int drawHeight; + bool isFooter = getOptionState().generalState.footerPrinting; + if (isFooter) + { + footHeight = (2*fontHeight) + 7; + footTop = rect.y() + diagramHeight + 4+fontHeight; + drawHeight = diagramHeight + footHeight; + } + else + { + footHeight = 0; + footTop = rect.y() + diagramHeight; + drawHeight = diagramHeight; + } // set window of painter to dimensions of diagram // set window to viewport relation so that x:y isn't changed @@ -357,13 +370,15 @@ // get Diagram getDiagram(QRect(rect.x(), rect.y(), windowWidth, diagramHeight), pPainter); - //draw foot note - QString string = i18n("Diagram: %2 Page %1", 1, getName()); - QColor textColor(50, 50, 50); - pPainter.setPen(textColor); - pPainter.drawLine(rect.x(), footTop , windowWidth, footTop); - pPainter.drawText(rect.x(), footTop + 3, windowWidth, fontHeight, Qt::AlignLeft, string); - + if (isFooter) + { + //draw foot note + QString string = i18n("Diagram: %2 Page %1", 1, getName()); + QColor textColor(50, 50, 50); + pPainter.setPen(textColor); + pPainter.drawLine(rect.x(), footTop , windowWidth, footTop); + pPainter.drawText(rect.x(), footTop + 3, windowWidth, fontHeight, Qt::AlignLeft, string); + } // now restore scaling pPainter.restore(); set version-fixed-in from 4.0.0 changelog |