On Sun, 27 Oct 2019 at 09:01, Maaza Mekuria <[email protected]> wrote: > > Thank you Etienne. I did just what you suggested. But did not het anywhere. > I still get the same error message. > > My question did not get resolved and only for lack of information i can't > move forward with the upgrade. > What i think has happened is that QGIS leadership has chosen to control the > access gates to "ousiders" who want to program in C++ and related functiions > in producing plugins by controlling how plugins are registered. > > It is a pity that I can't upgrade this plugin for lack of information. > > In the past i have donated money and willing to donate time and money. Whay > is there so much secrecy on the basic C++ plugin initialization and registry? > It does not make for a good and inclusive policy.
There's no conspiracy here -- rather, c++ plugins have always been horrible to build, deploy and debug (especially on Windows). Over time the core project recognised this, realised it was a bad situation for developers like yourself, and started encouraging people to completely avoid using c++ plugins and move to Python wherever possible. I strongly suspect that the reason no-one has answered your question is just because no-one **knows** the answer! (I certainly don't -- I saw your earlier thread, and the only advice I was able to offer at the time was what Etienne had already suggested). Nyall > > Thank for your help anyway. > > > On Sun, Sep 15, 2019, 9:11 PM Etienne Trimaille <[email protected]> > wrote: >> >> Hi, >> >> I can't really answer your question but you should use >> https://qgis.org/api/classQgsMapLayerComboBox.html instead of creating your >> own combobox. (if possible). >> >> Etienne >> >> Le dim. 15 sept. 2019 à 10:11, Maaza Mekuria <[email protected]> a écrit : >>> >>> QGIS Layer List upgrade to V3 C++ plugin - Geographic Information Systems >>> Stack Exchange <style>body,.top-bar{margin-top:1.9em}</style> >>> >>> I was upgrading a c++ plugin that I had used in the past and almost >>> eliminated all the the usual compiler errors due to version changes >>> according for the current version (3.6). The plugin used to collect current >>> map canvas layers in a combo list box for selection. I am getting two >>> errors that I can't figure out what to do with. This code compiled without >>> problem pre-2.0. >>> >>> The first happens to be about QGSMapLayer that can't be instantiated >>> because it is turned as an abstract class and I am getting an error >>> [Severity Code Description Project File Line Source Suppression State Error >>> C2259 'QgsMapLayer': cannot instantiate abstract class tarjan_sccplugin >>> C:\OSGeo4W64\apps\Qt5\include\QtCore\qlist.h 214 Build ] >>> >>> This is portion of the code generating the error. Where cmbNetSourceLayer >>> is a combo-box . >>> >>> void tarjan_sccGui::populateLayers( QString const& url ) { >>> cmbNetSourceLayer->clear(); >>> >>> QString layerName; QString layerType; >>> >>> // fill list of layers >>> QMap<QString, QgsMapLayer*> mapLayers = QgsProject::instance()->mapLayers(); >>> QMap<QString, QgsMapLayer*>::iterator layer_it = mapLayers.begin(); >>> >>> for (; layer_it != mapLayers.end(); ++layer_it) >>> { >>> QgsVectorLayer* vl = dynamic_cast<QgsVectorLayer*>(layer_it.value()); >>> if (!vl) >>> continue; >>> else >>> >>> cmbNetSourceLayer->addItem(vl->name() ); >>> } >>> >>> The second error appears to be in explicit declaration for the plugin. >>> Something has changed in how the plugins are initiated. [Severity Code >>> Description Project File Line Source Suppression State Error (active) >>> invalid explicit instantiation declaration tarjan_sccplugin >>> d:\GIS\v3\Quantum-GIS\src\core\qgsoptionalexpression.h 82 IntelliSense ] >>> >>> No idea what must be done to overcome this error. The cited module appears >>> to be an optional data module. >>> >>> >>> Any help is appreciated. >>> >>> _______________________________________________ >>> QGIS-Developer mailing list >>> [email protected] >>> List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer >>> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer > > _______________________________________________ > QGIS-Developer mailing list > [email protected] > List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer _______________________________________________ QGIS-Developer mailing list [email protected] List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
