From 7cd1f65d702bbe2b96adc3df3ce4a3ce77c9ed84 Mon Sep 17 00:00:00 2001 From: Travis Abendshien <46939827+CyanVoxel@users.noreply.github.com> Date: Thu, 13 Aug 2026 10:46:58 -0700 Subject: [PATCH] feat(ui): add hint icons to suggest boxes --- REUSE.toml | 8 +++++++- .../tag_field_bars/field_bar_search.png | Bin 14029 -> 14475 bytes docs/assets/tag_field_bars/tag_bar_new.png | Bin 8533 -> 9264 bytes .../tag_field_bars/tag_bar_search_match.png | Bin 13169 -> 13762 bytes .../tag_field_bars/tag_bar_shift_off.png | Bin 10147 -> 10699 bytes .../tag_field_bars/tag_bar_shift_on.png | Bin 11459 -> 12195 bytes .../qt/controllers/field_suggest_box.py | 18 ++++++++++++++++++ src/tagstudio/qt/controllers/suggest_box.py | 17 ++++++++++++++++- .../qt/controllers/tag_suggest_box.py | 18 ++++++++++++++++++ src/tagstudio/qt/resource_manager.pyi | 4 ++++ src/tagstudio/qt/resources.json | 16 ++++++++++++++++ src/tagstudio/qt/views/suggest_box_view.py | 5 +++++ .../resources/qt/images/hint_field_add.png | Bin 0 -> 2179 bytes .../resources/qt/images/hint_field_create.png | Bin 0 -> 2360 bytes .../resources/qt/images/hint_tag_add.png | Bin 0 -> 2305 bytes .../resources/qt/images/hint_tag_create.png | Bin 0 -> 2428 bytes 16 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 src/tagstudio/resources/qt/images/hint_field_add.png create mode 100644 src/tagstudio/resources/qt/images/hint_field_create.png create mode 100644 src/tagstudio/resources/qt/images/hint_tag_add.png create mode 100644 src/tagstudio/resources/qt/images/hint_tag_create.png diff --git a/REUSE.toml b/REUSE.toml index 70e2cf7c..1d39078d 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -45,6 +45,12 @@ SPDX-FileCopyrightText = "(c) 2026 Boxicons" SPDX-License-Identifier = "MIT" [[annotations]] -path = ["src/tagstudio/resources/qt/images/dupe_file_stat.png"] +path = [ + "src/tagstudio/resources/qt/images/dupe_file_stat.png", + "src/tagstudio/resources/qt/images/hint_field_add.png", + "src/tagstudio/resources/qt/images/hint_field_create.png", + "src/tagstudio/resources/qt/images/hint_tag_add.png", + "src/tagstudio/resources/qt/images/hint_tag_create.png", +] SPDX-FileCopyrightText = "(c) github:google/material-design-icons Contributors" SPDX-License-Identifier = "Apache-2.0" diff --git a/docs/assets/tag_field_bars/field_bar_search.png b/docs/assets/tag_field_bars/field_bar_search.png index 10f4fca63822399d72a018cbb8e019f74014d780..c7c8063c4bb8f2acf948a278ba9e4de3d718780d 100644 GIT binary patch delta 12999 zcmaia1ymQ&_a`M?(jnaq(v5V3(k^i^&3acCdb6Vi3R9MZl~kt?Srs??R*ee+p|P0n3r z?-jwzmku>CZKsU%AErAmFSA!%pPO|GpN$Fg+8%ZwhNer6PGl4s!u^I+(5+6)UyQPp z+N(}mN+I1y;WxvhCvs)fT3QyuvC|!7Y;N+0GB1v(qgO%~j}sp`aEGtqsB3T~aR;xj z;Xbg#9n%GsR=~lnV+`H7NT}^5&8ua!*{Aow-{riFV!fy z0twhGNjZPNPBv!!Ge+?ahWRE8buf$|8XhNZ`jJYmCYZ$TxMOq4vxw-nwmS1i1nbSU zM}gEy*DTqem}WP6bt8R#539A4FS8NKmuEKetY47(su?n;cyRZ+A@P2>-ohvzx)N?N zCHut1lg($%uA%TJ^esYRes*0?$+5C9L1>D zWyVp`T&N$m`Ia~u$f5Ghy!=W*Y~c$I`h8-AzmijtL@|u+ciB15)_P7KLG&y&HYXl~ zf=mUPd%YMJ%`0n|DU{Ruj{Q#`4u@F&u2P1K~sXkfu1OgTS%5vRGmmU1us?1g_;93MlYeC z;?uf*nm8prK@^K0Ml}AW92%WvEcz<^%iWEl={NJTMfrX@oLmsC?hZ~Tl`K5=r~xB$ zI6wX_Ik1T=G=9D8+0=NiFguKsbt(z4PAbcsFD|}j-(Ys{#7rh3; zmikYa$Tm~E)TvcwOEiZNaj3^pl8>LE6}X}^41Go!T9vSpeLRjvVWav+9jP<*cyxz) z`_5d3QMsQWVRR7s6t9mb6aBT%&4PJ~Qn2UV-AoMq0l8;4rq1msSx905pAuID?GjZF zZ8@BrSC*lc$5b78SyNKGK_WB18pj2ZU;LQ*Cr+7+bxs&LJkw8#@!oHUtD}@jo1gD= zE6_dTE{LB7HOjDx#$Y@t+SWo~@v&5J5U~r0D`Wm~bN2Tobdx3A`YUHDujb5C!YCNt ziEhBqV&yeT4evbK{xcsWM+DVe;2wm%1*PI@1HzsRi-KC`zaWMlCy z_1*FGuij_F9e*iS4sToRRi&DmtJQ6#Qe;5`V_OqVv~6u|4nX+ehr&wbIJ0jP!oGeg9G4?CPLn%`^_z1#>Mp)rjz=4DR!&Wm+zVk?dclr9 zD_UKqZpy%prxnxWo$g2eZPWUv;$e9T)gPC)@x5>n--~?f9_3+*i*Wx!!j3i4V>K^b zfmz<|@C6yFcyf4VT|vG#@M~2zCxO?U>HXI=KfLh)+ck_6LO(*&Si$v@1!KW>FT7RE$*9VNrf(ej|R#2H6JV1_p;T2P}t@S(j3A zJw3f9%}d=xE#gux-D>TX>JZ)gsvB}F3M>??1o>9^f^W+4%Vd>gf_!;erP|~U)co;= zQYK23P+{JuUj>~%J~@gwdhkEVisdWkC+Fv~mneE^_k&NsS)}s4?h8@HHmSY2k9G@o z?)83#7!73&*pA-zSPnA{Ob!EfTaML}zY2rZZqOnO0W>ENc#`= zRXYLDjAe1KjTbM(o4gQEw_%f*8K5elHCkbnXMz2mJUc3zILlS=h#RsscTBc=X;Cw= z-dL2yF!FrFqr*CTGc+x8)~ftk_pff3kyeGl58)r=l@t11wKWY&HP?&9Lw}Mh!#L&| z=No@rq*KgtcDtmT#4i&DeiR>(mq-UzTGNaE+v`scmwucFa(wCKobK={SF!9a{yR)m+olTZAr{n#z+SB1< zXmNkGf7-ggR`<(z0Dk-1c4B|3laP j#T*?kz4erWLUj@yA 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 delta 12676 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 diff --git a/docs/assets/tag_field_bars/tag_bar_new.png b/docs/assets/tag_field_bars/tag_bar_new.png index 7327d9063e01c94f4b1844bb764b14e92668d794..3a8b83f1b356771a3cd19c063f8c708e1e8c6241 100644 GIT binary patch delta 7564 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 Igjjv}U&~Q)wg3PC delta 6880 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 diff --git a/docs/assets/tag_field_bars/tag_bar_search_match.png b/docs/assets/tag_field_bars/tag_bar_search_match.png index 3e993c4dd2f1db8b2dfb426b9071ec8d608d4b37..24431ccc0b948e53132b721abcdb5ada74354020 100644 GIT binary patch literal 13762 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

