From 64ddc1fbba25c4f2a4ec686f82ce69944bdf998b Mon Sep 17 00:00:00 2001 From: ExPikaPaka Date: Tue, 13 Oct 2026 13:21:17 +0200 Subject: [PATCH] Texture displacement: tooltips beside the panel, with illustrations The panel is pinned to the right edge of the canvas, so a tooltip left to follow the mouse covers the very control it explains. panel_tooltip() places every tooltip in the gizmo to the left of the panel instead - or of the texture picker, while a tooltip is coming from inside that popup - the same placement the picker itself already uses. A tooltip can now carry pictures under its text: stills, or GIFs that loop while it is open. Several settings in this panel describe a shape rather than a number, and a sentence about a shape is read twice and understood once. Files live in resources/images/texture_displacement and are named by a tooltip; one that is missing is skipped, so a tooltip without its art yet is exactly the text tooltip it was before. AnimatedTexture decodes a file once and uploads a GL texture per frame - wxImage for stills, wxGIFDecoder for GIFs, whose frames are composited here with the disposal method each one asks for. An animation restarts when its tooltip opens and asks the canvas for a redraw timed to its next frame. Tile and Rotation are wired up as the first two; scripts/ gen_texture_displacement_tips.py draws their relief from the same arithmetic the feature uses. docs/HLSD/tooltip-illustrations.md covers the rest. --- docs/HLSD/tooltip-illustrations.md | 76 ++++++ .../images/texture_displacement/rotation.gif | Bin 0 -> 219397 bytes .../images/texture_displacement/tile_off.png | Bin 0 -> 7564 bytes .../images/texture_displacement/tile_on.png | Bin 0 -> 40341 bytes scripts/gen_texture_displacement_tips.py | 136 ++++++++++ src/slic3r/CMakeLists.txt | 2 + src/slic3r/GUI/AnimatedTexture.cpp | 248 ++++++++++++++++++ src/slic3r/GUI/AnimatedTexture.hpp | 78 ++++++ .../GUI/Gizmos/GLGizmoTextureDisplacement.cpp | 217 +++++++++++---- .../GUI/Gizmos/GLGizmoTextureDisplacement.hpp | 35 +++ 10 files changed, 739 insertions(+), 53 deletions(-) create mode 100644 docs/HLSD/tooltip-illustrations.md create mode 100644 resources/images/texture_displacement/rotation.gif create mode 100644 resources/images/texture_displacement/tile_off.png create mode 100644 resources/images/texture_displacement/tile_on.png create mode 100644 scripts/gen_texture_displacement_tips.py create mode 100644 src/slic3r/GUI/AnimatedTexture.cpp create mode 100644 src/slic3r/GUI/AnimatedTexture.hpp diff --git a/docs/HLSD/tooltip-illustrations.md b/docs/HLSD/tooltip-illustrations.md new file mode 100644 index 0000000000..c150d3ac2f --- /dev/null +++ b/docs/HLSD/tooltip-illustrations.md @@ -0,0 +1,76 @@ +# Tooltip illustrations + +The texture-displacement panel's tooltips can carry a picture under their text: a still image, or a +short animation that loops while the tooltip is open. Several settings in that panel describe a shape +rather than a number - what Rotation turns, what Tile repeats, what Invert turns inside out - and a +sentence about a shape is read twice and understood once. + +## Where a tooltip is drawn + +`GLGizmoTextureDisplacement::panel_tooltip()` replaces `ImGuiWrapper::tooltip()` throughout the panel. +It differs in two ways. + +It places the tooltip beside the panel instead of under the mouse. The panel is pinned to the right +edge of the canvas, so a tooltip following the mouse covers the control it is explaining, and one +carrying a picture covers most of the panel with it. The tooltip goes to the left of +`m_tooltip_anchor_min`/`_max` - the panel's own screen rectangle, or the texture picker's while that +popup is up and the tooltip comes from inside it - and to the right only when there is no room on the +left. This is the placement the picker popup itself already uses. + +ImGui normally keeps a tooltip glued to the mouse and ignores `SetNextWindowPos()`. Orca's imgui +branch honours a position set for a tooltip (see the `ImGuiWindowFlags_Tooltip` branch of `Begin()` in +`deps_src/imgui/imgui.cpp`) and still clamps the result inside the canvas, which is what keeps a tall +tooltip near the bottom edge on screen. + +It also gives the tooltip a fixed width rather than one derived from its text, because a picture has +to be laid out against something, and a column of tooltips that are all one width is steadier to read. + +## Where the pictures live + +`resources/images/texture_displacement/`, as PNG, JPG, BMP or GIF. A tooltip names them by file: + +```cpp +hover_tip(_u8L("Repeats the texture across the painted area. ..."), + { { "tile_off.png", _L("Off") }, { "tile_on.png", _L("On") } }); +``` + +Several in one tooltip are laid out side by side at equal widths, which is how a setting is shown as a +comparison - the same model at two values of it. The caption under each is translated; the file name +is not. + +A file that is missing or will not decode is skipped, and a tooltip whose pictures are all missing is +exactly the text tooltip it was before. So the art for a tooltip can land after the tooltip does, and +a half-finished set never breaks the panel. + +## Decoding and playback + +`slic3r/GUI/AnimatedTexture.hpp` decodes a file once and uploads one GL texture per frame. Stills go +through `wxImage`; GIFs go through `wxGIFDecoder`, whose raw palette indices are composited here frame +by frame, replaying the disposal method each frame asks for. That replay is what makes an animation +look continuous: a GIF frame is a sub-rectangle drawn over what came before it, so an animation that +only re-sends the pixels that changed draws as a flicker of disconnected patches without it. + +A frame delay of 0 or 1 hundredths of a second is read as 100 ms, the convention browsers settle on, +so an animation authored against that plays at the speed it was authored at. + +The animation restarts when its tooltip opens, rather than running off a free-running clock: these are +short loops of one setting going from one value to another, and joining one halfway through shows the +end of a change the user never saw the start of. The canvas only redraws on demand, so each frame asks +for the next through `GLCanvas3D::schedule_extra_frame()`, timed to when that frame is actually due. + +## Making one + +Captures of the real tool are the first choice for anything involving the model, the mesh or colour. +Settings whose meaning is a shape can be drawn from the same arithmetic instead: +`scripts/gen_texture_displacement_tips.py` shades a height field as a relief catching the light, and +produces `tile_off.png`, `tile_on.png` and `rotation.gif` that way. + +Either way: + +- Square, around 256 px. The tooltip is about 20 em wide, so that is roughly native size on a 100% + display and downscales cleanly above it. +- Neutral grey. These say what a shape does; colour in one reads as a third thing the setting does, + and has to work against both themes. +- Animations loop seamlessly and stay short - a dozen frames at 100 ms, under about 250 KB. They sit + in `resources/`, which ships with every copy of the application. +- No text in the picture. Captions are translated; pixels are not. diff --git a/resources/images/texture_displacement/rotation.gif b/resources/images/texture_displacement/rotation.gif new file mode 100644 index 0000000000000000000000000000000000000000..590b48eda31b7c01041a701f18ac4821d9eb99d8 GIT binary patch literal 219397 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
4k234osv16p#P}Zo>b1&%53LurC$lF)$U{+aCA2 z*F5hz|M}1}-Z!!*{^TKI{Mwxyl3ILQp0kpsI zYdiyN2>xR~3-~|y3qS}YK=Y$O4Y0u4!$9}bzz3wi2rR$|Fe0@G!K#ak5^OoQ5kT0v zfDBMS{^I~cd4L_{!5)0S8KjdMyutO$!HU2<-Sa^ooWc1ELL0Qe%6p3=OhP4G!X_L- z)7yY3Y``hx!6l@@1mwRgG{P<9!XFgCAOyiD6hr^q!-ynAHSTgl6%@WJT)#CuLI}Xa zJk-M}oQ)N9!YA|qJIo3_Bt#_i!QiuiKU71bV8cQrL_Q=vMYO;y48K8iL_CDV34lCF z3`75G#7o4)IMl>Mq(jp~y`#88Lew=>i2zH)Lph8J4xqf-xRc4-0RNi+%xlG6B^|uti+d#a=|lU!22Pq(#a*#au+jXjI0iP`_a$Mh|$#V~j>$)I(Sd#>ulr zXEerb?8RyP#%TeN$;-xVY&KMsfOmw)cN9KZM8{^tMo*l8eALH%jK_YQM{u;pT0BLI z*vEqGM|d1X44}t=yvBhnNP|4cgjmLUOvnFwyuF9y$B0bGY79tmyhx19$B2|jY6Qq| zR7YF{$#%Rw3Sh~WWJ!{wNP8^83ZTiFv`Lr5Ntk5Fbeu_>^hum-$+Y;xovg)M#6X|C zNuYcQQY=Y^EXJcmN}5#4r5sA4e9EY-$*B}dj@-$UgvzKCBn%MC3m{7iFiVEWfTpy{ z?<+d7bj!EI0J5Zrv#h|FG|3KVOSpVXxirfItV^Oi7539hxa3Q^Ohdp-#|0eBy(~+^ zRLiau%*7nb#`Md>L`-5-OvzlLC!`8yyv&LOLgv`}E z&Cw*yYlO}3lTFgB&Dqq=-Q>;Q^vxIF1kT_T&fz4^;xx|VM9$C?X^#AtWXtBPJjtB_JXtA0i|c z7#Rl#2MGTFKL{L1u%N+%2oow?$grWqhY%x5oJg^vMT#CWYTU@NqX�Lv{oyvgF5! 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

