[Uml-devel] [Bug 69113] Turn off header/footer and page numbers when printing
Oliver Kellogg
okellogg at users.sourceforge.net
Wed Feb 21 21:32:08 UTC 2007
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=69113
okellogg users sourceforge net changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From okellogg users sourceforge net 2007-02-21 22:32 -------
SVN commit 636081 by okellogg:
Apply attachment 19728 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();
More information about the umbrello-devel
mailing list