I've been working on the new GUI for some time now, and I think it's time for a first demo! This is for Linux only, for the time being. I've built what's currently in the imgui branch into an AppImage and uploaded the AppImage to the lux download page. If you want to try it, here it is:
https://bitbucket.org/kfj/pv/downloads/lux-with-imgui-experimental-x86_64.AppImage This is an AppImage, so for those of you who aren't familiar with the format, after downloading the file, you need to set execute permission, then you can execute it like any other binary. AppImages should run on a wide range of Linux distros. If you find it runs on your Linux, let me know about it, and also let me know if there are any problems. The first thing you get to see is a file select dialog, where you can select images and/or PTO files. After you've okayed the selection, lux starts in full-screen mode, displaying the first image. If you don't like full-screen, press F11, TAB takes you to the next image. If you want to interact with the view, all the keyboard and mouse commands from 'legacy' lux are there, but there is one big difference: if you move the mouse pointer close to the image's top margin, you get a quite ordinary-looking drop-down menu. This is how you access the new GUI functionality. The 'File' menu has a few entries, among which the 'Imgui Demo' is probably the most interesting: it provides a panel to show all widgets and functionality Dear ImGui offers. The second menu has lux-specific panels. You can now make all kinds of settings with the GUI which did require command line parameters in 'legacy' lux. Check it out - the widgets in the panels are usually named like the CL parameters, and the little '?' signs next to the widgets yield tool tips when hovered. The new GUI focuses (for now) on parameterization, which I felt was awkward in 'legacy' lux. I'll eventually extend it to the operation of the virtual camera, slide-show control, snapshots, stitching etc. - please bear in mind that this is a first demo, not the final new GUI, so there are plenty of things still missing. If you want to use the 'legacy' GUI, you can simply switch between the old and new GUI with the 'C' key - the demo is 'hybrid'. The panels, once you've opened them, remain visible and display the currently active parameters. If you change anything, there is no immediate effect, you have to use the 'Apply' or 'Okay' buttons at the bottom of the panels. Note that you can Apply changes to either the current view or to the entire session. I think you'll get the hang of it quickly. Please note that Dear ImGui may produce small .ini files saving the layout and position of the panels, this enables it to start up as it was closed. So much for now, and maybe there's an echo this time? This would also be a good moment to make propositions or get involved. On Friday, November 3, 2023 at 10:01:45 AM UTC+1 kfj wrote: > Dear all! > Over time, lux has become very complex. To do more than 'ordinary' image > and panorama viewing, it's often necessary to pass arguments on the command > line. Many users find that difficult, and the 'legacy' GUI is not up to the > task to handle the complexity. So I decided to start on a new GUI for lux. > lux is using openGL via SFML, and a common way of writing GUIs for SFML > projects seems to be using Dear ImGui <https://github.com/ocornut/imgui>, > an immediate-mode GUI library which only requires the capability to render > textured triangles on the host system. There's a 'glue' layer for SFML, > which makes employing Dear ImGui quite straightforward, and Dear ImGui's > logic blends well with SFML's. So that's what I use as well. > I have set up a new 'imgui' branch in the lux repo > <https://bitbucket.org/kfj/pv> and I've tentatively added a few GUI > elements to lux to see what I can do. I've also established that the code > will build on all platforms I support myself (Linux, MacOS and Windows) - > with the exception of building the MacOS version on Apple silicon (I only > have intel Macs). To build the imgui branch, you may need to provide openGL > libraries on your system (e.g. freeglut from MacPorts on MacOS), cmake > should take care of the rest. > What's in the imgui branch is little more than a proof of concept, please > don't expect too much. The menu will appear if you approach the upper > window margin. There is, as of yet, no documentation for the new GUI, but > many options have tool tips (hover over the little question marks). Have a > look, try it out, and - as ever - comments are welcome! > -- A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ --- You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/hugin-ptx/56c93758-bb93-4b72-b1f0-f5a97afb26a3n%40googlegroups.com.