rp+d?hcG2XrYY{TGd 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

p)aJ|0dCwzI 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"#qA^?ncO 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»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�O3+1};E%Q7lwGFeTgNUr z!ECssD2k`v+?BuWoE4gAnQ}mXGnT7Jp~OnsudSi6{XVlz+qQhKSB=^9?VVc9+nr6G z8JyuGZj?TQ8T@gc(U^|_4df&)6YZ z;6_f*Xg=!1yXF$KhPu7ki|(Y2e&cjoAF;mWLc!g%PT)IwjdqvoDZc9r{;VyIriSjH z;X3Tw4Cg6w?5z�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 TwO>27XS=p(tGb11(e>4p$U;LphOH+ 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

`9S`=NSNu`_Gz&5nW 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 literal 0 HcmV?d00001 diff --git a/scripts/gen_texture_displacement_tips.py b/scripts/gen_texture_displacement_tips.py new file mode 100644 index 0000000000..1fbe9aff01 --- /dev/null +++ b/scripts/gen_texture_displacement_tips.py @@ -0,0 +1,136 @@ +#!/usr/bin/env python3 +"""Draws the illustrations the texture-displacement tooltips show. + +The panel's tooltips can carry a picture under their text (see GLGizmoTextureDisplacement's +panel_tooltip()). A few of those settings - the ones that are a shape rather than a photograph - +are better drawn from the same arithmetic the feature uses than captured from the screen, which is +what this script does: it shades a height field exactly as a relief would catch the light, so +"what Rotation turns" and "what Tile repeats" are visible rather than described. + +Output goes to resources/images/texture_displacement/. Run it after changing one of the patterns +below; nothing in the build depends on it. + + python3 scripts/gen_texture_displacement_tips.py + +Needs numpy and pillow. +""" + +import os + +import numpy as np +from PIL import Image + +SIZE = 256 # px, square - the panel draws these at whatever width the tooltip has +RELIEF = 30.0 # how hard the shading reacts to a slope; purely cosmetic + +OUT_DIR = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "resources", "images", "texture_displacement") + +# Neutral enough to sit in a tooltip in either theme: a dark ground, a mid grey for the flat surface +# and a cool near-white for the lit slopes. +SHADOW = np.array([0.13, 0.14, 0.15]) +MIDTONE = np.array([0.40, 0.42, 0.43]) +HIGHLIGHT = np.array([0.78, 0.84, 0.83]) +LIGHT = np.array([-0.45, -0.62, 0.65]) +LIGHT /= np.linalg.norm(LIGHT) + + +def grid(size=SIZE): + """Unit coordinates, -0.5 .. 0.5, y down as in an image.""" + a = (np.arange(size) + 0.5) / size - 0.5 + return np.meshgrid(a, a) + + +def shade(height): + """A height field in 0..1, lit as a relief and tinted: the picture the tooltip shows.""" + gy, gx = np.gradient(height * RELIEF) + normal = np.dstack([-gx, -gy, np.ones_like(height)]) + normal /= np.linalg.norm(normal, axis=2, keepdims=True) + lam = np.clip(normal @ LIGHT, 0.0, 1.0) + + # Two ramps rather than one: the dark half separates the slopes, the lit half picks up the + # accent, and the flat ground lands in the middle of both. + low = SHADOW + (MIDTONE - SHADOW) * (lam / 0.5)[..., None] + high = MIDTONE + (HIGHLIGHT - MIDTONE) * ((lam - 0.5) / 0.5)[..., None] + rgb = np.where((lam < 0.5)[..., None], low, high) + + # A touch of the height itself, so a tall feature still reads as tall where it is flat on top. + # + # Deliberately almost grey: these say what a shape does, and a relief catching the light is grey. + # A coloured one would read as a third thing the setting does, and the amount of colour would move + # with the slope - a pattern at 45 degrees would flash where the same pattern upright did not. + rgb = np.clip(rgb * (0.88 + 0.18 * height[..., None]), 0.0, 1.0) + return (rgb * 255.0 + 0.5).astype(np.uint8) + + +def vignette(rgb): + """Rounds the picture off at its border, so it does not end in a hard rectangle.""" + x, y = grid(rgb.shape[0]) + edge = np.clip((0.5 - np.maximum(np.abs(x), np.abs(y))) / 0.045, 0.0, 1.0) + return (rgb * edge[..., None]).astype(np.uint8) + + +def save_png(name, rgb): + path = os.path.join(OUT_DIR, name) + Image.fromarray(vignette(rgb)).save(path, optimize=True) + print("wrote", os.path.normpath(path)) + + +def save_gif(name, frames, delay_ms): + path = os.path.join(OUT_DIR, name) + images = [Image.fromarray(vignette(f)).convert("P", palette=Image.ADAPTIVE, colors=32) for f in frames] + images[0].save(path, save_all=True, append_images=images[1:], duration=delay_ms, loop=0, optimize=True) + print("wrote", os.path.normpath(path)) + + +# --- the patterns ------------------------------------------------------------------------------ + + +def ridges(angle_deg, period=0.16): + """Parallel ridges at an angle: the simplest pattern whose direction is unmistakable.""" + x, y = grid() + a = np.radians(angle_deg) + t = (x * np.cos(a) + y * np.sin(a)) / period + return 0.2 + 0.6 * (0.5 + 0.5 * np.sin(2.0 * np.pi * t)) + + +def motif(repeats): + """A ring inside a square frame, laid out `repeats` times across the picture.""" + x, y = grid() + u = (x * repeats) % 1.0 - 0.5 + v = (y * repeats) % 1.0 - 0.5 + r = np.hypot(u, v) + + ring = np.clip(1.0 - np.abs(r - 0.26) / 0.085, 0.0, 1.0) + frame_d = np.maximum(np.abs(u), np.abs(v)) + frame = np.clip(1.0 - np.abs(frame_d - 0.42) / 0.055, 0.0, 1.0) + return np.clip(np.maximum(ring, frame) ** 0.7, 0.0, 1.0) + + +def decal(motif_scale=0.46): + """One copy of the motif in the middle of a flat field - what Tile off leaves.""" + x, y = grid() + u, v = x / motif_scale, y / motif_scale + r = np.hypot(u, v) + ring = np.clip(1.0 - np.abs(r - 0.26) / 0.085, 0.0, 1.0) + frame_d = np.maximum(np.abs(u), np.abs(v)) + frame = np.clip(1.0 - np.abs(frame_d - 0.42) / 0.055, 0.0, 1.0) + inside = (np.maximum(np.abs(u), np.abs(v)) <= 0.5).astype(float) + return np.clip(np.maximum(ring, frame) ** 0.7, 0.0, 1.0) * inside + + +def main(): + os.makedirs(OUT_DIR, exist_ok=True) + + # Tile: one copy against the pattern filling the painted area. + save_png("tile_off.png", shade(decal())) + save_png("tile_on.png", shade(motif(repeats=3))) + + # Rotation: the same ridges turning a quarter of a turn and back, so the loop has no jump. + # A half turn brings parallel ridges back onto themselves, so a single sweep loops with no jump + # and the file stays a fraction of the size a there-and-back one would be. + steps = 16 + save_gif("rotation.gif", [shade(ridges(180.0 * i / steps)) for i in range(steps)], delay_ms=100) + + +if __name__ == "__main__": + main() diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt index 65c8384ef2..9fef3a1766 100644 --- a/src/slic3r/CMakeLists.txt +++ b/src/slic3r/CMakeLists.txt @@ -20,6 +20,8 @@ set(SLIC3R_GUI_SOURCES GUI/Widgets/FilamentLoad.hpp GUI/AboutDialog.cpp GUI/AboutDialog.hpp + GUI/AnimatedTexture.cpp + GUI/AnimatedTexture.hpp GUI/AmsMappingPopup.cpp GUI/AmsMappingPopupUpdate.cpp GUI/AmsMappingPopup.hpp diff --git a/src/slic3r/GUI/AnimatedTexture.cpp b/src/slic3r/GUI/AnimatedTexture.cpp new file mode 100644 index 0000000000..cb0adf58a1 --- /dev/null +++ b/src/slic3r/GUI/AnimatedTexture.cpp @@ -0,0 +1,248 @@ +#include "AnimatedTexture.hpp" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include "slic3r/GUI/GLTexture.hpp" + +namespace Slic3r::GUI { + +namespace { + +std::vector read_file_bytes(const std::string &path) +{ + std::ifstream ifs(path, std::ios::binary); + return std::vector(std::istreambuf_iterator(ifs), std::istreambuf_iterator()); +} + +bool has_gif_signature(const std::vector &bytes) +{ + return bytes.size() > 6 && bytes[0] == 'G' && bytes[1] == 'I' && bytes[2] == 'F'; +} + +// wxImage keeps colour and alpha in two separate buffers, and a file with no alpha at all has none; +// OpenGL wants the four channels interleaved. +std::vector image_to_rgba(const wxImage &image) +{ + const size_t n = size_t(image.GetWidth()) * size_t(image.GetHeight()); + const unsigned char *rgb = image.GetData(); + const unsigned char *a = image.HasAlpha() ? image.GetAlpha() : nullptr; + + std::vector out(n * 4); + for (size_t i = 0; i < n; ++i) { + out[i * 4 + 0] = rgb[i * 3 + 0]; + out[i * 4 + 1] = rgb[i * 3 + 1]; + out[i * 4 + 2] = rgb[i * 3 + 2]; + out[i * 4 + 3] = a != nullptr ? a[i] : 255; + } + return out; +} + +// One decoded frame on its way to the GPU: the whole animation's area, already composited. +struct DecodedFrame +{ + std::vector rgba; + double delay; // seconds +}; + +// Every frame of a GIF, composited onto the animation's own canvas. +// +// A GIF frame is a sub-rectangle that is drawn over what came before it, and the one before says how +// to clean up after itself (leave it, erase it, put back what it covered). Without replaying that, an +// animation that only re-sends the pixels that changed - which is most of them - draws as a flicker of +// disconnected patches. wxGIFDecoder hands over the raw palette indices, which is what makes replaying +// it here straightforward: a transparent index means "keep what is underneath", nothing else does. +bool decode_gif(const std::vector &bytes, int &width, int &height, std::vector &out) +{ + wxMemoryInputStream stream(bytes.data(), bytes.size()); + wxGIFDecoder decoder; + + // A truncated file still decodes everything up to the cut, which is worth showing. + const wxGIFErrorCode err = decoder.LoadGIF(stream); + if ((err != wxGIF_OK && err != wxGIF_TRUNCATED) || decoder.GetFrameCount() == 0) + return false; + + const wxSize size = decoder.GetAnimationSize(); + width = size.GetWidth(); + height = size.GetHeight(); + if (width <= 0 || height <= 0) + return false; + + std::vector canvas(size_t(width) * size_t(height) * 4, 0); + std::vector saved; + + for (unsigned int i = 0; i < decoder.GetFrameCount(); ++i) { + const wxSize frame_size = decoder.GetFrameSize(i); + const wxPoint frame_pos = decoder.GetFramePosition(i); + const wxAnimationDisposal disposal = decoder.GetDisposalMethod(i); + const unsigned char *indices = decoder.GetData(i); + const unsigned char *palette = decoder.GetPalette(i); + const int transparent = decoder.GetTransparentColourIndex(i); + + if (disposal == wxANIM_TOPREVIOUS) + saved = canvas; + + if (indices != nullptr && palette != nullptr) + for (int y = 0; y < frame_size.GetHeight(); ++y) { + const int cy = frame_pos.y + y; + if (cy < 0 || cy >= height) + continue; + for (int x = 0; x < frame_size.GetWidth(); ++x) { + const int cx = frame_pos.x + x; + if (cx < 0 || cx >= width) + continue; + const unsigned char index = indices[size_t(y) * size_t(frame_size.GetWidth()) + size_t(x)]; + if (int(index) == transparent) + continue; + unsigned char *dst = &canvas[(size_t(cy) * size_t(width) + size_t(cx)) * 4]; + dst[0] = palette[3 * size_t(index) + 0]; + dst[1] = palette[3 * size_t(index) + 1]; + dst[2] = palette[3 * size_t(index) + 2]; + dst[3] = 255; + } + } + + // Browsers treat 0 and 1 hundredths of a second as "as fast as the file can mean", and settle + // on 100 ms; an animation authored against that convention plays at the intended speed only if + // this does the same. + const long delay_ms = decoder.GetDelay(i); + out.push_back({ canvas, (delay_ms <= 10 ? 100.0 : double(delay_ms)) / 1000.0 }); + + if (disposal == wxANIM_TOBACKGROUND) { + for (int y = 0; y < frame_size.GetHeight(); ++y) { + const int cy = frame_pos.y + y; + if (cy < 0 || cy >= height) + continue; + const int x0 = std::max(0, frame_pos.x); + const int x1 = std::min(width, frame_pos.x + frame_size.GetWidth()); + if (x1 > x0) + std::fill_n(&canvas[(size_t(cy) * size_t(width) + size_t(x0)) * 4], size_t(x1 - x0) * 4, 0); + } + } else if (disposal == wxANIM_TOPREVIOUS) { + canvas = saved; + } + } + return !out.empty(); +} + +} // namespace + +bool AnimatedTexture::load_from_file(const std::string &path) +{ + reset(); + + boost::system::error_code ec; + if (!boost::filesystem::is_regular_file(path, ec)) + return false; + + const std::vector bytes = read_file_bytes(path); + if (bytes.empty()) + return false; + + std::vector frames; + int width = 0, height = 0; + + if (has_gif_signature(bytes)) { + if (!decode_gif(bytes, width, height, frames)) { + BOOST_LOG_TRIVIAL(error) << "AnimatedTexture: cannot decode GIF " << path; + return false; + } + } else { + wxLogNull no_log; // a format wxWidgets cannot read is handled here, not in a dialog + wxImage image; + wxMemoryInputStream stream(bytes.data(), bytes.size()); + if (!image.LoadFile(stream, wxBITMAP_TYPE_ANY) || !image.IsOk()) { + BOOST_LOG_TRIVIAL(error) << "AnimatedTexture: cannot decode image " << path; + return false; + } + width = image.GetWidth(); + height = image.GetHeight(); + frames.push_back({ image_to_rgba(image), 0.0 }); + } + + m_width = width; + m_height = height; + m_frames.reserve(frames.size()); + for (DecodedFrame &frame : frames) { + auto texture = std::make_unique(); + // Mipmapped: a hint is drawn at whatever width the panel has room for, which is usually + // smaller than the source, and an unfiltered downscale of a diagram is all aliasing. + if (!texture->load_from_raw_data(std::move(frame.rgba), (unsigned int) width, (unsigned int) height, false, + /* use_mipmaps */ true)) { + BOOST_LOG_TRIVIAL(error) << "AnimatedTexture: cannot upload " << path; + reset(); + return false; + } + m_frames.push_back({ std::move(texture), m_duration, frame.delay }); + m_duration += frame.delay; + } + return true; +} + +void AnimatedTexture::reset() +{ + m_frames.clear(); + m_width = 0; + m_height = 0; + m_duration = 0.; +} + +unsigned int AnimatedTexture::texture_id(double time, double *time_to_next) const +{ + if (m_frames.empty()) { + if (time_to_next != nullptr) + *time_to_next = 0.; + return 0; + } + if (m_frames.size() == 1 || m_duration <= 0.) { + if (time_to_next != nullptr) + *time_to_next = 0.; + return m_frames.front().texture->get_id(); + } + + const double t = time - m_duration * std::floor(time / m_duration); + // Frames are few; a linear walk beats keeping an index around and getting it stale. + size_t i = 0; + while (i + 1 < m_frames.size() && t >= m_frames[i].start + m_frames[i].delay) + ++i; + if (time_to_next != nullptr) + *time_to_next = std::max(0., m_frames[i].start + m_frames[i].delay - t); + return m_frames[i].texture->get_id(); +} + +const AnimatedTexture *AnimatedTextureCache::get(const std::string &path) +{ + const auto it = m_items.find(path); + if (it != m_items.end()) + return it->second.get(); + + auto texture = std::make_unique(); + if (!texture->load_from_file(path)) + texture.reset(); // remembered as a failure, so the file is not re-read every frame + + const AnimatedTexture *result = texture.get(); + m_items.emplace(path, std::move(texture)); + return result; +} + +} // namespace Slic3r::GUI diff --git a/src/slic3r/GUI/AnimatedTexture.hpp b/src/slic3r/GUI/AnimatedTexture.hpp new file mode 100644 index 0000000000..ab05aaecf8 --- /dev/null +++ b/src/slic3r/GUI/AnimatedTexture.hpp @@ -0,0 +1,78 @@ +#ifndef slic3r_AnimatedTexture_hpp_ +#define slic3r_AnimatedTexture_hpp_ + +#include +#include +#include +#include + +#include "slic3r/GUI/GLTexture.hpp" + +namespace Slic3r::GUI { + +// An illustration for the UI to draw: one still image, or the frames of an animated GIF together with +// the delays the file asks for. Decoded on the CPU once and uploaded as one GL texture per frame. +// +// A texture per frame rather than an atlas: these are small hints a few hundred pixels across and a +// handful of frames long, so the extra textures cost little, while drawing a frame stays a plain +// ImGui::Image with no UV arithmetic and no dependence on the maximum texture size. +// +// load_from_file() uploads to the GPU, so it needs a current GL context - call it from rendering code. +class AnimatedTexture +{ +public: + AnimatedTexture() = default; + AnimatedTexture(AnimatedTexture &&) = default; + AnimatedTexture &operator=(AnimatedTexture &&) = default; + AnimatedTexture(const AnimatedTexture &) = delete; + AnimatedTexture &operator=(const AnimatedTexture &) = delete; + + // PNG, JPG and BMP through wxImage; GIF, animated or not, through wxGIFDecoder. False, and nothing + // loaded, if the file is missing or cannot be decoded. + bool load_from_file(const std::string &path); + void reset(); + + bool is_valid() const { return !m_frames.empty(); } + bool is_animated() const { return m_frames.size() > 1; } + int width() const { return m_width; } + int height() const { return m_height; } + // Length of one loop, in seconds; 0 for a still image. + double duration() const { return m_duration; } + + // The texture to draw `time` seconds into the loop (which wraps), and - when `time_to_next` is + // given - how much longer that frame stays up. A canvas that only redraws on demand uses the + // latter to ask for the next redraw at the right moment instead of spinning at full speed. + // 0, and a time_to_next of 0, when nothing is loaded. + unsigned int texture_id(double time, double *time_to_next = nullptr) const; + +private: + struct Frame + { + std::unique_ptr texture; + double start{0.}; // seconds into the loop this frame appears at + double delay{0.}; // seconds it stays up + }; + + std::vector m_frames; + int m_width{0}; + int m_height{0}; + double m_duration{0.}; +}; + +// The illustrations a panel has shown at least once, keyed by absolute path, decoded and uploaded on +// first use and kept until clear() - which has to run while the GL context is still current. +class AnimatedTextureCache +{ +public: + // Null when the file is missing or cannot be decoded. The failure is remembered too, so a tooltip + // whose illustration has not been drawn yet costs one lookup, not one decode attempt per frame. + const AnimatedTexture *get(const std::string &path); + void clear() { m_items.clear(); } + +private: + std::map> m_items; // null value: tried once, failed +}; + +} // namespace Slic3r::GUI + +#endif // slic3r_AnimatedTexture_hpp_ diff --git a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp index 96af821505..0339806381 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp @@ -3701,6 +3701,106 @@ void GLGizmoTextureDisplacement::ensure_panel_icons() m_panel_icon_map[names[i]] = icons[i]; } +void GLGizmoTextureDisplacement::panel_tooltip(const wxString &text, const std::vector &media) +{ + panel_tooltip(into_u8(text), media); +} + +void GLGizmoTextureDisplacement::panel_tooltip(const std::string &text, const std::vector &media) +{ + const ImGuiStyle &style = ImGui::GetStyle(); + const float gap = m_imgui->scaled(0.5f); + const float wrap = m_imgui->scaled(20.f); + // The width has to be known here, not left to ImGui, because the tooltip is placed by its left edge + // (below) and an illustration has to be laid out against something. One carrying illustrations takes + // the full wrap width; a plain one takes exactly what its text needs, as it did when ImGui sized it, + // so a two-word tooltip is not a wide box with two words in it. + const float text_w = ImGui::CalcTextSize(text.c_str(), nullptr, false, wrap).x; + const float width = (media.empty() ? std::min(wrap, std::ceil(text_w)) : wrap) + 2.f * style.WindowPadding.x; + + // Beside the anchor (the panel, or the texture picker when the tooltip comes from inside it), never + // over it - the same reasoning, and the same placement, as the picker popup itself. ImGui normally + // keeps a tooltip glued to the mouse; it honours a position set here instead (see the Orca branch in + // imgui's Begin()), and still clamps the result inside the canvas. + const bool left = m_tooltip_anchor_min.x - gap - width >= 0.f; + const float x = left ? m_tooltip_anchor_min.x - gap - width : m_tooltip_anchor_max.x + gap; + ImGui::SetNextWindowPos(ImVec2(x, ImGui::GetItemRectMin().y)); // level with the control it explains + ImGui::SetNextWindowSize(ImVec2(width, 0.f)); // height still follows the content + + ImGui::BeginTooltip(); + ImGui::PushStyleColor(ImGuiCol_Text, ImVec4(1.00f, 1.00f, 1.00f, 1.00f)); + ImGui::PushTextWrapPos(0.f); // the window's own edge, which is what the fixed width above sets + ImGui::TextUnformatted(text.c_str()); + ImGui::PopTextWrapPos(); + ImGui::PopStyleColor(); + render_tip_media(media, width - 2.f * style.WindowPadding.x); + ImGui::EndTooltip(); +} + +void GLGizmoTextureDisplacement::render_tip_media(const std::vector &media, float width) +{ + // Collect what is actually there first: the layout divides the width between the illustrations, so + // one that is missing has to drop out of the count rather than leave a gap. + std::vector> shown; + std::string key; + for (const TipMedia &m : media) { + const AnimatedTexture *texture = + m_tip_media.get((boost::filesystem::path(resources_dir()) / "images" / "texture_displacement" / m.file).string()); + if (texture != nullptr && texture->is_valid() && texture->width() > 0 && texture->height() > 0) { + shown.emplace_back(texture, &m); + key += m.file + "|"; + } + } + if (shown.empty()) + return; + + // Each animation plays from its first frame when its tooltip opens: these are short loops showing + // one setting going from one value to another, and joining one halfway through shows the user the + // end of a change they never saw the start of. + if (key != m_tip_media_key) { + m_tip_media_key = key; + m_tip_media_start = ImGui::GetTime(); + } + const double time = ImGui::GetTime() - m_tip_media_start; + + const ImGuiStyle &style = ImGui::GetStyle(); + const float spacing = style.ItemSpacing.x; + const float cell_w = (width - spacing * float(shown.size() - 1)) / float(shown.size()); + const ImU32 frame = ImGui::GetColorU32(ImGuiCol_Text, 0.25f); + + ImGui::Spacing(); + for (size_t i = 0; i < shown.size(); ++i) { + const AnimatedTexture *texture = shown[i].first; + const TipMedia &entry = *shown[i].second; + + ImGui::BeginGroup(); + double next = 0.; + const unsigned int id = texture->texture_id(time, &next); + const float h = std::round(cell_w * float(texture->height()) / float(texture->width())); + ImGui::Image((ImTextureID) (intptr_t) id, ImVec2(cell_w, h)); + ImGui::GetWindowDrawList()->AddRect(ImGui::GetItemRectMin(), ImGui::GetItemRectMax(), frame, style.FrameRounding); + // The canvas only redraws on demand, so an animation has to ask - and asks for exactly when its + // next frame is due, rather than for a redraw as fast as the machine will go. + if (texture->is_animated()) + m_parent.schedule_extra_frame(int(next * 1000.0)); + + if (!entry.caption.empty()) { + // Centred under its own illustration, and never wider than it. + const std::string caption = into_u8(entry.caption); + const float text_w = ImGui::CalcTextSize(caption.c_str()).x; + const float cell_x = ImGui::GetCursorPosX(); + ImGui::SetCursorPosX(cell_x + std::max(0.f, (cell_w - text_w) * 0.5f)); + ImGui::PushTextWrapPos(cell_x + cell_w); + ImGui::TextDisabled("%s", caption.c_str()); + ImGui::PopTextWrapPos(); + } + ImGui::EndGroup(); + + if (i + 1 < shown.size()) + ImGui::SameLine(0.f, spacing); + } +} + void GLGizmoTextureDisplacement::add_texture_layer() { ModelVolume *mv = texture_volume(); @@ -3845,6 +3945,14 @@ void GLGizmoTextureDisplacement::render_texture_library_popup(const ImVec2 &pane return; } + // While this popup is up its own tooltips belong beside it, not beside the panel it is already + // covering the left of. Restored before every exit below. + const ImVec2 prev_anchor_min = m_tooltip_anchor_min; + const ImVec2 prev_anchor_max = m_tooltip_anchor_max; + m_tooltip_anchor_min = ImGui::GetWindowPos(); + m_tooltip_anchor_max = ImVec2(m_tooltip_anchor_min.x + ImGui::GetWindowSize().x, + m_tooltip_anchor_min.y + ImGui::GetWindowSize().y); + m_imgui->push_bold_font(); m_imgui->text(_L("Choose a texture")); m_imgui->pop_bold_font(); @@ -3903,7 +4011,7 @@ void GLGizmoTextureDisplacement::render_texture_library_popup(const ImVec2 &pane if (entry.path == layer->path) dl->AddRect(ImVec2(a.x - 1.f, a.y - 1.f), ImVec2(b.x + 1.f, b.y + 1.f), selected_col, 0.f, 0, 2.f); if (ImGui::IsItemHovered()) - m_imgui->tooltip(entry.name, m_imgui->scaled(18.f)); + panel_tooltip(entry.name); if (user && ImGui::IsMouseHoveringRect(a, b)) { const float r = std::round(tile * 0.17f); @@ -3916,7 +4024,7 @@ void GLGizmoTextureDisplacement::render_texture_library_popup(const ImVec2 &pane dl->AddLine(ImVec2(c.x - k, c.y - k), ImVec2(c.x + k, c.y + k), IM_COL32_WHITE, 1.5f); dl->AddLine(ImVec2(c.x - k, c.y + k), ImVec2(c.x + k, c.y - k), IM_COL32_WHITE, 1.5f); if (hot) - m_imgui->tooltip(_u8L("Remove from My textures"), m_imgui->scaled(18.f)); + panel_tooltip(_u8L("Remove from My textures")); if (remove_clicked) to_remove = entry; } @@ -3943,10 +4051,9 @@ void GLGizmoTextureDisplacement::render_texture_library_popup(const ImVec2 &pane if (ImGui::Button("+##import_texture", ImVec2(tile, tile))) import_clicked = true; if (ImGui::IsItemHovered()) - m_imgui->tooltip(_u8L("Import your own image as a height map. It is converted to the format the slicer " - "bakes from and saved to your personal texture folder, kept separate from the " - "textures shipped with OrcaSlicer."), - m_imgui->scaled(20.f)); + panel_tooltip(_u8L("Import your own image as a height map. It is converted to the format the slicer " + "bakes from and saved to your personal texture folder, kept separate from the " + "textures shipped with OrcaSlicer.")); end_grid(origin, count + 1); } @@ -3956,6 +4063,8 @@ void GLGizmoTextureDisplacement::render_texture_library_popup(const ImVec2 &pane if (chosen || import_clicked) ImGui::CloseCurrentPopup(); + m_tooltip_anchor_min = prev_anchor_min; + m_tooltip_anchor_max = prev_anchor_max; ImGui::EndPopup(); // Only once the loop over the library is done: importing, picking (which reorders the recently used) @@ -5587,18 +5696,16 @@ void GLGizmoTextureDisplacement::render_debug_stage_panel(ModelVolume *mv) run_stage_debug(); m_imgui->disabled_end(); if (ImGui::IsItemHovered()) - m_imgui->tooltip(_u8L("Run the same bake the Bake button runs, keeping the mesh after every " - "stage, and step through them here. Nothing is committed to the model - " - "this is for finding which stage a bad result came from."), - m_imgui->scaled(20.f)); + panel_tooltip(_u8L("Run the same bake the Bake button runs, keeping the mesh after every " + "stage, and step through them here. Nothing is committed to the model - " + "this is for finding which stage a bad result came from.")); ImGui::SameLine(); m_imgui->bbl_checkbox(_L("Check topology"), m_debug_check_topology); if (ImGui::IsItemHovered()) - m_imgui->tooltip(_u8L("Count open and non-manifold edges after each stage, which is how a stage " - "that tore the mesh is spotted. It scans every edge, so it adds noticeably " - "to the capture on a fine bake."), - m_imgui->scaled(20.f)); + panel_tooltip(_u8L("Count open and non-manifold edges after each stage, which is how a stage " + "that tore the mesh is spotted. It scans every edge, so it adds noticeably " + "to the capture on a fine bake.")); if (m_debug_stages.empty()) return; @@ -5666,9 +5773,8 @@ void GLGizmoTextureDisplacement::render_debug_stage_panel(ModelVolume *mv) show_error(nullptr, _u8L("Could not write the stage meshes.")); } if (ImGui::IsItemHovered()) - m_imgui->tooltip(_u8L("Write every captured stage out as an OBJ file, so they can be opened " - "side by side in a mesh viewer."), - m_imgui->scaled(20.f)); + panel_tooltip(_u8L("Write every captured stage out as an OBJ file, so they can be opened " + "side by side in a mesh viewer.")); } void GLGizmoTextureDisplacement::queue_prepare(const TextureDisplacementPrepareParams ¶ms, @@ -5793,6 +5899,12 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGuiWrapper::push_toolbar_style(m_parent.get_scale()); GizmoImguiBegin(get_name(), flags); + // Where this frame's tooltips place themselves (see panel_tooltip()). The size is last frame's - + // this window auto-resizes, so its height is only known once its content has been laid out - which + // is close enough for a tooltip that needs a frame of hovering to appear in the first place. + m_tooltip_anchor_min = ImGui::GetWindowPos(); + m_tooltip_anchor_max = ImVec2(m_tooltip_anchor_min.x + ImGui::GetWindowSize().x, + m_tooltip_anchor_min.y + ImGui::GetWindowSize().y); ensure_panel_icons(); process_uv_commands(); // clicks from the UV editor pane, run here where the GL context is current const float previous_body_h = m_panel_body_h; @@ -5816,7 +5928,6 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const float gap_s = std::round(m_imgui->scaled(0.4f)); const float label_w = m_imgui->scaled(4.8f); // label column of a label + slider row const float card_pad = std::round(m_imgui->scaled(0.55f)); - const float wrap_w = m_imgui->scaled(20.f); const ImVec4 orca = ImGuiWrapper::COL_ORCA; const ImVec4 col_link = ImGuiWrapper::COL_ORCA; const ImVec4 col_frame = ImGui::GetStyleColorVec4(ImGuiCol_Separator); @@ -5830,9 +5941,9 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGuiWrapper::pop_combo_style(); return changed; }; - const auto hover_tip = [&](const auto &text) { + const auto hover_tip = [&](const auto &text, const std::vector &media = {}) { if (ImGui::IsItemHovered()) - m_imgui->tooltip(text, wrap_w); + panel_tooltip(text, media); }; // Framed icon toggle: a 1 px frame, and when on a teal frame over a teal tint with the icon in its @@ -5840,7 +5951,8 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // `unavailable`, when not empty, draws it faded but still hoverable, so the tooltip can say why it // cannot be used - a disabled ImGui item would swallow the hover and leave the user guessing. const auto icon_toggle = [&](int uid, const std::string &iconfile, bool active, float sz, const wxString &label, - const wxString &tip_text, const wxString &unavailable = wxString()) -> bool { + const wxString &tip_text, const wxString &unavailable = wxString(), + const std::vector &media = {}) -> bool { const bool na = !unavailable.empty(); const auto it = m_panel_icon_map.find(iconfile); const float pad = std::max(1.f, std::round(sz * 0.14f)); @@ -5867,12 +5979,12 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGui::PopStyleVar(2); ImGui::PopID(); if (ImGui::IsItemHovered()) - m_imgui->tooltip(na ? tip_text + "\n\n" + unavailable : tip_text, wrap_w); + panel_tooltip(na ? tip_text + "\n\n" + unavailable : tip_text, media); return clicked && !na; }; // Borderless icon button (non-toggle): always the grey monochrome variant. const auto icon_button = [&](int uid, const std::string &iconfile, float sz, const wxString &label, - const wxString &tip_text) -> bool { + const wxString &tip_text, const std::vector &media = {}) -> bool { const auto it = m_panel_icon_map.find(iconfile); const float pad = std::max(1.f, std::round(sz * 0.14f)); bool clicked = false; @@ -5890,7 +6002,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGui::PopStyleVar(); ImGui::PopID(); if (!tip_text.empty() && ImGui::IsItemHovered()) - m_imgui->tooltip(tip_text, wrap_w); + panel_tooltip(tip_text, media); return clicked; }; // A short vertical rule between groups of buttons on one row; call it right after an item. @@ -6460,7 +6572,8 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float "single copy.")); m_preview_params_dirty |= float_row("##rotation", _L("Rotation"), &layer.rotation_deg, 0.f, 360.f, "%.0f°", false, card_pad); hover_tip(_u8L("Turns the texture on the surface, in degrees - for lining a pattern up with an " - "edge of the model.")); + "edge of the model."), + { { "rotation.gif" } }); if (m_layer_expanded[size_t(layer.slot)]) { { @@ -6526,13 +6639,12 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float } m_imgui->disabled_end(); if (ImGui::IsItemHovered(ImGuiHoveredFlags_AllowWhenDisabled)) - m_imgui->tooltip(has_color ? - _u8L("Prints the painted area in the texture's colors as well as its " - "relief. Each color is matched to the nearest of your loaded " - "filaments; anything you did not paint keeps the object's own.") : - _u8L("This texture is a grayscale height map, so it has no colors to " - "apply. Import a color image to use this."), - wrap_w); + panel_tooltip(has_color ? + _u8L("Prints the painted area in the texture's colors as well as its " + "relief. Each color is matched to the nearest of your loaded " + "filaments; anything you did not paint keeps the object's own.") : + _u8L("This texture is a grayscale height map, so it has no colors to " + "apply. Import a color image to use this.")); // The rest of colour belongs to the whole stack, not to this layer, so it only appears once - // under whichever layer turned colour on. @@ -6702,7 +6814,8 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const float x0 = ImGui::GetCursorPosX(); m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Tile") + "##tile_enabled", layer.tile_enabled); hover_tip(_u8L("Repeats the texture across the painted area. Off places one copy, like a decal, " - "at the size set by Tile size.")); + "at the size set by Tile size."), + { { "tile_off.png", _L("Off") }, { "tile_on.png", _L("On") } }); ImGui::SameLine(); ImGui::SetCursorPosX(std::max(ImGui::GetCursorPosX(), x0 + label_w)); const wxString tile_na = layer.tile_enabled ? wxString() : _L("Turn Tile on to choose how the texture repeats."); @@ -6744,14 +6857,13 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float } m_imgui->disabled_end(); if (ImGui::IsItemHovered(ImGuiHoveredFlags_AllowWhenDisabled)) - m_imgui->tooltip(base_layer ? - _u8L("The base layer has nothing beneath it to combine with, so it always adds.") : - _u8L("What this layer does where it overlaps the ones below. Add and " - "Subtract pile relief on or carve it away. Multiply and Divide scale " - "what is underneath, which turns this layer into a mask over it - " - "there, Depth acts as a strength, and 1 mm leaves white areas " - "untouched."), - wrap_w); + panel_tooltip(base_layer ? + _u8L("The base layer has nothing beneath it to combine with, so it always adds.") : + _u8L("What this layer does where it overlaps the ones below. Add and " + "Subtract pile relief on or carve it away. Multiply and Divide scale " + "what is underneath, which turns this layer into a mask over it - " + "there, Depth acts as a strength, and 1 mm leaves white areas " + "untouched.")); ImGui::SameLine(0.f, gap_s); if (icon_toggle(842, "texture_displacement_adjust.svg", m_adjust_texture_mode, icon_sm, _L("Adjust placement"), @@ -7405,18 +7517,17 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float m_imgui->pop_bold_font(); GLGizmoUtils::pop_orca_button_style(); if (ImGui::IsItemHovered(ImGuiHoveredFlags_AllowWhenDisabled)) - m_imgui->tooltip(mv != nullptr && !mv->is_texture_displacement_painted() ? - (m_seam_edit_mode ? _u8L("Nothing is painted yet. The UV editor's seam tool is on, so " - "strokes on the model mark seams instead of painting - turn " - "it off in the pane to paint.") : - _u8L("Nothing is painted yet.")) : - pro_mode() ? - _u8L("Turn the painted height maps into real geometry, by moving the vertices that are " - "already there. Use Subdivide first if the mesh is too coarse to show the detail.") : - _u8L("Turn the painted height maps into real geometry. The mesh is remeshed to an even " - "density and refined where the texture bends first, so the detail has vertices to " - "land on - all in one step."), - wrap_w); + panel_tooltip(mv != nullptr && !mv->is_texture_displacement_painted() ? + (m_seam_edit_mode ? _u8L("Nothing is painted yet. The UV editor's seam tool is on, so " + "strokes on the model mark seams instead of painting - turn " + "it off in the pane to paint.") : + _u8L("Nothing is painted yet.")) : + pro_mode() ? + _u8L("Turn the painted height maps into real geometry, by moving the vertices that are " + "already there. Use Subdivide first if the mesh is too coarse to show the detail.") : + _u8L("Turn the painted height maps into real geometry. The mesh is remeshed to an even " + "density and refined where the texture bends first, so the detail has vertices to " + "land on - all in one step.")); ImGui::SameLine(); if (busy) { diff --git a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.hpp b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.hpp index 48e0ab72f6..dc01a36295 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.hpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.hpp @@ -4,6 +4,7 @@ #include "GLGizmoPainterBase.hpp" #include "libslic3r/TextureBake/TextureBakeDebug.hpp" #include "libslic3r/TextureDisplacement.hpp" +#include "slic3r/GUI/AnimatedTexture.hpp" #include "slic3r/GUI/GLModel.hpp" #include "slic3r/GUI/GLTexture.hpp" #include "slic3r/GUI/I18N.hpp" @@ -1025,6 +1026,40 @@ private: std::map m_panel_icon_map; // file name -> [normal, colour, disabled] bool m_panel_icons_tried = false; void ensure_panel_icons(); + + // One illustration under a tooltip's text: a still image or an animation (see AnimatedTexture), + // named by file within resources/images/texture_displacement, with a caption under it. Several of + // them in one tooltip are laid out side by side, which is how a setting is shown as a comparison - + // the same model at two values of it. + struct TipMedia + { + std::string file; + wxString caption; + }; + + // Every tooltip the panel shows. Placed beside the panel rather than under the mouse: the panel is + // pinned to the right edge of the canvas, so a tooltip left to follow the mouse covers the control + // it is explaining, and one carrying an illustration covers most of the panel with it. + // + // `media` is drawn under the text, at the tooltip's full width; files that are missing or will not + // decode are skipped, so a tooltip whose illustration has not been drawn yet is exactly the text + // tooltip it was before. + void panel_tooltip(const std::string &text, const std::vector &media = {}); + void panel_tooltip(const wxString &text, const std::vector &media = {}); + void render_tip_media(const std::vector &media, float width); + + // Screen rectangle a tooltip places itself beside: the panel window, or - while the texture picker + // is up and tooltips are coming from inside it - the picker popup, which already sits beside the + // panel. Both are set from the window's own rectangle as it is drawn. + ImVec2 m_tooltip_anchor_min{0.f, 0.f}; + ImVec2 m_tooltip_anchor_max{0.f, 0.f}; + // Illustrations any tooltip has shown, decoded and uploaded once (see AnimatedTexture.hpp). + AnimatedTextureCache m_tip_media; + // Which tooltip's illustrations are on screen, and when they first appeared: an animation plays + // from its first frame each time its tooltip opens, rather than from wherever a free-running clock + // happened to be. + std::string m_tip_media_key; + double m_tip_media_start = 0.; }; } // namespace Slic3r::GUI