On Mon, Jul 16, 2012 at 2:18 AM, Marco Hugentobler <marco.hugentob...@sourcepole.ch> wrote: > Hi Larry > > Excellent work, thank you! > The freeze/thaw tool will be a great addition to the label tool bar. > > I wonder if the tool could also be active if x/y is data defined and > rotation not (currently, x/y/rotation need to be data defined to use the > tool).
Yes, that is an unnecessary restriction. I'll make the rotation field optional. > On a detail level, in QgsMapToolFreezeLabels::highlightLabel you could > probably use QgsMapRenderer::mapToLayerCoordinates to transform the > rectangle (instead of mCoordTransform ). Will make the change. Thanks. If you have the time to look at the constructor for QgsMapToolFreezeLabels (the FIXME), you'll notice I could not find a way to make the signal/slot connections from there. Currently they are in qgisapp.cpp, but I would prefer to not pollute that core file with any more of my tool's code than necessary. What's the simplest way to create the connections from inside my QObject-inherited tool instead? Regards, Larry > Am 16.07.2012 05:31, schrieb Larry Shaffer: > > Hi, > > The current large-format project I'm working on requires me to layout, > for print, thousands of labels. So I spent the last couple of days > making two new tools for the advanced labeling toolbar that allow the > user to interactively 'freeze' (write coords and rotation info to > attribute table) and 'thaw' (revert from data-defined to dynamic) any > rendered labels. > > *Show Frozen Labels* > > This tool highlights frozen labels for all visible layers. Blue > highlighted labels are frozen, green are frozen and editable (parent > layer's in edit mode). > > *Freeze/Thaw Labels* > > This tool allows the user to interactively choose, by single or > marquee selection, labels to freeze or thaw. The in-memory attribute > table is immediately updated and results shown to user. This tool > allows the user to interactively manipulate the PAL labeling engine to > find the best solutions for their frozen labels. > > Since the topic and how the tool interacts with the labeling engine is > more complicated, I made an intro video. (Note: I haven't had much > sleep recently, so it's a bit rough.) > > http://vimeo.com/dakotacarto/freezethawlabels > > > This is my first C++ project, so I'd be really happy if someone > audited the code before I squash the commits and send a pull request: > > https://github.com/dakcarto/Quantum-GIS/tree/feature_freeze-thaw-labels > > Only tested on Mac, as of now. Nothing platform-specific about it though. > > Regards, > > Larry Shaffer > Dakota Cartography > Black Hills, South Dakota > > > > _______________________________________________ > Qgis-developer mailing list > Qgis-developer@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/qgis-developer > > > > -- > Dr. Marco Hugentobler > Sourcepole - Linux & Open Source Solutions > Weberstrasse 5, CH-8004 Zürich, Switzerland > marco.hugentob...@sourcepole.ch http://www.sourcepole.ch > Technical Advisor QGIS Project Steering Committee > > > _______________________________________________ > Qgis-developer mailing list > Qgis-developer@lists.osgeo.org > http://lists.osgeo.org/mailman/listinfo/qgis-developer > _______________________________________________ Qgis-developer mailing list Qgis-developer@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/qgis-developer