mirror of https://github.com/KLayout/klayout.git
Another performance fix for the many layers case
This commit is contained in:
parent
1ad7dc0d98
commit
de6e1ffd53
|
|
@ -326,7 +326,7 @@ struct LayerSelectionComboBoxPrivateData
|
|||
};
|
||||
|
||||
LayerSelectionComboBox::LayerSelectionComboBox (QWidget *parent)
|
||||
: QComboBox (parent)
|
||||
: QComboBox (parent), dm_update_layer_list (this, &LayerSelectionComboBox::do_update_layer_list)
|
||||
{
|
||||
mp_private = new LayerSelectionComboBoxPrivateData ();
|
||||
mp_private->no_layer_available = false;
|
||||
|
|
@ -471,6 +471,12 @@ LayerSelectionComboBox::set_layout (const db::Layout *layout)
|
|||
|
||||
void
|
||||
LayerSelectionComboBox::update_layer_list ()
|
||||
{
|
||||
dm_update_layer_list ();
|
||||
}
|
||||
|
||||
void
|
||||
LayerSelectionComboBox::do_update_layer_list ()
|
||||
{
|
||||
int i = currentIndex ();
|
||||
db::LayerProperties props = mp_private->last_props;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
#include "layuiCommon.h"
|
||||
|
||||
#include "tlObject.h"
|
||||
#include "tlDeferredExecution.h"
|
||||
|
||||
#include <QPushButton>
|
||||
#include <QComboBox>
|
||||
|
|
@ -251,9 +252,11 @@ protected slots:
|
|||
|
||||
private:
|
||||
LayerSelectionComboBoxPrivateData *mp_private;
|
||||
tl::DeferredMethod<LayerSelectionComboBox> dm_update_layer_list;
|
||||
|
||||
void on_layer_list_changed (int);
|
||||
void update_layer_list ();
|
||||
void do_update_layer_list ();
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in New Issue