mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-09-14 20:33:05 +02:00
Prepare: On changeCurrentTitleBlockTemplate combobox load the fields of the template to additional_fields_
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@2114 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
parent
f8f4dbaaca
commit
e7ac7c9c40
@ -19,6 +19,8 @@
|
||||
#include "diagramcontextwidget.h"
|
||||
#include "qeticons.h"
|
||||
#include "templatescollection.h"
|
||||
#include "titleblocktemplate.h"
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param titleblock TitleBlockProperties a afficher
|
||||
@ -248,6 +250,26 @@ void TitleBlockPropertiesWidget::duplicateCurrentTitleBlockTemplate() {
|
||||
emit(editTitleBlockTemplate(currentTitleBlockTemplateName(), true));
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief changeCurrentTitleBlockTemplate load the fields of the template to additional_fields_
|
||||
* @param text
|
||||
*/
|
||||
void TitleBlockPropertiesWidget::changeCurrentTitleBlockTemplate(QString text) {
|
||||
// delete all entry
|
||||
additional_fields_ -> clear() ;
|
||||
// get template
|
||||
TitleBlockTemplate *tpl = tbt_collection_ -> getTemplate( text );
|
||||
if(tpl != 0) {
|
||||
// get all template fields
|
||||
QStringList fields = tpl -> listOfVariables();
|
||||
// set fields to additional_fields_ widget
|
||||
DiagramContext templateContext;
|
||||
for(int i =0; i<fields.count(); i++)
|
||||
templateContext.addValue(fields.at(i), "");
|
||||
setDiagramContext(templateContext);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Builds the various child widgets for this widget
|
||||
*/
|
||||
@ -267,6 +289,7 @@ void TitleBlockPropertiesWidget::initWidgets(const TitleBlockProperties &titlebl
|
||||
// widgets
|
||||
titleblock_template_label = new QLabel(tr("Mod\350le :"), this);
|
||||
titleblock_template_name = new QComboBox(this);
|
||||
connect(titleblock_template_name, SIGNAL(currentIndexChanged(QString)),this, SLOT(changeCurrentTitleBlockTemplate(QString)) );
|
||||
titleblock_template_button_ = new QPushButton(QET::Icons::TitleBlock, QString());
|
||||
titleblock_template_button_ -> setMenu(titleblock_template_menu_);
|
||||
|
||||
|
@ -52,6 +52,7 @@ class TitleBlockPropertiesWidget : public QWidget {
|
||||
void updateTemplateList();
|
||||
void editCurrentTitleBlockTemplate();
|
||||
void duplicateCurrentTitleBlockTemplate();
|
||||
void changeCurrentTitleBlockTemplate(QString text);
|
||||
void setDate_now();
|
||||
|
||||
private:
|
||||
|
@ -1329,6 +1329,24 @@ QString TitleBlockTemplate::interpreteVariables(const QString &string, const Dia
|
||||
return(interpreted_string);
|
||||
}
|
||||
|
||||
/**
|
||||
@brief Get list of variables
|
||||
@return The list of string with variables
|
||||
*/
|
||||
QStringList TitleBlockTemplate::listOfVariables() {
|
||||
QStringList list;
|
||||
// run through each individual cell
|
||||
for (int j = 0 ; j < rows_heights_.count() ; ++ j) {
|
||||
for (int i = 0 ; i < columns_width_.count() ; ++ i) {
|
||||
if (cells_[i][j] -> spanner_cell || cells_[i][j] -> cell_type == TitleBlockCell::EmptyCell) continue;
|
||||
// TODO: not works on all cases...
|
||||
list << cells_[i][j] -> value.name().replace("%","");
|
||||
}
|
||||
}
|
||||
qDebug() << list;
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
This method uses a \a painter to render the \a text of a \a cell
|
||||
into the \a cell_rect rectangle.
|
||||
|
@ -106,6 +106,7 @@ class TitleBlockTemplate : public QObject {
|
||||
void applyCellSpan(TitleBlockCell *);
|
||||
void applyRowColNums();
|
||||
void rowColsChanged();
|
||||
QStringList listOfVariables();
|
||||
|
||||
protected:
|
||||
void loadInformation(const QDomElement &);
|
||||
|
Loading…
x
Reference in New Issue
Block a user