Calligra/Icons/3.0: Difference between revisions
Line 973: | Line 973: | ||
| | | | ||
| "Relation between database tables", in MSA: http://i.imgur.com/qerjsis.png | | "Relation between database tables", in MSA: http://i.imgur.com/qerjsis.png | ||
| http://i.imgur.com/ | | http://i.imgur.com/OFsceYR.png | ||
|} | |} | ||
Revision as of 21:17, 11 December 2015
Legend: TODO, DONE, ??
all icons are available at https://share.kde.org/index.php/s/AJ0ELSIjLLfN3Iw for an better overview
Existing table icons in Breeze
edit-table-cell-merge edit-table-cell-split edit-table-delete-column edit-table-delete-row edit-table-insert-column-left edit-table-insert-column-right edit-table-insert-row-above edit-table-insert-row-below
The naming pattern for action icons (as I understand it):
edit-OBJECT-ACTION(-MATERIAL)
"edit-" as prefix because content is changed. Then there are "format-" icons for changing the style of content. And state icons, though there is slight mix with action icons, as target state is also used with actions.
old name | proposed name | description | state | |
---|---|---|---|---|
adjustcol | edit-table-column-resize-equal | used for both equalize & adapt-to-content currently, should be split | ? | |
adjustcol | edit-table-column-resize-fit | see above | ? | |
adjustrow | edit-table-row-resize-equal | used for both equalize & adapt-to-content, should be split | ? | |
adjustrow | edit-table-row-resize-fit | see above | ? | |
resizecol | edit-table-column-resize | ? | ||
resizerow | edit-table-row-resize | ? | ||
hide_table_column | table-column-visible-off | target state used with action, like "layer-visible-*" | ? | |
hide_table_row | table-row-visible-off | " | ? | |
show_table_column | table-column-visible-on | " | ? | |
show_table_row | table-row-visible-on | " | ? | |
cell_edit | edit-table-cell-edit | used to start editing (text) content of cell, "edit" as action seems strange, just "edit-table-cell" also, better idea? | ? | |
cell_layout | edit-table-cell-format | used to start formatting (content of) cell, see also tool_cellformatting. Or "format-table-cell"? | ? | |
insertcell | edit-table-insert-cell | used to insert single blank cell or multiple ones, incl. full row/column | ? | |
insertcellcopy | edit-table-paste-cell | for inserting cells from clipboard, moving existing ones to other positions | ? | |
mergecell | edit-table-cell-merge | seems existing icon is for same usecase | ? | |
mergecell-horizontal | edit-table-cell-merge-horizontal | used to merge all selected cells horizontal only | ? | |
mergecell-vertical | edit-table-cell-merge-vertical | used to merge all selected cells vertical only | ? | |
removecell | edit-table-cell-delete | used to remove a complete cell, resulting in other cells moving positions | ? | |
deletecell | edit-table-cell-clear | used to blank selected cells from all data and formatting | ? | |
delete_table | edit-table-delete | used to delete the whole table/spreadsheet | ? | |
dissociatecell | edit-table-cell-unmerge | or use edit-table-cell-split? | ? | |
selection | edit-table-select-cell | used both for selecting single cells and cell ranges, but single item in icon is standard? | ? |
Kexi has table icons, see below. Do they need different iconic language ?
- Note (Jstaniek (talk) 07:23, 12 November 2015 (UTC)): Spreadsheets have sheets (strictly speaking); db tables are different especially when it comes to the meaning and behaviour of columns and rows. This of course does not have to be always reflected at the level of icons. Ideally we'd like to have the "Kexi table"-related actions here synced with the new table object's icon of Kexi [1].
- Note Frinring (talk) 19:06, 13 November 2015 (UTC) I would like to see the "sheet" in "spreadsheet" not emphasized in icons, as spreadsheet-tables can be also embedded in rich-text documents or slides (as normal table), so the "sheet" would be misleading there.
Borders for multiple cells
old name | proposed name | description | state | |
---|---|---|---|---|
border_all | format-border-set-all | sets borders on all sides of all selected cells | ||
border_inside | format-border-set-internal | sets borders only at sides of selected cells where neighbor is not selected | ||
border_outline | format-border-set-external | sets borders only at sides where both neighboring cells are selected | ||
border_top | format-border-set-top | sets border only at the top side of the top selected cells | ||
border_bottom | format-border-set-bottom | sets border only at the bottom side of the bottom selected cells | ||
border_left | format-border-set-left | sets border only at the left side of the left selected cells | ||
border_right | format-border-set-right | sets border only at the right side of the right selected cells | ||
border_horizontal | format-border-set-internal-horizontal | like border_inside, but only horizontal sides | ||
border_vertical | format-border-set-internal-vertical | like border_inside, but only verticalal sides | ||
border_remove | format-border-set-none | removes all borders on all sides of all selected cells | ||
border_fall | format-border-set-diagonal-tl-br | sets diagonal line to all selected cells (topleft-bottomright) | ||
border_up | format-border-set-diagonal-bl-tr | sets diagonal line to all selected cells (bottomleft-topright) | ||
borderpainter | format-border-style | turns mouse to "painter" with current border settings, to format borders by clicking them |
Spreadsheet formatting icons
old name | proposed name | description | state | |
---|---|---|---|---|
- | - | format-text-lowercase | turns all chars lower-case | ? |
- | - | format-text-uppercase | turns all chars upper-case | ? |
first_letter_upper | format-text-capitalize ? | turns first letter of words uppercase | ? | |
vertical_text | format-text-direction-ttb | letters still horizontal, but lined in a column. not sure if format-text-direction-vertical is also for that? | ? | |
prec_minus | format-precision-less | to decrease precision of number | ? | |
prec_plus | format-precision-more | to increase precision of number | ? | |
text_top | format-align-vertical-top | needs text variant, blocks of align-vertical-top look strange | ? | |
middle | format-align-vertical-center | " | ? | |
text_bottom | format-align-vertical-bottom | " | ? | |
comment | edit-comment | switches to edit the comment (creates one if there is none yet) | ? | |
removecomment | remove-comment/delete-comment | remove or delete? | ? | |
percent | format-number-percent | using a percent char as text does not work, because used as icon in menus | ? | |
money | format-currency | ? | ||
funct | insert-math-expression | "function" might be bound more to sourcecode | ? | |
series | insert-series | is "series" a term that makes sense outside spreadsheets? | ? | |
multirow | view-text-wrapped-word-wise | "Make the cell text wrap onto multiple lines" | ? |
Breeze has most icons here already. Though it uses the term "node" where "pathpoint" is used in Calligra. And segments (lines between neighbour nodes) are not mentioned at all in icon names. Not sure this can be kept, as 2 icons used refer to action on multiple selected nodes, filtered to those which are neighbours on the path. So for now the names proposed use the term "segment", for "format-segment-curve" and "format-segment-line". Ideas for node-only naming pattern welcome.
old name | proposed name | description | state | |
---|---|---|---|---|
convert-to-path | format-convert-to-path | converts a shape into nodes-based path object | ||
pathpoint-curve | format-node-curve | makes node basepoint of curves | ? | |
pathpoint-line | format-node-line | makes node basepoint of lines | ? | |
pathsegment-curve | format-segment-curve | makes only nodes of path segments basepoints of curves | ? | |
pathsegment-line | format-segment-line | makes only nodes of path segments basepoints of lines | ? | |
pathpoint-insert | format-insert-node | not the same as format-add-node, node added on line in middle of two nodes, not appended | ? | |
pathpoint-remove | format-remove-node | ? | ||
pathpoint-join | format-connect-node | ? | ||
pathpoint-merge | format-join-node | ? | ||
path-break-point | format-break-node | ? | ||
path-break-segment | format-disconnect-node | ? | ||
pathpoint-corner | format-node-corner | path can enter and leave at different angles in both directions | ? | |
pathpoint-smooth | format-node-smooth | path needs to enter and leave at same angle in both directions | ? | |
pathpoint-symmetric | format-node-symmetric | like smooth, but curve controls are equal in both directions | ? |
Escape directions
Shapes can be connected with lines. The lines enter/leave the shapes on a certain side, ideally orthogonal to the surface. It can be controlled on which sides of a shape connection lines can enter/leave.
"escape-direction" is ODF lingo. Are there more common terms for this?
old name | proposed name | description | state | |
---|---|---|---|---|
escape-direction-all | ||||
escape-direction-up | ? | |||
escape-direction-down | ? | |||
escape-direction-left | ? | |||
escape-direction-right | ? | |||
escape-direction-vertical | ? | |||
escape-direction-horizontal | ? |
Connection line types
old name | proposed name | description | state | |
---|---|---|---|---|
lines-connector | lines-connector | |||
curve-connector | curve-connector | ? | ||
standard-connector | standard-connector | ? | ||
straight-connector | straight-connector | ? |
Animation actions
old name | proposed name | description | state | |
---|---|---|---|---|
with_previous | animation-start-together | used to set an animation to start with another/the one before in list | ? | |
after_previous | animation-start-after | used to set an animation to start after another/the one before in list | ? | |
onclick | animation-start-on-click | used to set an animation to start on activation by user (mouse click/touch on it) | ? | |
edit_animation | edit-animation | used to start editing parameters of an animation | ? |
Animation types
There is a set of preinstalled animations. User manually (not supported by UI) can add own animation definitions. Each animation is represented by a symbolic icon, either rendered on-the-fly by animation data (like path) or from prerendered icon fetched by iconname.
Animations are organized hierarchical in groups, with 1 or 2 levels, by type, and each group is shown with a symbolic icon as well.
Current top-level categories with pre-installed animations:
- entrance animations - shape is not part of scene before, is part when animation is done
- exit animations - shape is part of scene before, no longer part when animation is done
- move animations - shape is part of scene before and after, possibly different location or parameters changed
There should be another category actually, at least for the "movie_credits_animation" animation:
- passing animations - shape is not part of scene before and after
Second level: the type of motion and deformation, like zooming, flying, falling, etc.
Third level (for some): subtype with variants of parameters, like direction of flight, origin/target of move or speed.
Existing icons are done as expected for the first and second level, with one icon per type (some missing). Examples: "entrance_animations" for 1st level and "fly_in_animation" for 2nd level. There are some icons reused for 2nd-level types across 1st-level groups, like "zoom_animation".
For the 3rd level though icons are reused across the groups as created by the upper levels. They refer generically to the parameter variant, like "horizontal"/"vertical" or "in"/"out". Example: "horizontal_animations". Many icons missing.
Approach with parameter-type-style icons for subtypes/3rd level surely makes sense, using combination of 2 icons avoids explicit icons for any possible animation type. Possibly sometimes even existing action icons could be used here, as animation aspect is not needed in the 3rd-level icon itself.
Proposal:
Naming pattern "animation-1STLEVELTYPE-2NDLEVELTYPE", to make use of fallback to less specific icon names if present. Example: "animation-in-funkyfunky" would have "animation-in" as fallback. And "animation-color" would have "animation" as fallback. So no longer reusing icons across different 1st-level categories. That should allow to use the 2nd-level icon as single icon in lists of applied animations (assuming 3rd-level as detail to be ignorable iconically).
1st-level icons
old name | proposed name | description | state | |
---|---|---|---|---|
entrance_animations | animation-in | shape enters the scene from outside and stays once done | ? | |
motion_path_animations | animation-move | shape moves by a given path | ? | |
exit_animations | animation-exit | shape leaves the scene and is now longer present once done | ? | |
emphasis_animations | animation-emphasis | none preinstalled right now, shape possibly somehow highlighted | ? | |
custom_animations | animation-other | none preinstalled right now, "other" possibly better than "custom" | ? |
2nd-level type icons
old name | proposed name | description | state | |
---|---|---|---|---|
appear_animation | animation-in-appear | instant appear | ? | |
bounce_animation | - | unused it seems | ? | |
collapse_animation | animation-out-collapse | ? | ||
disappear_animation | animation-out-disappear | instant disappear | ? | |
falling_in_animation | animation-in-fall | shaky-fly in | ? | |
fly_in_animation | animation-in-fly | ? | ||
fly_in_slow_animation | animation-in-fly-slow | 2 fly-in speeds predefined, thus another symbol needed | ? | |
fly_out_animation | animation-out-fly | ? | ||
crawl_out_animation | animation-out-fly-slow | ? | ||
spiral_in_animation | animation-in-spiral | ? | ||
spiral_out_animation | animation-out-spiral | ? | ||
stretchy_animation | animation-in-stretch | ? | ||
swish_animation | animation-out-swish | ? | ||
thread_animation | animation-in-thread | ? | ||
swivel_animation | animation-in-swivel | used for both in and out | ? | |
swivel_animation | animation-out-swivel | " | ? | |
flash_once_animation | animation-in-flash | used for both in and out | ? | |
flash_once_animation | animation-out-flash | " | ? | |
zoom_animation | animation-in-zoom | used for both in and out | ? | |
zoom_animation | animation-out-zoom | " | ? | |
movie_credits_animation | animation-pass-movie-credits | ? |
Fallback icon for animations without matching icon
old name | proposed name | description | state | |
---|---|---|---|---|
unrecognized_animation | animation | used as generic symbol icon for animation | ? |
3rd-level subtypes
old name | proposed name | description | state | |
---|---|---|---|---|
horizontal_animations | transform-move-horizontal | not sure if "transform-move-" is good group | ? | |
vertical_animations | transform-move-vertical | " | ? | |
in_animations | transform-move-in | " | ? | |
out_animations | transform-move-out | " | ? |
Text editing icons
old name | proposed name | description | state | |
---|---|---|---|---|
- | - | text-section-split | splits two text sections into two, uses "split" ATM | ? |
insert-pagebreak | insert-page-break | ? | ||
insert-tableofcontents | insert-table-of-contents | naming would match "view-table-of-contents" | ? |
Presentation tool icons
The "pen" icon is also used for the cursor. Breeze cursor theme has a pencil . Qt::CursorShape has no pencil variant. How to check if there is a themed cursor variant (and how to get it), before setting own hardcoded icon? KCursor (QCursor subclass) of kdelibs4 was able to search by string for further themed cursors, but lost that in KF5 for unknown reason.
old name | proposed name | description | state | |
---|---|---|---|---|
black | pause-to-black-screen | used to temporarily turn off the presentation, next to black screen also white screen one day | ? | |
highlight | highlight-pointer-spot | something about turning to mode where mouse is a spot, to highlight things on screen | ? |
Shape icons
- inconsistent naming pattern
- are objects, not actions (few are mimetype icons already), should be rather colored like file type/mimetype
- those for fixed shape look (flower) should reflect look instead of being iconic
old name | proposed name | description | state | |
---|---|---|---|---|
callout-shape | ? | ? | ||
circular-arrow-shape | ? | ? | ||
cross-shape | ? | ? | ||
ellipse-shape | ? | ? | ||
flower-shape | ? | ? | ||
gearhead-shape | ? | ? | ||
hexagon-shape | ? | ? | ||
pentagon-shape | ? | ? | ||
rectangle-shape | ? | ? | ||
smiley-shape | ? | ? | ||
spiral-shape | ? | ? | ||
star-shape | ? | ? | ||
pathshape | ? | ? | ||
x-shape-connection | ? | ? | ||
x-shape-formula | ? | ? | ||
x-shape-image | ? | ? | ||
x-shape-text | ? | ? | ||
- | x-shape-text-artistic | ? | ? | |
- | x-shape-vectorimage | ? | ? | |
- | x-shape-3d | ? | ? | |
- | x-shape-chart | ? | ? | |
spreadsheetshape | ? | ? | ||
- | musicshape | ? | ? | |
stateshape | ? | ? | ||
- | enhancedpath | ? | shape icon unused, because never fetched due to variants | ? |
"shape-choose" is used for action, is "shape" a proper term also useful for other apps using these icons?
Tool icons
A tool represents a specific mode of the application, where user input by mouse, keyboard etc. is interpreted for a certain aspect. Additionally the UI might highlight different aspects of the content. Examples: tool "Draw path", tool "Edit vector path", tool "Review". Tools can be offered in a toolbox (Karbon) or by tabs in the sidebar. Each tool is represented by an icon.
- inconsistent naming here
- possibly should be all named as action icons, "edit-" or is "tool-" better here?
- some inconsistent naming in breeze icons, "tools" vs "tool"
Current Breeze icons for drawing tools look too similar on small sizes, as the toolbox.
old name | proposed name | description | state | |
---|---|---|---|---|
tool_cellformatting | edit-table-cell-format ? | see also discussion of table icons | ? | |
- | tool_comment | edit-comment | not sure where it shows up in UI | ? |
tool_imageeffects | edit-image-filter ? | edits effect filters applied on vector shapes | ? | |
tool_pagelayout | edit-page-layout ? | ? | ||
tool_references | edit-references ? | to manipulate footnotes, endnotes, internal links, external links, cites | ? | |
tool_review | edit-review ? | ? | ||
tool-text | edit-text ? | ? | ||
backgroundtool | edit-background ? | for pages, slides, and other canvas types | ? | |
artistictext-tool | edit-text ? | artistic text has a different tool to the one for normal text frames | ? | |
statetool | edit-state ? | specific tool for "state" shape (mainly Braindump) | ? | |
animation-stage | edit-animation ? | ? | ||
select | tool-pointer ? | 'tool-pointer' exists already in breeze. | ? | |
hand | pan ? | would match "zoom", but perhaps "view-move" better? | ? | |
createpath | draw-path ? | or rename tool-draw-path ? | ? | |
editpath | edit-path ? | not just a single node edited, so not sure "edit-node" matches | ? | |
calligraphy | draw-calligraphic ? | or rename tool-calligraphy ? | ? | |
gradient | edit-gradient / format-gradient ? | ? | ||
pattern | edit-pattern / format-pattern ? | ? |
Other tool icons, used from Breeze iconset:
tools-check-spelling tools-report-bug
Other icons
old name | proposed name | description | state | |
---|---|---|---|---|
zoom-pixels | zoom-pixels | zoom so one pixel is shown as one pixel of display | ? | |
special_paste | edit-paste-custom | pastes with user interaction for configuring | ? | |
snap-boundingbox | snap-boundingbox | misses from snap-* icons in Breeze/Oxygen | ? | |
artistictext-attach-path | ? | action to select a path to use as baseline, currently not in UI, but done by double-click | ? | |
artistictext-detach-path | ? | action to disconnect text from path currently used as baseline | ? |
Kexi
(this section also contains libraries that are used by Kexi)
Kexi General Actions
old name | proposed name | description | state | |
---|---|---|---|---|
form_action | form-action | An "execution" symbol for action that can be assigned to a form widget, e.g. button. The symbol is present in Breeze's form-view-action so could be reused. | ||
widgets | Symbolizes set of widgets / a tree of widgets / form structure | |||
state_data | data-view | Symbolizes "data" view of a window. Other views are "design" and "SQL". | ||
state_edit | design-view | Symbolizes "design" view of a window. Other views are "data" and "SQL". "application-x-designer" icons can be a good base. Or this (from MSA): | ||
state_sql | sql-view | Symbolizes "SQL" view of a window. Other views are "data" and "design". |
Kexi Form Widgets
old name | proposed name | description | state | |
---|---|---|---|---|
autofield | Low priority, unused for now | |||
button | ||||
check | checkbox | Can be based on Breeze's 'checkbox', maybe even identical? LO Breeze checkbox icon looks like a frame. | ||
combo | combobox | Breeze's combobox for LO is not the best, it's too similar to other icons. | ||
dateedit | A box with "2015-11" could fit here. | |||
datetimeedit | A box with "2015 01:23" could fit here. 16px version is a challenge. | |||
frame | ||||
groupbox | ||||
pixmaplabel | imagebox | Image box able to present a single static image. Breeze's 16/22px "place" icon "folder-images" fits here. | ||
label | Definitely let's not use label-amarok, Just "Label" text is preferred | |||
lineedit | ||||
line_horizontal | line-horizontal | A line (visual separator) | ||
line_vertical | line-vertical | A line (visual separator) | ||
listbox | Low priority, unused for now | |||
listwidget | Low priority, unused for now | |||
multiple_obj | multiple-objects | Symbolizes multi-selection of objects. Breeze's "edit-select-all" fits quite well. | ||
progress | progressbar | |||
radio | radiobutton | |||
slider | Breeze's "games-config-options" is a good base for it. | |||
spin | spinbox | |||
tabwidget | Could be based on Breeze's "tab-new", just without the "+" | |||
tabwidget_tab | tabwidget-tab | A single tab widget's tab. Could be based on Breeze's "tab-new", just without the "+". | ||
textedit | A multiline text box widget. Breeze's 16/22px "place" icon "folder-text" fits here. | |||
timeedit | A box with "01:23" could fit here. | |||
unknown_widget | unknown-widget | Symbolizes unrecognized/unknown/unavailable/broken widget type |
Kexi Table Actions
old name | proposed name | description | state | |
---|---|---|---|---|
add_field | add-field | "Add database field", look at Breeze's text-field | ||
autonumber | "Autonumbering database records (rows)" | |||
clear_table_contents | edit-table-clear | Uses Kexi's "table" icon as a base | or ? | |
delete_table_row | edit-table-delete-row | Uses Kexi's "table" icon as a base and "row delete" symbol from Breeze. | ||
insert_table_row | edit-table-insert-row | Uses Kexi's "table" icon as a base and "row insert" symbol from Breeze. | ||
key | "Database Primary Key", it's not related to keyboard or locking | |||
relation | "Relation between database tables", in MSA: |
Kexi Query Actions
old name | proposed name | description | state | |
---|---|---|---|---|
test_it | validate | Checks validity of a query. Breeze's "checkbox" can be useful base. |
Kexi Format Actions
old name | proposed name | description | state | |
---|---|---|---|---|
aopos2grid | align-grid | "Align Widgets Position To Grid", low priority, not used in Kexi for now | ||
aofit | fit-contents | "Adjust Widgets Size To Fit Contents", low priority, not used in Kexi for now | ||
aogrid | fit-grid | "Adjust Widgets Size To Grid", low priority, not used in Kexi for now | ||
aonarrowest | fit-narrowest | "Adjust Widgets Widths To Narrowest Selected", low priority, not used in Kexi for now | ||
aoshortest | fit-shortest | "Adjust Widgets Heights To Shortest Selected", low priority, not used in Kexi for now | ||
aotallest | fit-tallest | "Adjust Widgets Heights To Tallest Selected", low priority, not used in Kexi for now | ||
aowidest | fit-widest | "Adjust Widgets Widths To Widest Selected", low priority, not used in Kexi for now |
KDb lib
See KDb for info about this component.
TODO
KProperty lib
See KProperty for info about this component.
- TODO: button_no has been moved from Kexi here and is used to show "No" value, it's actuqally a 'minus' sign, see the Fill Background property at http://i.imgur.com/ES2BSbt.png.
KReport lib
See KReport for info about this component.
Many icons for KReport are already DONE.
TODO
References
- script to create overview of used icons: "devtools/iconcheck/iconcheck.py", to be run from toplevel src dir.
Lists missing icons on console.
By-product "koIconNames.po" in toplevel src dir gives overview where icons are referenced - http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
- https://github.com/NitruxSA/breeze-icon-theme/wiki/Icon-naming-and-categorization-guidelines-in-Breeze