COIN-OR::LEMON - Graph Library

Changeset 156:c5cdf6690cdf in glemon-0.x for graph_displayer_canvas.cc


Ignore:
Timestamp:
09/28/06 16:32:40 (18 years ago)
Author:
Hegyi Péter
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/glemon/trunk@2961
Message:

Zoom tracking of nodes is implemented and is switchable.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • graph_displayer_canvas.cc

    r154 r156  
    66  nodetextmap(mainw.mapstorage.graph), displayed_graph(*(root()), 0, 0),
    77  isbutton(0), active_item(NULL), target_item(NULL), nodemap_to_edit(""),
    8   edgemap_to_edit(""), autoscale(true), radius_min(10), radius_max(40), radius_unit(1), mytab(mainw)
     8  edgemap_to_edit(""), autoscale(true), zoomtrack(false), radius_min(10), radius_max(40), radius_unit(1), mytab(mainw)
    99{
    1010  //base event handler is move tool
     
    228228}
    229229
    230 void GraphDisplayerCanvas::setNodeView(bool autoscale_p, double min_p, double max_p, double unit_p)
     230void GraphDisplayerCanvas::setNodeView(bool autoscale_p, bool zoomtrack_p, double min_p, double max_p, double unit_p)
    231231{
    232232  autoscale=autoscale_p;
     
    234234  radius_max=max_p;
    235235  radius_unit=unit_p;
     236
     237  if((!zoomtrack) && zoomtrack_p)
     238    {
     239      fixed_zoom_factor=get_pixels_per_unit();
     240    }
     241
     242  zoomtrack=zoomtrack_p;
     243
    236244  propertyChange(false, N_RADIUS);
    237245}
    238246
    239 void GraphDisplayerCanvas::getNodeView(bool & autoscale_p, double& min_p, double& max_p, double& unit_p)
     247void GraphDisplayerCanvas::getNodeView(bool & autoscale_p, bool & zoomtrack_p, double& min_p, double& max_p, double& unit_p)
    240248{
    241249  autoscale_p=autoscale;
     250  zoomtrack_p=zoomtrack;
    242251  min_p=radius_min;
    243252  max_p=radius_max;
Note: See TracChangeset for help on using the changeset viewer.