Bug report #14535

fix duplicate entries in the vector menu caused by ftools on version upgrade

Added by Mathieu Pellerin - nIRV over 3 years ago. Updated over 2 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:Processing/QGIS
Affected QGIS version:master Regression?:
Operating System: Easy fix?:
Pull Request or Patch supplied:No Resolution:worksforme
Crashes QGIS or corrupts data:No Copied to github as #:22508

Description

(See attached dups.png, which should make it self-explanatory)

As the plan to entirely replace ftools with processing is moving forward (wouhou!), we've now reached a point where processing vector algorithms show in the vector sub menu (yay!) to emulate the UI people are used to using ftools.

- However, when ftools is enabled (which it'll be when people upgrade from previous versions of QGIS), two sets of menus appear, one from ftools and one from processing. IMO, to fix this, we should move the ftools menus into a root "ftools" menu, that way when people update to the next version and still have ftool enabled, it'll look like this:

- ftools (within which you have Research tools, Geoprocessing tools, Geometry tools, Analysis tools, Data Management tools)
- Research tools
- Geoprocessing tools
- Analsyis tools
- Data Management tools -

Setting target to 2.16 as this needs addressing.

dups.png (96.4 KB) Mathieu Pellerin - nIRV, 2016-03-20 01:02 AM

vector_menu3.png (65.8 KB) Alain FERRATON, 2016-06-16 06:46 AM

vector_menu2.png (46.9 KB) Alain FERRATON, 2016-06-16 06:46 AM

vector_menu1.png (18.7 KB) Alain FERRATON, 2016-06-16 06:46 AM


Related issues

Related to QGIS Application - Bug report #16633: Vector menu is duplicated Closed 2017-05-28

Associated revisions

Revision 11289a0d
Added by Jürgen Fischer about 3 years ago

processing: use main vector menu translation (fixes #14535)

Revision 474b9d86
Added by Jürgen Fischer about 3 years ago

processing: use main vector menu translation (fixes #14535)

(cherry picked from commit 11289a0d973e6e4a3f7f81972dd08f2e6d82941e)

Revision 71db5772
Added by Jürgen Fischer about 3 years ago

processing: use main vector menu translation (fixes #14535)

(cherry picked from commit 11289a0d973e6e4a3f7f81972dd08f2e6d82941e)

History

#1 Updated by Anita Graser over 3 years ago

Great to see this moving forward, thanks a lot!

Sidenote: Funnily, on my OSGeo4W install, I don't see duplicates because ftools is broken "Missing metadata file".

#2 Updated by Gerhard Spieles over 3 years ago

Since QGIS master 76296c8, ftools menues are not reachable in the menue taskbar.
Can you take it back to the vector menue or a special "ftools" menue entry?

Thanks

#3 Updated by Matthias Kuhn over 3 years ago

  • Status changed from Open to Feedback

What is the reason for preserving the fTools menu? I think we should try to resolve anything missing in processing so we can really get rid of ftools.

#4 Updated by Alexander Bruy over 3 years ago

Before dropping fTools I added last few missed algs to Processing, so all should be in place.

As fTools was a core plugin, it should be removed during QGIS upgrade. If it didn't removed I'd say this is packaging issue

#5 Updated by Giovanni Manghi over 3 years ago

  • Target version changed from 2.16 to Version 2.16

#6 Updated by Alexander Bruy over 3 years ago

Also note that fTools code was removed from QGIS, so nothing to fix.

#7 Updated by Mathieu Pellerin - nIRV over 3 years ago

Alex, there is something to be fixed, look at the screenshot.

If fTools goes away from the source tree, that's great, but QGIS needs to handle the plugin removal upon upgrade. Otherwise users end up with menu duplicates.

#8 Updated by Mathieu Pellerin - nIRV over 3 years ago

  • Subject changed from ftools: move the vector menus into a ftool root menu (to avoid duplicates) to fix duplicate entries in the vector menu caused by ftools on version upgrade

Alex, updated title n description.

#9 Updated by Giovanni Manghi over 3 years ago

Mathieu Pellerin - nIRV wrote:

Alex, there is something to be fixed, look at the screenshot.

but QGIS needs to handle the plugin removal upon upgrade. Otherwise users end up with menu duplicates.

I guess that was Alex was saying is that QGIS ftools wasn't updated (at least in years) trough the plugin manager, so there is nothing to remove in .qgis2.

Do you still have this issue?

#10 Updated by Alexander Bruy over 3 years ago

Duplicate entries in menu can exist only if fTools was installed via Plugin Manager or manually. When you update QGIS, installer removes existing files and extracts new files. I can't reproduce this upgrading 2.8 and 2.14 to master, in both cases I have no duplicates, fTools was removed from QGIS installation directory.

#11 Updated by Giovanni Manghi over 3 years ago

  • Resolution set to worksforme
  • Status changed from Feedback to Closed

closing for lack of feedback, please reopen if necessary.

#12 Updated by Alain FERRATON over 3 years ago

In the English version I have a single vector menu with two items 'geometry tools'

But in the French version there are two separate vectors menus.

#13 Updated by Alexander Bruy over 3 years ago

Do you see this with clean install?

#14 Updated by Arnaud Morvan over 3 years ago

  • Status changed from Reopened to Closed

There was two different translations on Transifex depending on context string Vect&or => (&Vecteur and Vect&eur). I've fixed that.

#15 Updated by Arnaud Morvan over 3 years ago

  • Status changed from Closed to Reopened

Note that processing vector menu entries are stored in settings after translation. So this is not completely resolved.
Menu entries should be stored in english and translated at render time (when creating menus and actions).

For pylupdate4 to catch string, we could do like for algorithm names and groups, example :

vectorMenu = 'Vect&or'
i18n_vectorMenu = Processing.tr('Vect&or')

I will propose a pull request for that.

#16 Updated by Arnaud Morvan over 3 years ago

  • Status changed from Reopened to Closed

Storing menu entries in english is not a good solution as users will edit them in their language.
I also note that the option dialog to configure menus is not really user friendly and it is really easy to make typo in submenu names.

#17 Updated by Arnaud Morvan over 3 years ago

For those who wants to reset affected vector menu entries :

from processing.core.alglist import algList
from processing.gui.menus import defaultMenuEntries
from processing.core.ProcessingConfig import ProcessingConfig
for provider in algList.providers:
    for alg in provider.algs:
        default = defaultMenuEntries.get(alg.commandLineName(), "")
        ProcessingConfig.setSettingValue("MENU_" + alg.commandLineName(), default)

and restart QGIS

#18 Updated by Arnaud Morvan about 3 years ago

The translation have been re-corrupted by another translator after my correction.
So this have corrupted user settings with 2.16 release.

I've just proposed a Pull Request adding an reset menus button in processing config : https://github.com/qgis/QGIS/pull/3415

#19 Updated by Giovanni Manghi over 2 years ago

The "ftools" category is being removed from the tracker, changing the category of this ticket to "Processing/QGIS" to not leave the category orphaned.

#20 Updated by Jürgen Fischer over 2 years ago

Also available in: Atom PDF