Draft: Fix additional translation issues related to the snapping commands
This commit is contained in:
@@ -51,7 +51,9 @@ import DraftGeomUtils
|
||||
import draftguitools.gui_trackers as trackers
|
||||
|
||||
from draftutils.init_tools import get_draft_snap_commands
|
||||
from draftutils.init_tools import get_draft_snap_tooltips
|
||||
from draftutils.messages import _msg, _wrn
|
||||
from draftutils.translate import translate
|
||||
|
||||
__title__ = "FreeCAD Draft Snap tools"
|
||||
__author__ = "Yorik van Havre"
|
||||
@@ -1472,7 +1474,7 @@ class Snapper:
|
||||
self.toolbar = QtGui.QToolBar(mw)
|
||||
mw.addToolBar(QtCore.Qt.TopToolBarArea, self.toolbar)
|
||||
self.toolbar.setObjectName("Draft Snap")
|
||||
self.toolbar.setWindowTitle(QtCore.QCoreApplication.translate("Workbench", "Draft Snap"))
|
||||
self.toolbar.setWindowTitle(translate("Workbench", "Draft Snap"))
|
||||
|
||||
# make snap buttons
|
||||
snap_gui_commands = get_draft_snap_commands()
|
||||
@@ -1495,27 +1497,24 @@ class Snapper:
|
||||
button_suffix The suffix that have to be applied to the command name
|
||||
to define the button name
|
||||
"""
|
||||
tooltips_dict = get_draft_snap_tooltips()
|
||||
for gc in commands:
|
||||
if gc == "Separator":
|
||||
continue
|
||||
if gc == "Draft_ToggleGrid":
|
||||
gb = self.init_grid_button(self.toolbar)
|
||||
context.addAction(gb)
|
||||
QtCore.QObject.connect(gb, QtCore.SIGNAL("triggered()"),
|
||||
lambda f=Gui.doCommand,
|
||||
arg='Gui.runCommand("Draft_ToggleGrid")':f(arg))
|
||||
continue
|
||||
# setup toolbar buttons
|
||||
command = 'Gui.runCommand("' + gc + '")'
|
||||
b = QtGui.QAction(context)
|
||||
b.setIcon(QtGui.QIcon(':/icons/' + gc[6:] + '.svg'))
|
||||
b.setText(QtCore.QCoreApplication.translate("Draft_Snap", "Snap " + gc[11:]))
|
||||
b.setToolTip(QtCore.QCoreApplication.translate("Draft_Snap", "Snap " + gc[11:]))
|
||||
if gc == "Draft_ToggleGrid":
|
||||
b.setIcon(QtGui.QIcon(":/icons/Draft_Grid.svg"))
|
||||
else:
|
||||
b.setIcon(QtGui.QIcon(":/icons/" + gc[6:] + ".svg"))
|
||||
b.setCheckable(True)
|
||||
b.setChecked(True)
|
||||
b.setText(tooltips_dict[gc])
|
||||
b.setToolTip(tooltips_dict[gc])
|
||||
b.setObjectName(gc + button_suffix)
|
||||
b.setWhatsThis("Draft_" + gc[11:].capitalize())
|
||||
b.setCheckable(True)
|
||||
b.setChecked(True)
|
||||
b.setWhatsThis(gc)
|
||||
context.addAction(b)
|
||||
command = 'Gui.runCommand("' + gc + '")'
|
||||
QtCore.QObject.connect(b,
|
||||
QtCore.SIGNAL("triggered()"),
|
||||
lambda f=Gui.doCommand,
|
||||
@@ -1526,18 +1525,6 @@ class Snapper:
|
||||
b.setStatusTip(b.toolTip())
|
||||
|
||||
|
||||
def init_grid_button(self, context):
|
||||
"""Add grid button to the given toolbar"""
|
||||
b = QtGui.QAction(context)
|
||||
b.setIcon(QtGui.QIcon.fromTheme("Draft", QtGui.QIcon(":/icons/"
|
||||
"Draft_Grid.svg")))
|
||||
b.setText(QtCore.QCoreApplication.translate("Draft_Snap", "Toggles Grid On/Off"))
|
||||
b.setToolTip(QtCore.QCoreApplication.translate("Draft_Snap", "Toggle Draft Grid"))
|
||||
b.setObjectName("Grid_Button")
|
||||
b.setWhatsThis("Draft_ToggleGrid")
|
||||
return b
|
||||
|
||||
|
||||
def restore_snap_buttons_state(self, toolbar, button_suffix):
|
||||
"""
|
||||
Restore toolbar button's checked state according to
|
||||
@@ -1553,10 +1540,10 @@ class Snapper:
|
||||
snap = action.objectName()[11:].replace(button_suffix, "")
|
||||
if snap in self.active_snaps:
|
||||
action.setChecked(True)
|
||||
action.setToolTip(action.toolTip() + " (ON)")
|
||||
action.setToolTip(action.toolTip() + " " + (translate("draft", "(ON)")))
|
||||
elif snap in Gui.Snapper.snaps: # required: the toolbar has more children than the buttons
|
||||
action.setChecked(False)
|
||||
action.setToolTip(action.toolTip() + " (OFF)")
|
||||
action.setToolTip(action.toolTip() + " " + (translate("draft", "(OFF)")))
|
||||
|
||||
|
||||
def get_snap_toolbar(self):
|
||||
|
||||
@@ -33,12 +33,12 @@ and is populated by various widgets, buttons and menus.
|
||||
# @{
|
||||
import PySide.QtCore as QtCore
|
||||
import PySide.QtGui as QtGui
|
||||
from PySide.QtCore import QT_TRANSLATE_NOOP
|
||||
|
||||
import FreeCAD as App
|
||||
import FreeCADGui as Gui
|
||||
|
||||
from draftutils.init_tools import get_draft_snap_commands
|
||||
from draftutils.translate import translate
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# SCALE WIDGET FUNCTIONS
|
||||
@@ -48,21 +48,21 @@ draft_scales_metrics = ["1:1000", "1:500", "1:250", "1:200", "1:100",
|
||||
"1:50", "1:25","1:20", "1:10", "1:5","1:2",
|
||||
"1:1",
|
||||
"2:1", "5:1", "10:1", "20:1",
|
||||
QT_TRANSLATE_NOOP("draft","custom"),
|
||||
translate("draft", "custom"),
|
||||
]
|
||||
|
||||
draft_scales_arch_imperial = ["1/16in=1ft", "3/32in=1ft", "1/8in=1ft",
|
||||
"3/16in=1ft", "1/4in=1ft","3/8in=1ft",
|
||||
"1/2in=1ft", "3/4in=1ft", "1in=1ft",
|
||||
"1.5in=1ft", "3in=1ft",
|
||||
QT_TRANSLATE_NOOP("draft","custom"),
|
||||
translate("draft", "custom"),
|
||||
]
|
||||
|
||||
draft_scales_eng_imperial = ["1in=10ft", "1in=20ft", "1in=30ft",
|
||||
"1in=40ft", "1in=50ft", "1in=60ft",
|
||||
"1in=70ft", "1in=80ft", "1in=90ft",
|
||||
"1in=100ft",
|
||||
QT_TRANSLATE_NOOP("draft","custom"),
|
||||
translate("draft", "custom"),
|
||||
]
|
||||
|
||||
def get_scales(unit_system = 0):
|
||||
@@ -135,9 +135,8 @@ def label_to_scale(label):
|
||||
scale = num/den
|
||||
return scale
|
||||
except Exception:
|
||||
err = QT_TRANSLATE_NOOP("draft",
|
||||
"Unable to convert input into a "
|
||||
"scale factor")
|
||||
err = translate("draft",
|
||||
"Unable to convert input into a scale factor")
|
||||
App.Console.PrintWarning(err)
|
||||
return None
|
||||
|
||||
@@ -151,13 +150,11 @@ def _set_scale(action):
|
||||
mw = Gui.getMainWindow()
|
||||
sb = mw.statusBar()
|
||||
scale_widget = sb.findChild(QtGui.QToolBar,"draft_status_scale_widget")
|
||||
if action.text() == QT_TRANSLATE_NOOP("draft","custom"):
|
||||
dialog_text = QT_TRANSLATE_NOOP("draft",
|
||||
"Set custom annotation scale in "
|
||||
"format x:x, x=x"
|
||||
)
|
||||
custom_scale = QtGui.QInputDialog.getText(None, "Set custom scale",
|
||||
dialog_text)
|
||||
if action.text() == translate("draft", "custom"):
|
||||
title_text = translate("draft", "Set custom scale")
|
||||
dialog_text = translate("draft",
|
||||
"Set custom annotation scale in format x:x, x=x")
|
||||
custom_scale = QtGui.QInputDialog.getText(None, title_text, dialog_text)
|
||||
if custom_scale[1]:
|
||||
print(custom_scale[0])
|
||||
scale = label_to_scale(custom_scale[0])
|
||||
@@ -213,8 +210,8 @@ def init_draft_statusbar_scale():
|
||||
gUnits.triggered.connect(_set_scale)
|
||||
scale_label = scale_to_label(draft_annotation_scale)
|
||||
scaleLabel.setText(scale_label)
|
||||
tooltip = "Set the scale used by draft annotation tools"
|
||||
scaleLabel.setToolTip(QT_TRANSLATE_NOOP("draft",tooltip))
|
||||
scaleLabel.setToolTip(translate("draft",
|
||||
"Set the scale used by draft annotation tools"))
|
||||
scale_widget.addWidget(scaleLabel)
|
||||
scale_widget.scaleLabel = scaleLabel
|
||||
|
||||
@@ -248,8 +245,7 @@ def init_draft_statusbar_snap():
|
||||
gridbutton.setIcon(QtGui.QIcon.fromTheme("Draft",
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Draft_Grid.svg")))
|
||||
gridbutton.setToolTip(QT_TRANSLATE_NOOP("Draft",
|
||||
"Toggles Grid On/Off"))
|
||||
gridbutton.setToolTip(translate("Draft", "Toggles Grid On/Off"))
|
||||
gridbutton.setObjectName("Grid_Statusbutton")
|
||||
gridbutton.setWhatsThis("Draft_ToggleGrid")
|
||||
gridbutton.setFlat(True)
|
||||
@@ -262,12 +258,11 @@ def init_draft_statusbar_snap():
|
||||
snappref = param.GetString("snapModes","111111111101111")[0]
|
||||
snapbutton = QtGui.QPushButton(snap_widget)
|
||||
snapbutton.setIcon(QtGui.QIcon.fromTheme("Draft",
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Snap_Lock.svg")))
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Snap_Lock.svg")))
|
||||
snapbutton.setObjectName("Snap_Statusbutton")
|
||||
snapbutton.setWhatsThis("Draft_ToggleLockSnap")
|
||||
snapbutton.setToolTip(QT_TRANSLATE_NOOP("Draft",
|
||||
"Object snapping"))
|
||||
snapbutton.setToolTip(translate("Draft", "Object snapping"))
|
||||
snapbutton.setCheckable(True)
|
||||
snapbutton.setChecked(bool(int(snappref)))
|
||||
snapbutton.setFlat(True)
|
||||
@@ -298,8 +293,8 @@ def init_draft_statusbar_snap():
|
||||
dimbutton.setIcon(QtGui.QIcon.fromTheme("Draft",
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Snap_Dimensions.svg")))
|
||||
dimbutton.setToolTip(QT_TRANSLATE_NOOP("Draft",
|
||||
"Toggles Visual Aid Dimensions On/Off"))
|
||||
dimbutton.setToolTip(translate("Draft",
|
||||
"Toggles Visual Aid Dimensions On/Off"))
|
||||
dimbutton.setObjectName("Draft_Snap_Dimensions_Statusbutton")
|
||||
dimbutton.setWhatsThis("Draft_ToggleDimensions")
|
||||
dimbutton.setFlat(True)
|
||||
@@ -318,8 +313,7 @@ def init_draft_statusbar_snap():
|
||||
"Snap_Ortho.svg")))
|
||||
orthobutton.setObjectName("Draft_Snap_Ortho"+"_Statusbutton")
|
||||
orthobutton.setWhatsThis("Draft_ToggleOrtho")
|
||||
orthobutton.setToolTip(QT_TRANSLATE_NOOP("Draft",
|
||||
"Toggles Ortho On/Off"))
|
||||
orthobutton.setToolTip(translate("Draft", "Toggles Ortho On/Off"))
|
||||
orthobutton.setFlat(True)
|
||||
orthobutton.setCheckable(True)
|
||||
orthobutton.setChecked(bool(int(ortopref)))
|
||||
@@ -332,12 +326,12 @@ def init_draft_statusbar_snap():
|
||||
wppref = param.GetString("snapModes","111111111101111")[14]
|
||||
wpbutton = QtGui.QPushButton(snap_widget)
|
||||
wpbutton.setIcon(QtGui.QIcon.fromTheme("Draft",
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Snap_WorkingPlane.svg")))
|
||||
QtGui.QIcon(":/icons/"
|
||||
"Snap_WorkingPlane.svg")))
|
||||
wpbutton.setObjectName("Draft_Snap_WorkingPlane_Statusbutton")
|
||||
wpbutton.setWhatsThis("Draft_ToggleWorkingPlaneSnap")
|
||||
wpbutton.setToolTip(QT_TRANSLATE_NOOP("Draft",
|
||||
"Toggles Constrain to Working Plane On/Off"))
|
||||
wpbutton.setToolTip(translate("Draft",
|
||||
"Toggles Constrain to Working Plane On/Off"))
|
||||
wpbutton.setFlat(True)
|
||||
wpbutton.setCheckable(True)
|
||||
wpbutton.setChecked(bool(int(wppref)))
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
# @{
|
||||
from PySide.QtCore import QT_TRANSLATE_NOOP
|
||||
|
||||
from draftutils.translate import translate
|
||||
|
||||
# Comment out commands that aren't ready to be used
|
||||
|
||||
|
||||
@@ -154,7 +156,32 @@ def get_draft_snap_commands():
|
||||
'Draft_Snap_Grid',
|
||||
'Draft_Snap_WorkingPlane',
|
||||
'Draft_Snap_Dimensions',
|
||||
'Separator', 'Draft_ToggleGrid']
|
||||
'Separator',
|
||||
'Draft_ToggleGrid']
|
||||
|
||||
|
||||
def get_draft_snap_tooltips():
|
||||
"""Return a dictionary with tooltips for the snapping commands.
|
||||
|
||||
For the snapping commands in the default toolbar and in the statusbar the
|
||||
tooltips from the `GetResources` functions in gui_snaps.py are not used.
|
||||
"""
|
||||
return {'Draft_Snap_Lock' : translate('draft', 'Snap Lock'),
|
||||
'Draft_Snap_Endpoint' : translate('draft', 'Snap Endpoint'),
|
||||
'Draft_Snap_Midpoint' : translate('draft', 'Snap Midpoint'),
|
||||
'Draft_Snap_Center' : translate('draft', 'Snap Center'),
|
||||
'Draft_Snap_Angle' : translate('draft', 'Snap Angle'),
|
||||
'Draft_Snap_Intersection' : translate('draft', 'Snap Intersection'),
|
||||
'Draft_Snap_Perpendicular': translate('draft', 'Snap Perpendicular'),
|
||||
'Draft_Snap_Extension' : translate('draft', 'Snap Extension'),
|
||||
'Draft_Snap_Parallel' : translate('draft', 'Snap Parallel'),
|
||||
'Draft_Snap_Special' : translate('draft', 'Snap Special'),
|
||||
'Draft_Snap_Near' : translate('draft', 'Snap Near'),
|
||||
'Draft_Snap_Ortho' : translate('draft', 'Snap Ortho'),
|
||||
'Draft_Snap_Grid' : translate('draft', 'Snap Grid'),
|
||||
'Draft_Snap_WorkingPlane' : translate('draft', 'Snap WorkingPlane'),
|
||||
'Draft_Snap_Dimensions' : translate('draft', 'Snap Dimensions'),
|
||||
'Draft_ToggleGrid' : translate('draft', 'Toggle Draft Grid')}
|
||||
|
||||
|
||||
def get_draft_context_commands():
|
||||
|
||||
Reference in New Issue
Block a user