You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.2 KiB
33 lines
1.2 KiB
import FreeCADGui as Gui |
|
import FreeCAD as App |
|
|
|
class AHB_RefreshView: |
|
def GetResources(self): |
|
return {"MenuText": "Refresh page (final quality)", |
|
"ToolTip": "Redraws the current page, or if one or more pages are selected, redraw all the selected pages", |
|
"Pixmap": "" |
|
} |
|
|
|
def IsActive(self): |
|
workbench = Gui.getWorkbench("AssemblyHandbookWorkbench") #: :type workbench: AssemblyHandbookWorkbench |
|
return workbench.techDrawExtensions.getActivePage() is not None |
|
|
|
def Activated(self): |
|
workbench = Gui.getWorkbench("AssemblyHandbookWorkbench") #: :type workbench: AssemblyHandbookWorkbench |
|
|
|
selection = Gui.Selection.getSelection() |
|
has_selected_pages = len(selection) > 0 |
|
for s in selection: |
|
if s.TypeId != 'TechDraw::DrawPage': |
|
has_selected_pages = False |
|
|
|
if has_selected_pages: |
|
for page in selection: |
|
workbench.techDrawExtensions.forceRedrawPage(page, fast_render = False) |
|
else: |
|
page = workbench.techDrawExtensions.getActivePage() |
|
if page is not None: |
|
workbench.techDrawExtensions.forceRedrawPage(page, fast_render = False) |
|
|
|
from ahb_command import AHB_CommandWrapper |
|
AHB_CommandWrapper.addGuiCommand('AHB_view_refresh', AHB_RefreshView())
|
|
|