PreferencesDialog

From Inkscape Wiki
Jump to navigation Jump to search

Looks like Inkscape does not have a dialog to set all kinds of options and preferences. I propose to take the current "Display settings" dialog, rename it to Options or Preferences (DONE), and put all program's (not document's) changeable options there.

I propose that we build this dialog using GTKMM in an upcoming release on our Roadmap. --jon

UPDATE: all of the below is implemented except those items marked (TODO)

Mouse

  • Grab sensitivity: [options.cursortolerance] px

Tooltip: "How close you need to be to an object to be able to grab it with mouse (in pixels)"

  • Click/drag threshold: [options.dragtolerance] px

Tooltip: "Maximum mouse drag (in pixels) which is considered a click, not a drag"

(TODO) Bindings

  • (TODO) Options to redefine at least 2nd and 3rd mouse buttons (with modifiers?); each may select from this pool of functions:
    • zoom in/out
    • context menu
    • pan canvas
    • (?) temporary selector drag (even if you are in another tool)
  • (TODO) Use Emacs format for keys (checkbox) (so it displays e.g. C-S-M-e instead of Ctrl+Shift+Alt+e everywhere)

Steps

  • Arrow keys move by [options.nudgedistance] pt

Tooltip: "Pressing an arrow key moves object or node by this distance."

  • <, > scale by [???] pt

Tooltip: "Pressing < or > scales selection by this increment."

  • Inset/Outset by [options.defaultoffsetwidth] pt

Tooltip: "Inset and Outset commands displace the path by this distance."

  • Rotation snaps every {drop-down: 90 deg|45 deg|...|3.75 deg} [options.rotationsnapsperpi = 2|4|...|48]

Tooltip: "With Ctrl, rotation snaps every step; pressing [ or ] rotates by this amount."

  • Zoom in/out by [options.zoomincrement]*100%

Tooltip: "Zoom tool, +/- keys, middle click zoom in and out by this multiplier"

Scrolling

  • Mouse wheel scrolls by [options.wheelscroll] px

Tooltip: "One mouse wheel notch scrolls by this distance (horizontally with Shift)."

  • Ctrl+arrows
    • Scroll by [options.keyscroll] px

Tooltip: "Press Ctrl+arrow key to scroll by this distance."

    • Acceleration [options.scrollingacceleration]

Tooltip: "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no acceleration)."

  • Autoscroll
    • Speed [options.autoscrollspeed]

Tooltip "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn autoscroll off)."

    • Threshold [options.autoscrolldistance]

Tooltip "How far you need to be from the edge to trigger autoscroll; positive is outside the canvas, negative is within the canvas"

Windows

  • (LATER) "Zoom drawing if window size changes", make this global, on by default, remove from each windows' corner
  • Dialogs on top {drop-down: None, Normal (default), Aggressive} [options.transientpolicy = 0, 1, 2]

Tooltip: "None: dialogs are treated as regular windows; Normal: dialogs stay on top of document windows; Aggressive: same as Normal but may work better with some window managers."

  • Dialogs in taskbar {checkbox} [!options.dialogsskiptaskbar]

Tooltip: "Do not show dialog windows in the window manager taskbar."

  • Save window geometry {checkbox} [options.savewindowgeometry]

Tooltip: "Save the window size and position with each document (only for SVG with extensions)."

(TODO) Locations

  • Module directory locations (where to look for modules)
  • Default open, save, import, export dirs?
  • Additional dirs for the user's own templates, gradients, markers, swatches...

Display

  • Oversample bitmaps

Controls rendering of bitmap images to the screen or to PNG. 'None' uses nearest-neighbor interpolation. (Feature was broken until 0.46 -- see bug report for history and examples)

(TODO) Units

    • global or per-document
    • ruler units
    • coordinate statusbar units
    • other places

Save

  • (TODO for Ted) Default save format: {same list as in Save dialog}
  • (TODO for Ted) Add filename extensions automatically {checkbox}
  • (TODO) Auto save: on/off, frequency
  • Max recent documents [options.maxrecentdocuments]

Tooltip: "The maximum length of the recent documents list in the File menu."

Export

  • Default bitmap resolution [dialogs.export.defaultxdpi]

Tooltip: "The default resolution in the Export dialog."

  • (TODO) Options to manage per-item resolution and filenames

Tools

Those that are likely to be global and constant, not those that need to be changed often; the latter should go to SecondaryToolbar (aka top panel). Some options however can be present both here and in the SecondaryToolbar.

  • Selector: everything from "tool options" for this tool
    • (TODO) make preserve/optimize switch global, affecting not only selector but any transformations
  • (LATER) Rectangle: size of the default shape inserted by Ins
  • (LATER) Ellipse: size of the default shape inserted by Ins
  • (TODO) Star: Defaults: sides, sharpness, star/polygon checkbox [to be stored in tools.shapes.star/default*]
  • (TODO) Spiral: Defaults: revolution, expansion, inner radius [to be stored in tools.shapes.star/default*]
  • (TODO) Calligraphic: Defaults
  • Freehand: default tolerance [tools.freehand.pencil tolerance] (also in its top panel)

(TODO) Template

This tab should display and make editable the content of <group id="template"> in the prefs (zoom, center of view, window size and position). There must also be a button "Take from current document".

(TODO) Commands

Clones:

When original is deleted:

  • unlink clones
  • delete clones
  • ask me

When original is moved:

  • move clones as per transform
  • move clones in sync
  • preserve position of clones

Simplify:

Initial threshold [options.simplifythreshold]

Tooltip: "How much the Simplify command distorts the path. Pressing Ctrl+L repeatedly will gradually increase the threshold; calling Simplify after a pause will reset the threshold to this value."