mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-20 16:20:52 +01:00
change the way for apply new conductor property to all potential
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@2638 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -1021,8 +1021,7 @@ void DiagramView::editConductor() {
|
|||||||
@param edited_conductor Conducteur a editer
|
@param edited_conductor Conducteur a editer
|
||||||
*/
|
*/
|
||||||
void DiagramView::editConductor(Conductor *edited_conductor) {
|
void DiagramView::editConductor(Conductor *edited_conductor) {
|
||||||
if (scene -> isReadOnly()) return;
|
if (scene -> isReadOnly() || !edited_conductor) return;
|
||||||
if (!edited_conductor) return;
|
|
||||||
|
|
||||||
// initialise l'editeur de proprietes pour le conducteur
|
// initialise l'editeur de proprietes pour le conducteur
|
||||||
ConductorProperties old_properties = edited_conductor -> properties();
|
ConductorProperties old_properties = edited_conductor -> properties();
|
||||||
@@ -1036,8 +1035,11 @@ void DiagramView::editConductor(Conductor *edited_conductor) {
|
|||||||
conductor_dialog.setWindowTitle(tr("\311diter les propri\351t\351s d'un conducteur", "window title"));
|
conductor_dialog.setWindowTitle(tr("\311diter les propri\351t\351s d'un conducteur", "window title"));
|
||||||
QVBoxLayout *dialog_layout = new QVBoxLayout(&conductor_dialog);
|
QVBoxLayout *dialog_layout = new QVBoxLayout(&conductor_dialog);
|
||||||
dialog_layout -> addWidget(cpw);
|
dialog_layout -> addWidget(cpw);
|
||||||
|
QCheckBox *cb_apply_all = new QCheckBox(tr("Appliquer les propri\351t\351s \340 l'ensemble des conducteurs de ce potentiel"), &conductor_dialog);
|
||||||
|
dialog_layout -> addWidget(cb_apply_all);
|
||||||
dialog_layout -> addStretch();
|
dialog_layout -> addStretch();
|
||||||
QDialogButtonBox *dbb = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
|
QDialogButtonBox *dbb = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
|
||||||
|
dbb -> setParent(&conductor_dialog);
|
||||||
dialog_layout -> addWidget(dbb);
|
dialog_layout -> addWidget(dbb);
|
||||||
connect(dbb, SIGNAL(accepted()), &conductor_dialog, SLOT(accept()));
|
connect(dbb, SIGNAL(accepted()), &conductor_dialog, SLOT(accept()));
|
||||||
connect(dbb, SIGNAL(rejected()), &conductor_dialog, SLOT(reject()));
|
connect(dbb, SIGNAL(rejected()), &conductor_dialog, SLOT(reject()));
|
||||||
@@ -1049,16 +1051,7 @@ void DiagramView::editConductor(Conductor *edited_conductor) {
|
|||||||
ConductorProperties new_properties = cpw -> conductorProperties();
|
ConductorProperties new_properties = cpw -> conductorProperties();
|
||||||
|
|
||||||
if (new_properties != old_properties) {
|
if (new_properties != old_properties) {
|
||||||
int qmbreturn=0;
|
if (cb_apply_all -> isChecked()) {
|
||||||
//if conductor isn't alone at this potential and is property is changed
|
|
||||||
//ask user to apply text on every conductors of this potential
|
|
||||||
if (edited_conductor -> relatedPotentialConductors().size() >= 1){
|
|
||||||
qmbreturn = QMessageBox::question(diagramEditor(), tr("Propri\351t\351 de conducteurs"),
|
|
||||||
tr("Voulez-vous appliquer les nouvelles propri\351t\351s \n"
|
|
||||||
"\340 l'ensemble des conducteurs de ce potentiel ?"),
|
|
||||||
QMessageBox::No| QMessageBox::Yes, QMessageBox::Yes);
|
|
||||||
|
|
||||||
if (qmbreturn == QMessageBox::Yes){
|
|
||||||
QSet <Conductor *> conductorslist = edited_conductor -> relatedPotentialConductors();
|
QSet <Conductor *> conductorslist = edited_conductor -> relatedPotentialConductors();
|
||||||
conductorslist << edited_conductor;
|
conductorslist << edited_conductor;
|
||||||
QList <ConductorProperties> old_properties_list;
|
QList <ConductorProperties> old_properties_list;
|
||||||
@@ -1078,9 +1071,8 @@ void DiagramView::editConductor(Conductor *edited_conductor) {
|
|||||||
cscpc -> setNewSettings(new_properties);
|
cscpc -> setNewSettings(new_properties);
|
||||||
diagram() -> undoStack().push(cscpc);
|
diagram() -> undoStack().push(cscpc);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (qmbreturn == 0 || qmbreturn == QMessageBox::No) {
|
else {
|
||||||
// initialise l'objet UndoCommand correspondant
|
// initialise l'objet UndoCommand correspondant
|
||||||
ChangeConductorPropertiesCommand *ccpc = new ChangeConductorPropertiesCommand(edited_conductor);
|
ChangeConductorPropertiesCommand *ccpc = new ChangeConductorPropertiesCommand(edited_conductor);
|
||||||
ccpc -> setOldSettings(old_properties);
|
ccpc -> setOldSettings(old_properties);
|
||||||
|
|||||||
Reference in New Issue
Block a user