[qet] [760] Les options d'impression sont desormais configurables. |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/qet Archives
]
Revision: 760
Author: xavier
Date: 2009-10-04 04:04:42 +0200 (Sun, 04 Oct 2009)
Log Message:
-----------
Les options d'impression sont desormais configurables.
Modified Paths:
--------------
trunk/qelectrotech.qrc
trunk/sources/configdialog.cpp
trunk/sources/configpages.cpp
trunk/sources/configpages.h
trunk/sources/qetdiagrameditor.cpp
trunk/sources/qetdiagrameditor.h
trunk/sources/qeticons.cpp
trunk/sources/qetprintpreviewdialog.cpp
Added Paths:
-----------
trunk/ico/128x128/printer.png
Added: trunk/ico/128x128/printer.png
===================================================================
(Binary files differ)
Property changes on: trunk/ico/128x128/printer.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/qelectrotech.qrc
===================================================================
--- trunk/qelectrotech.qrc 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/qelectrotech.qrc 2009-10-04 02:04:42 UTC (rev 760)
@@ -3,6 +3,7 @@
<file>ico/128x128/diagram.png</file>
<file>ico/128x128/settings.png</file>
<file>ico/128x128/document-export.png</file>
+ <file>ico/128x128/printer.png</file>
<file>ico/16x16/add_col.png</file>
<file>ico/16x16/add_row.png</file>
<file>ico/16x16/application-exit.png</file>
Modified: trunk/sources/configdialog.cpp
===================================================================
--- trunk/sources/configdialog.cpp 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/configdialog.cpp 2009-10-04 02:04:42 UTC (rev 760)
@@ -31,8 +31,8 @@
pages_list -> setViewMode(QListView::IconMode);
pages_list -> setIconSize(QSize(110, 110));
pages_list -> setMovement(QListView::Static);
- pages_list -> setMinimumWidth(135);
- pages_list -> setMaximumWidth(135);
+ pages_list -> setMinimumWidth(150);
+ pages_list -> setMaximumWidth(150);
pages_list -> setSpacing(4);
// pages
@@ -40,6 +40,7 @@
addPage(new GeneralConfigurationPage());
addPage(new NewDiagramPage());
addPage(new ExportConfigPage());
+ addPage(new PrintConfigPage());
buildPagesList();
// boutons
Modified: trunk/sources/configpages.cpp
===================================================================
--- trunk/sources/configpages.cpp 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/configpages.cpp 2009-10-04 02:04:42 UTC (rev 760)
@@ -191,7 +191,6 @@
return(tr("G\351n\351ral", "configuration page title"));
}
-
/**
Constructeur
@param parent QWidget parent
@@ -238,3 +237,56 @@
return(tr("Export", "configuration page title"));
}
+/**
+ Constructeur
+ @param parent QWidget parent
+*/
+PrintConfigPage::PrintConfigPage(QWidget *parent) : ConfigPage(parent) {
+ // epw contient les options d'export
+ epw = new ExportPropertiesWidget(QETDiagramEditor::defaultPrintProperties());
+ epw -> setPrintingMode(true);
+
+ // layout vertical contenant le titre, une ligne horizontale et epw
+ QVBoxLayout *vlayout1 = new QVBoxLayout();
+
+ QLabel *title = new QLabel(this -> title());
+ vlayout1 -> addWidget(title);
+
+ QFrame *horiz_line = new QFrame();
+ horiz_line -> setFrameShape(QFrame::HLine);
+ vlayout1 -> addWidget(horiz_line);
+ vlayout1 -> addWidget(epw);
+ vlayout1 -> addStretch();
+
+ // activation du layout
+ setLayout(vlayout1);
+}
+
+/// Destructeur
+PrintConfigPage::~PrintConfigPage() {
+}
+
+/**
+ Applique la configuration de cette page
+*/
+void PrintConfigPage::applyConf() {
+ QString prefix = "print/default";
+
+ QSettings &settings = QETApp::settings();
+ epw -> exportProperties().toSettings(settings, prefix);
+
+ // annule l'enregistrement de certaines proprietes non pertinentes
+ settings.remove(prefix + "path");
+ settings.remove(prefix + "format");
+ settings.remove(prefix + "area");
+}
+
+/// @return l'icone de cette page
+QIcon PrintConfigPage::icon() const {
+ return(QET::Icons::Printer);
+}
+
+/// @return le titre de cette page
+QString PrintConfigPage::title() const {
+ return(tr("Impression", "configuration page title"));
+}
Modified: trunk/sources/configpages.h
===================================================================
--- trunk/sources/configpages.h 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/configpages.h 2009-10-04 02:04:42 UTC (rev 760)
@@ -123,4 +123,27 @@
public:
ExportPropertiesWidget *epw;
};
+
+/**
+ Cette classe represente la page de configuration du dialogue d'impression
+*/
+class PrintConfigPage : public ConfigPage {
+ Q_OBJECT
+ // constructeurs, destructeur
+ public:
+ PrintConfigPage(QWidget * = 0);
+ virtual ~PrintConfigPage();
+ private:
+ PrintConfigPage(const PrintConfigPage &);
+
+ // methodes
+ public:
+ void applyConf();
+ QString title() const;
+ QIcon icon() const;
+
+ // attributs
+ public:
+ ExportPropertiesWidget *epw;
+};
#endif
Modified: trunk/sources/qetdiagrameditor.cpp
===================================================================
--- trunk/sources/qetdiagrameditor.cpp 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/qetdiagrameditor.cpp 2009-10-04 02:04:42 UTC (rev 760)
@@ -1777,3 +1777,17 @@
return(def);
}
+
+/**
+ @return Les parametres d'impression par defaut pour un schema
+*/
+ExportProperties QETDiagramEditor::defaultPrintProperties() {
+ // accede a la configuration de l'application
+ QSettings &settings = QETApp::settings();
+
+ ExportProperties def;
+ // lit les caracteristiques des conducteurs par defaut dans la configuration
+ def.fromSettings(settings, "print/default");
+
+ return(def);
+}
Modified: trunk/sources/qetdiagrameditor.h
===================================================================
--- trunk/sources/qetdiagrameditor.h 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/qetdiagrameditor.h 2009-10-04 02:04:42 UTC (rev 760)
@@ -60,6 +60,7 @@
static BorderProperties defaultBorderProperties();
static ConductorProperties defaultConductorProperties();
static ExportProperties defaultExportProperties();
+ static ExportProperties defaultPrintProperties();
protected:
void actions();
Modified: trunk/sources/qeticons.cpp
===================================================================
--- trunk/sources/qeticons.cpp 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/qeticons.cpp 2009-10-04 02:04:42 UTC (rev 760)
@@ -262,6 +262,7 @@
Phase .addFile(":/ico/16x16/phase.png");
PrintAllPages .addFile(":/ico/22x22/all_pages.png");
Printer .addFile(":/ico/32x32/printer.png");
+ Printer .addFile(":/ico/128x128/printer.png");
PrintLandscape .addFile(":/ico/22x22/landscape.png");
PrintPortrait .addFile(":/ico/22x22/portrait.png");
PrintTwoPages .addFile(":/ico/22x22/two_pages.png");
Modified: trunk/sources/qetprintpreviewdialog.cpp
===================================================================
--- trunk/sources/qetprintpreviewdialog.cpp 2009-10-04 01:32:45 UTC (rev 759)
+++ trunk/sources/qetprintpreviewdialog.cpp 2009-10-04 02:04:42 UTC (rev 760)
@@ -19,6 +19,7 @@
#include "diagramschooser.h"
#include "exportproperties.h"
#include "exportpropertieswidget.h"
+#include "qetdiagrameditor.h"
#include "qeticons.h"
/**
@@ -231,7 +232,10 @@
fit_diagram_to_page_label_ -> setContentsMargins(20, 0, 0, 0);
fit_diagram_to_page_ -> setChecked(true);
- render_properties_ = new ExportPropertiesWidget();
+ // recupere les parametres d'export definis dans la configuration de l'application
+ ExportProperties default_print_properties = QETDiagramEditor::defaultPrintProperties();
+
+ render_properties_ = new ExportPropertiesWidget(default_print_properties);
render_properties_ -> setPrintingMode(true);
buttons_ = new QDialogButtonBox();