Skip to content

Commit 64bfe9f

Browse files
Merge pull request #1958 from KLayout/bugfix/issue-1953
Fixing bug #1953 (inconsistent behavior of callback) maybe
2 parents 9e98b0d + d9048f7 commit 64bfe9f

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/edt/edt/edtPCellParametersPage.cc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -614,7 +614,7 @@ PCellParametersPage::setup (lay::LayoutViewBase *view, int cv_index, const db::P
614614
m_initial_states = m_states;
615615
mp_error_frame->hide ();
616616

617-
update_widgets_from_states (m_states);
617+
update_widgets_from_states (m_states, lazy_evaluation ());
618618

619619
mp_parameters_area->setWidget (mp_main_frame);
620620
mp_main_frame->show ();
@@ -713,7 +713,7 @@ PCellParametersPage::do_parameter_changed ()
713713
db::ParameterStates states = m_states;
714714
get_parameters (states, &ok); // includes coerce
715715
if (ok) {
716-
update_widgets_from_states (states);
716+
update_widgets_from_states (states, lazy_evaluation ());
717717
if (! lazy_evaluation ()) {
718718
emit edited ();
719719
}
@@ -959,11 +959,11 @@ PCellParametersPage::set_parameters (const std::vector<tl::Variant> &parameters)
959959
m_initial_states = m_states;
960960
mp_error_frame->hide ();
961961

962-
set_parameters_internal (m_states, false);
962+
update_widgets_from_states (m_states, false);
963963
}
964964

965965
void
966-
PCellParametersPage::update_widgets_from_states (const db::ParameterStates &states)
966+
PCellParametersPage::update_widgets_from_states (const db::ParameterStates &states, bool tentatively)
967967
{
968968
if (! mp_pcell_decl) {
969969
return;
@@ -1031,7 +1031,7 @@ PCellParametersPage::update_widgets_from_states (const db::ParameterStates &stat
10311031

10321032
}
10331033

1034-
set_parameters_internal (states, lazy_evaluation ());
1034+
set_parameters_internal (states, tentatively);
10351035

10361036
// QGridLayouts are bad in handling nested QFrame (or QGroupBox) with their own layouts,
10371037
// so we help a little here:

src/edt/edt/edtPCellParametersPage.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ private slots:
177177
bool lazy_evaluation ();
178178
void set_parameters_internal (const db::ParameterStates &states, bool tentatively);
179179
bool update_current_parameters ();
180-
void update_widgets_from_states (const db::ParameterStates &states);
180+
void update_widgets_from_states (const db::ParameterStates &states, bool tentatively);
181181
void get_parameters_internal (db::ParameterStates &states, bool &edit_error);
182182
std::vector<tl::Variant> parameter_from_states (const db::ParameterStates &states) const;
183183
void states_from_parameters (db::ParameterStates &states, const std::vector<tl::Variant> &parameters);

0 commit comments

Comments
 (0)