+void MenuDefinition::expandZoomOptions(BufferView const * bv)
+{
+ if (!bv)
+ return;
+
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("Reset to Default (%1$d%)|R"),
+ lyxrc.defaultZoom)),
+ FuncRequest(LFUN_BUFFER_ZOOM)));
+ add(MenuItem(MenuItem::Command, qt_("Zoom In|I"),
+ FuncRequest(LFUN_BUFFER_ZOOM_IN)));
+ add(MenuItem(MenuItem::Command, qt_("Zoom Out|O"),
+ FuncRequest(LFUN_BUFFER_ZOOM_OUT)));
+ add(MenuItem(MenuItem::Separator));
+ // Offer some fractional values of the default
+ int z = lyxrc.defaultZoom * 1.75;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+ z = lyxrc.defaultZoom * 1.5;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+ z = lyxrc.defaultZoom * 1.25;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+ z = lyxrc.defaultZoom * 0.75;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+ z = lyxrc.defaultZoom * 0.5;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+ z = lyxrc.defaultZoom * 0.25;
+ add(MenuItem(MenuItem::Command,
+ toqstr(bformat(_("[[ZOOM]]%1$d%"), z)),
+ FuncRequest(LFUN_BUFFER_ZOOM, convert<string>(z))));
+}
+
+