w@>%&rz*{yYIzk5^8xYR9bK1=Do|4rZosa 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 LvZAHJy6^uNvXq%` diff --git a/docs/assets/tag_field_bars/tag_bar_shift_off.png b/docs/assets/tag_field_bars/tag_bar_shift_off.png index a52deb6b23013f4d8f38e17a09cb275742eff4ba..32b16034a237b282605b51c8c7f84f807b3bc3f9 100644 GIT binary patch delta 9081 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 Qp&o#|tcpxI!ub7v0hT>X00000 delta 8622 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¬S-uj7!qX+=N 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 diff --git a/docs/assets/tag_field_bars/tag_bar_shift_on.png b/docs/assets/tag_field_bars/tag_bar_shift_on.png index be3179a0c56de9cdb547b35dcf59eccdd943e21c..f3d7283337ffa1b4cf1a39c2eefe6dbb36cf8b90 100644 GIT binary patch delta 10712 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

!Ply6& z(~+-7MNV38)}!~0B<||B?MSgLM5|{T*#{Vq*PbZxU-oC;W15RS%lN=HietA!P^NL0un8 zO&$j~jD{j5{ivRD&TiIGpIaR6zpEZ~2ZKsZOY5~LgPk%cX~1h`kwEiJdKqs59eyM@ z6BuU)Gk>@d#GV?k5IUYxJ05x(=1VSvL#5^^^+ZNFxZlRaa6=l6IzeJrQtpNXfu(}l z>im|?gae@(6)+9Ze?*gU6I3&z(a!imJ$TixdISJ}+Aq(BIEOY|1RuHy)V~_1rkjA1 zka63O;H3(|9iaZ#$1N-+5AJ^_GRoKa)4>P)`*h#VIT-7K$?14WI$x<2$M;84 ziOSr_AhT3TSJ}RtHCY8GEb{VwV7`JGT}fD}uAlPOlRzpZl4^3;F2mWiHI7><6%F`C z`r{q*HDAeqImb@`d!wjq(o4DPQauDmT*V`v?H z=k#YGjQWRso+isI$(xZfCnP(&%pNFj4SlLAV^V3B3`je!3r8}q>%1Nc%MLwHR;JU_ z4UCEZlrsHN3-H$MFF`C>}7attqXfj#@{kl@_Hr2^fA9C&gP+56_|)$!K%F1nn7CT3r~ zGa<;rKw9BzHCabtAZVX3ezj@(S>WWT?J6`heJ>D3jgJ;8+pqVK^Ye4$a@gE@gES0+ z!p#tV14nselWl2h1!>Wev*4JT`f98D!E)3w%SC9bm&`}nn@+?W2fKZ}m%QDAuD#t~ zXpif561HyDvS?(efgqNy+wSh<(^Jf*L#h16*I0d;^vLTkX^CSS}y?SqDzuU}nT&AghS==1!nlHpK;jc|b|B zmHAbp?|6z{{A@DWR|wP%tB2PFEXr93kPA?Zm@0yExjtP;%iA}|wrW|gr6j>Kw|H<= zGej;|dl3u1aZrEI1)dRON)jh608SHHSqJ0J@ujBlT`W`6z}tT`LEYmMO@AC6s>A~x nk^pe+lr&Sa{8kgty2c}{S~SSoLG1kB+5kmaHJJ)2(@*~cIp>Xr delta 10097 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 ZZ6(|zD!%W6-tqu|oRlK0QsQIa{{cWNUBdtX diff --git a/src/tagstudio/qt/controllers/field_suggest_box.py b/src/tagstudio/qt/controllers/field_suggest_box.py index 42250dfe..54fc36d8 100644 --- a/src/tagstudio/qt/controllers/field_suggest_box.py +++ b/src/tagstudio/qt/controllers/field_suggest_box.py @@ -86,6 +86,24 @@ class FieldSuggestBox(SuggestBox[BaseFieldTemplate]): else: return ([], []) + @override + def _on_shift_held(self, held: bool) -> None: + if held: + self.set_hint_icon(self._rm.hint_field_create) + else: + self._update_hint_icon() + + return super()._on_shift_held(held) + + @override + def _update_hint_icon(self) -> None: + if self.layout().search_field.text() and len(self._search_results) > 0: + self.set_hint_icon(self._rm.hint_field_add) + elif self.layout().search_field.text(): + self.set_hint_icon(self._rm.hint_field_create) + else: + self.set_hint_icon(None) + @override def _set_item_widget(self, item: BaseFieldTemplate | None, index: int) -> None: """Set the field template of a field template widget at a specific index.""" diff --git a/src/tagstudio/qt/controllers/suggest_box.py b/src/tagstudio/qt/controllers/suggest_box.py index 7b3bd13f..48de05ef 100644 --- a/src/tagstudio/qt/controllers/suggest_box.py +++ b/src/tagstudio/qt/controllers/suggest_box.py @@ -4,8 +4,9 @@ from typing import Any, override import structlog +from PIL import Image, ImageQt from PySide6.QtCore import Signal -from PySide6.QtGui import QShowEvent +from PySide6.QtGui import QPixmap, QShowEvent from PySide6.QtWidgets import QGraphicsOpacityEffect, QWidget from tagstudio.core.library.alchemy.library import Library @@ -13,6 +14,8 @@ from tagstudio.qt.controllers.autofill_line_edit import QtCore, QtGui from tagstudio.qt.controllers.modal_content import ModalContent from tagstudio.qt.controllers.underlined_widget import UnderlinedWidget from tagstudio.qt.global_settings import GlobalSettings +from tagstudio.qt.helpers.color_overlay import auto_theme_overlay +from tagstudio.qt.resource_manager import ResourceManager from tagstudio.qt.views.stylesheets.stylesheets import ( autofill_line_edit_style, autofill_line_edit_top_style, @@ -50,6 +53,7 @@ class SuggestBox[T](QWidget): super().__init__() self._lib = library self._settings = settings + self._rm = ResourceManager() self._limit = 5 self._is_shift_held = False self._search_results: list[T] = [] @@ -81,6 +85,13 @@ class SuggestBox[T](QWidget): self.layout().search_field.shift_holding.connect(lambda held: self._on_shift_held(held)) + def set_hint_icon(self, icon: Image.Image | None) -> None: + if icon: + pixmap = QPixmap.fromImage(ImageQt.ImageQt(auto_theme_overlay(icon))) + self.layout().hint_icon_action.setIcon(pixmap) + else: + self.layout().hint_icon_action.setIcon(QPixmap()) + def _on_shift_held(self, held: bool) -> None: if held: self._is_shift_held = True @@ -105,6 +116,7 @@ class SuggestBox[T](QWidget): def _on_search_query_changed(self, query: str) -> None: self._update_items(query) + self._update_hint_icon() def _on_search_query_submitted(self, query: str, always_create: bool = False) -> None: # Focus search field if no query @@ -137,6 +149,9 @@ class SuggestBox[T](QWidget): def _is_excluded(self, item: T) -> bool: return _item_id(item) in self.excluded + def _update_hint_icon(self) -> None: + raise NotImplementedError() + def _update_items(self, query: str | None = None) -> None: """Update the item list given a search query.""" logger.info("[SearchPanel] Updating items", limit=self._limit) diff --git a/src/tagstudio/qt/controllers/tag_suggest_box.py b/src/tagstudio/qt/controllers/tag_suggest_box.py index 27f9030a..bf38b7ae 100644 --- a/src/tagstudio/qt/controllers/tag_suggest_box.py +++ b/src/tagstudio/qt/controllers/tag_suggest_box.py @@ -91,6 +91,24 @@ class TagSuggestBox(SuggestBox[Tag]): self.item_chosen.emit(item.id) self.done.emit() + @override + def _on_shift_held(self, held: bool) -> None: + if held: + self.set_hint_icon(self._rm.hint_tag_create) + else: + self._update_hint_icon() + + return super()._on_shift_held(held) + + @override + def _update_hint_icon(self) -> None: + if self.layout().search_field.text() and len(self._search_results) > 0: + self.set_hint_icon(self._rm.hint_tag_add) + elif self.layout().search_field.text(): + self.set_hint_icon(self._rm.hint_tag_create) + else: + self.set_hint_icon(None) + @override def _search_items(self, query: str) -> tuple[list[Tag], list[Tag]]: if query != "": diff --git a/src/tagstudio/qt/resource_manager.pyi b/src/tagstudio/qt/resource_manager.pyi index 986ed884..46e6ca58 100644 --- a/src/tagstudio/qt/resource_manager.pyi +++ b/src/tagstudio/qt/resource_manager.pyi @@ -36,6 +36,10 @@ class ResourceManager: edit: Image.Image file_generic: Image.Image font: Image.Image + hint_field_add: Image.Image + hint_field_create: Image.Image + hint_tag_add: Image.Image + hint_tag_create: Image.Image icon: Image.Image ignored_stat: Image.Image ignored: Image.Image diff --git a/src/tagstudio/qt/resources.json b/src/tagstudio/qt/resources.json index 6533ce38..3fbdefba 100644 --- a/src/tagstudio/qt/resources.json +++ b/src/tagstudio/qt/resources.json @@ -71,6 +71,22 @@ "mode": "pil", "path": "qt/images/file_icons/font.png" }, + "hint_field_add": { + "mode": "pil", + "path": "qt/images/hint_field_add.png" + }, + "hint_field_create": { + "mode": "pil", + "path": "qt/images/hint_field_create.png" + }, + "hint_tag_add": { + "mode": "pil", + "path": "qt/images/hint_tag_add.png" + }, + "hint_tag_create": { + "mode": "pil", + "path": "qt/images/hint_tag_create.png" + }, "icon": { "mode": "pil", "path": "icon.png" diff --git a/src/tagstudio/qt/views/suggest_box_view.py b/src/tagstudio/qt/views/suggest_box_view.py index 39184e61..763b9744 100644 --- a/src/tagstudio/qt/views/suggest_box_view.py +++ b/src/tagstudio/qt/views/suggest_box_view.py @@ -4,6 +4,7 @@ import structlog from PySide6.QtCore import Qt +from PySide6.QtGui import QPixmap from PySide6.QtWidgets import QFrame, QHBoxLayout, QScrollArea, QSizePolicy, QVBoxLayout, QWidget from tagstudio.qt.controllers.autofill_line_edit import AutofillLineEdit @@ -18,6 +19,7 @@ logger = structlog.get_logger(__name__) class SuggestBoxView(QVBoxLayout): def __init__(self, placeholder_text: str = "") -> None: super().__init__() + self.setContentsMargins(0, 0, 0, 0) self.setSpacing(0) @@ -70,6 +72,9 @@ class SuggestBoxView(QVBoxLayout): self.search_field.setObjectName("search_field") self.search_field.setMinimumHeight(28) self.search_field.setPlaceholderText(placeholder_text) + self.hint_icon_action = self.search_field.addAction( + QPixmap(), AutofillLineEdit.ActionPosition.TrailingPosition + ) self.scroll_area.setFocusProxy(self.search_field) # Finalize Layout diff --git a/src/tagstudio/resources/qt/images/hint_field_add.png b/src/tagstudio/resources/qt/images/hint_field_add.png new file mode 100644 index 0000000000000000000000000000000000000000..dabe8d9278f721d0e251496f2f4c9e0da69bedc2 GIT binary patch literal 2179 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 Ma2~rMG=1lP0dLHC3;+NC literal 0 HcmV?d00001 diff --git a/src/tagstudio/resources/qt/images/hint_tag_add.png b/src/tagstudio/resources/qt/images/hint_tag_add.png new file mode 100644 index 0000000000000000000000000000000000000000..50a1e89a8fbae7f3d020c37972ad8ef8502d1150 GIT binary patch literal 2305 zcmaJ@e^^sh7`_;(AUr9Q&J4J@k$Vw>-1iX4Dq5w87pO@+f@#Q19I@z)fQKMq zl*NdtvvHc4iR%c12<~q^4l@aj2wonh;3$mIcoq>;V8W9M5|Y&g+3H9Q9QB%~&>{c^ zdYs0X7JZI^5?DmA%U1xNov%@t>5|adB3PwRGNVZo&J07s5DxsBCsSzBXa$MVMPtEW zB!aVO+9*KL{QP_*KNKNNI+Pn38HsXuD38Ym3N~dm(3pj7pyoL(Mm?lBr8W^pnjj5K zrze(4nrRUX1D-i%j$4QccLO!Hd{79~$)H?>gFY;$3GGwlPUbPWF^i;0DvLCZFW`|W z#_7ibLHV8>V!@105-Sw{FW2iISq4SR@<1WRiuy=S|4u+9Ta7rHh*PB5q{d}=xPhMM zs)VyH0wrO=b5v47j~ggZT@lP*_#bk`Q^;sChcqRDO@)hKt}Dh_Ie}b{>G0)*hRz!I zns^_N8+89AoSEgAovmGFAi!F96JDwbP6UVZ(1)g3@kDC84+2+q3Q_}-3w0SzQ1a+# zrHRxMIe?=Q7fYCOSu~#;$>+0q$mk59X#x;SXsuF=1}Ywh$7gdQ*xb-$E=Ry!$mWC# zI2@O)O9~Ex2BWe66+8DbQwZb=g&>BYXwqbLy&B!%NqFw)XmprExOO&^>FTclQ#;Ee zf{i9pV^-rD*UZ3fl%+^5osXGtu@1CW1dFv=0u<89R66%8lgH#Cd}Oo+<01K3IIw%l zve2=-Q0GbeH!&glSn5KT;Gv@l;zr+rBMk2KqZ zkA%e9|1f`*(SE>m;Q5LVvyTQE&fT&q^j$UIQ#EJr)eH%D49#s^bT~GF92O%PKiDeW z&P(WTe{^i{3*y^*GT%G6u}l)Wu=(yvmbPuUy5+^4Bj+#p$kW}*(=G8!TXqd>9_W5^ zX_z(c^SG`KA6t;kUxB>5MtyTIIBMJWgO2*H)WEs!*=3C(=_dyTDZJDK)f)*J$jZdR ze)X}Aite*#<+oqx7YB6*x~0X3iZ@}CXIEJnXyIgytYl5^lD}Ecb}iGSyt4a{q}od+ z+_j~)ATcxc_u36Cyy?MPBYW%LzW?LRjZlxj_m!4_RQ~0CnT&ubZx5QMDxNdeG+diC zj9pdy9;>+ZOUbY~;>$h6pg!W4qC2a@>P{5aF38Oeeil7>X@lhY3(d%~)x)i4zx9*; zbafws>1NqY$JXAP!)Vdj-meY~0KXC*#+Vfp1WogG!VRk4&VZmvCb?9cY}tP8)fTczpEQqf@Aymzs(wGtxc%1#V#H2eWx@ln7xh>_6qFw(kkin z{XX&BHj{sTliJYx*Eijw#uK@B4e^_dy0-A5fi$EaSF_3RDIX_?-p^3YA)_ZR*3b$+q; zrRl0kccANjR38*xL~gwPN8If<@4NeZZ9D3c48!a=;?eX0 z3?8?>*LI|WvlAxLW)`21kiX**5x@1p#gt8x?SUQctohybYwFnczzqe%g)>q{7$`h+ zV!y|s$^*VBBbYD`xv;IYuCfmdLfU1Q_|+l(3&iPCM4T=GcpVY@y#bI0kP4szNC8L& zNCZ#EC4 zTHE&{ACzACd)7x&^GgaUZaR8qFXRzEg4YKQ*Orcu1$@zS5q}# z1e7(juU`<|5*q>AugSZ8{im33@Xz$du`@m{O{!{;*;Lo!J~|hBFL8cz>ah%4z1L~^ z={ZN^jBN61@F$gy&Pi7JjpnwBa(B5knk`PfsFa`D)piJ4qm`VQlP*7Xxa~6grCW|g z&jonMHiuu>qD;2#W_!rCgm+dcY3uIAJv(-sa&$h3-Lto?BKVWjj!xF#&R_dyKj literal 0 HcmV?d00001 diff --git a/src/tagstudio/resources/qt/images/hint_tag_create.png b/src/tagstudio/resources/qt/images/hint_tag_create.png new file mode 100644 index 0000000000000000000000000000000000000000..10c94b306ea98bb11ce30fa9a79e46ec2cb5f594 GIT binary patch literal 2428 zcmai0d0bOh8oi0^h*%XwWO)XWH48yNVge+AvXrn!#0Bs{9^nJX|o59#*=c96f`JXhD2wF@sqMsle`5aUmqi;l7S0| z5DbQtqBOCbp=6P?x(xicW|~TZv=l6rMT+G`KwOCofjlT46dK9L2x7_v$&4uf_veD~ z5sQ?9VNwQ_nwgnN$#kbkWJ0Q&x3@QyMyJy0WSl{kXNfUbNfyiPG!nBK{)jwDhDtG1 zB8D`YaH2$ku}CBwhvvi)CAy$4md|Y;H-f4`sBRP*^;J5CCclHOLEfNCQzV!~o+6RX zZ{W2h=HWL2ar@pLqJ*VyBlCFwn=TT)whcKJkbxU9XX4j z8HgCO(>kH?g%N=&k+fKURD_7-xVtQp=lVZ@TiyY3C20~_G~QGQi{z$_(KyEl7QsSf zGb+GR=Cu~)LlLp?kANn#G=-+Lo5U!-7y5!$>;lFjdC{q_EVJdU(0m;j+U$4|0iK+@ zR&W6d=5ixsl4LXu$K+9g94I(|>*?n0=}D$jW>>(A#=v9I!eTp?F>1s0RR!Ws0)9E`^a6H+@&PC6@f8-dkdyp+Zkw|Kz;==NFUz zCcSXw`SIzWALlk)9CU7Q2^oB*xR%g-Ms{XJS$XPrYsH-pvv{J`%D>AiJ7y}Um|ss> z)xUo}Bup~RrX=*JKO^*Uu&&-;_FFr64)!PRtNXN=xhEv|Qo zyE(~-p>GX~jSowpY>UbpPinee*51(({K#ya?a;oKuszhBT?*^1`csw#HBV0vP?&Q! z{6DU`t(ycfPT!p4R4fi)R((;O9hDgJYxRCtN#AS zXkn{gG^sG)nMy0q-di~hkMMpC;XNEEoK|eOauS^sZ5SwcveV8Z}T)SE;5 zIrq&jQa0_JZtUo?_P;$+OM!(e2W3sUGpj9BLiHyV?zZ^r!cZEtMGk=Ra?L{k6^AVV zAdUq4v-!%yKOXW;UBR|!$&YOK2-0!OUVG%4PprcjR6a!6Sb zy{&)7aJR*7%OFHv%IS0-b{&nm-S+*XMz5(`M|SS07|0Y>-fw7>@7&lhaW$quw8L}* zp(y0>Ql;sj{qjxC>!kbQQ??E0){O;Xsh>T&cIffy`s&K=Dzk2@nKURZ9L_iaJ<_Gc zyYBIBPs`6!U+QZX?saoHYPvnWCr4jQ^fhbowHqkwkFc6z(4_mVpN0kz0DX6-nV)I@ zs@}^wqpX%&M9xZ(@2Wb>Yzbe&HX6z-X%*VolygeK1J%LWLkG&)r9e55_-Ap`Xt`f0 zDBWXA3@1MOcnO<06i{;PFL8@UoSbzG3uesS*NhgV2NXgCFj{*H87(?nX1I^YHUdN6 z9gnfgAu9~xK+jfnsPb6djOQuNK|MdCQ*1|F;K+6~1de`=CP1esf&>fvZTH&JUz|Q^q7J+8tv*xN{HJXGm&WP?dzz|F5q;>Zn$tN6 zk$iaF#sT{Yr>{M7ReNoTFT7!4ZS$hGOIDJvT-pI-@&O1;3-iBf8TGGyxwyxO%naUeaLd6w@YYVlN)U*Z$<{GiB?^cU8)o7kLVBT-PsZU k1+&F<^V6~fQvAP-7gaY$cJ7UMqWRMl91!MT$Jw#_zZooz{r~^~ literal 0 HcmV?d00001