mirror of https://github.com/KLayout/klayout.git
Debugging and finalization
This commit is contained in:
parent
b92c7bf225
commit
7eadac527b
|
|
@ -474,6 +474,8 @@ static void add_marker (lay::LayoutViewBase *view, lay::ManagedDMarker *object)
|
||||||
{
|
{
|
||||||
if (view->canvas ()) {
|
if (view->canvas ()) {
|
||||||
view->canvas ()->add_object (object);
|
view->canvas ()->add_object (object);
|
||||||
|
object->keep ();
|
||||||
|
object->set_view (view);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -203,6 +203,15 @@ MarkerBase::MarkerBase (lay::LayoutViewBase *view)
|
||||||
// .. nothing yet ..
|
// .. nothing yet ..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
MarkerBase::set_view (LayoutViewBase *view)
|
||||||
|
{
|
||||||
|
if (mp_view != view) {
|
||||||
|
mp_view = view;
|
||||||
|
redraw ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
MarkerBase::set_frame_color (tl::Color color)
|
MarkerBase::set_frame_color (tl::Color color)
|
||||||
{
|
{
|
||||||
|
|
@ -381,7 +390,7 @@ MarkerBase::get_bitmaps (const Viewport & /*vp*/, ViewObjectCanvas &canvas, lay:
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
GenericMarkerBase::GenericMarkerBase (lay::LayoutViewBase *view, unsigned int cv_index)
|
GenericMarkerBase::GenericMarkerBase (lay::LayoutViewBase *view, unsigned int cv_index)
|
||||||
: MarkerBase (view), mp_trans_vector (0), mp_view (view), m_cv_index (cv_index)
|
: MarkerBase (view), mp_trans_vector (0), m_cv_index (cv_index)
|
||||||
{
|
{
|
||||||
// .. nothing yet ..
|
// .. nothing yet ..
|
||||||
}
|
}
|
||||||
|
|
@ -463,7 +472,7 @@ GenericMarkerBase::set (const db::DCplxTrans &t1, const std::vector<db::DCplxTra
|
||||||
db::DBox
|
db::DBox
|
||||||
GenericMarkerBase::bbox () const
|
GenericMarkerBase::bbox () const
|
||||||
{
|
{
|
||||||
const lay::CellView &cv = mp_view->cellview (m_cv_index);
|
const lay::CellView &cv = view ()->cellview (m_cv_index);
|
||||||
if (! cv.is_valid ()) {
|
if (! cv.is_valid ()) {
|
||||||
return db::DBox ();
|
return db::DBox ();
|
||||||
}
|
}
|
||||||
|
|
@ -483,11 +492,11 @@ GenericMarkerBase::bbox () const
|
||||||
const db::Layout *
|
const db::Layout *
|
||||||
GenericMarkerBase::layout () const
|
GenericMarkerBase::layout () const
|
||||||
{
|
{
|
||||||
if (m_cv_index >= (unsigned int) (mp_view->cellviews ())) {
|
if (m_cv_index >= (unsigned int) (view ()->cellviews ())) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
const lay::CellView &cv = mp_view->cellview (m_cv_index);
|
const lay::CellView &cv = view ()->cellview (m_cv_index);
|
||||||
if (! cv.is_valid ()) {
|
if (! cv.is_valid ()) {
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -1175,7 +1184,7 @@ Marker::render (const Viewport &vp, ViewObjectCanvas &canvas)
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
DMarker::DMarker (LayoutViewBase *view)
|
DMarker::DMarker (LayoutViewBase *view)
|
||||||
: MarkerBase (view), mp_view (view)
|
: MarkerBase (view)
|
||||||
{
|
{
|
||||||
m_type = None;
|
m_type = None;
|
||||||
m_object.any = 0;
|
m_object.any = 0;
|
||||||
|
|
@ -1304,9 +1313,9 @@ DMarker::render (const Viewport &vp, ViewObjectCanvas &canvas)
|
||||||
|
|
||||||
lay::Renderer &r = canvas.renderer ();
|
lay::Renderer &r = canvas.renderer ();
|
||||||
|
|
||||||
r.set_font (db::Font (mp_view->text_font ()));
|
r.set_font (db::Font (view ()->text_font ()));
|
||||||
r.apply_text_trans (mp_view->apply_text_trans ());
|
r.apply_text_trans (view ()->apply_text_trans ());
|
||||||
r.default_text_size (mp_view->default_text_size ());
|
r.default_text_size (view ()->default_text_size ());
|
||||||
r.set_precise (true);
|
r.set_precise (true);
|
||||||
|
|
||||||
db::DCplxTrans t = vp.trans ();
|
db::DCplxTrans t = vp.trans ();
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,11 @@ public:
|
||||||
*/
|
*/
|
||||||
MarkerBase (lay::LayoutViewBase *view);
|
MarkerBase (lay::LayoutViewBase *view);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Attaches to a new view
|
||||||
|
*/
|
||||||
|
void set_view (lay::LayoutViewBase *view);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Get the color by which the marker is drawn
|
* @brief Get the color by which the marker is drawn
|
||||||
*
|
*
|
||||||
|
|
@ -232,6 +237,11 @@ protected:
|
||||||
return mp_view;
|
return mp_view;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const lay::LayoutViewBase *view () const
|
||||||
|
{
|
||||||
|
return mp_view;
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
tl::Color m_color;
|
tl::Color m_color;
|
||||||
tl::Color m_frame_color;
|
tl::Color m_frame_color;
|
||||||
|
|
@ -325,14 +335,6 @@ public:
|
||||||
return m_cv_index;
|
return m_cv_index;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Gets the view object
|
|
||||||
*/
|
|
||||||
lay::LayoutViewBase *view () const
|
|
||||||
{
|
|
||||||
return mp_view;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets the bounding box
|
* @brief Gets the bounding box
|
||||||
*/
|
*/
|
||||||
|
|
@ -351,7 +353,6 @@ public:
|
||||||
private:
|
private:
|
||||||
db::CplxTrans m_trans;
|
db::CplxTrans m_trans;
|
||||||
std::vector<db::DCplxTrans> *mp_trans_vector;
|
std::vector<db::DCplxTrans> *mp_trans_vector;
|
||||||
lay::LayoutViewBase *mp_view;
|
|
||||||
unsigned int m_cv_index;
|
unsigned int m_cv_index;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -828,8 +829,6 @@ private:
|
||||||
db::DText *text;
|
db::DText *text;
|
||||||
void *any;
|
void *any;
|
||||||
} m_object;
|
} m_object;
|
||||||
|
|
||||||
lay::LayoutViewBase *mp_view;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue