Commit graph

82 commits

Author SHA1 Message Date
Candice Bentéjac
ac4cb11c3d [ui] Reload the list of templates after "Save As Template" 2022-09-06 09:43:29 +02:00
Povilas Kanapickas
9365a37bde [ui] Reduce confusion when qml loading fails
Currently we disable all logging out of qml by default. This is
problematic in case qml loading fails for any reason (e.g. missing
dependencies) as the user will be presented with a message that is not
actionable: "QQmlApplicationEngine failed to load component". There is
no way to understand what's happening unless the user knows about
MESHROOM_OUTPUT_QML_WARNINGS.

This is improved by checking for presence of "QQmlApplicationEngine
failed to load component" and warning if qml logging is disabled in that
case.
2022-08-25 18:47:16 +03:00
Fabien Castan
25cb8f80d8
Merge branch 'develop' into fix-pyside2-decorator-bug 2022-07-28 10:31:01 +02:00
Candice Bentéjac
578c1f01c0 [ui] Generate the "New Pipeline" menu based on the found project files
The "New Pipeline" menu is automatically filled with the list
of the project files that were found dynamically. Pipelines can thus
be initialized with templates without restarting Meshroom app.
2022-07-13 18:20:34 +02:00
Candice Bentéjac
8fb0c778d1 Add support for external pipelines using project files
- Support loading external pipelines as templates with project files
- Add template files for some standard pipelines
- Remove the hard-coded generation of new pipelines
- Update multiviewPipeline test: the multiviewPipeline test relied on the hard-coded generation of
pipelines.
2022-07-12 14:56:24 +02:00
Povilas Kanapickas
e725f599c5 [ui] Work around PySide2 bug affecting property decorators
PySide 5.15.1 and newer have a bug
(https://bugreports.qt.io/browse/PYSIDE-1426) which results in the
following error emitted on certain @Property decorators:

TypeError: A constant property cannot have a WRITE method or a NOTIFY
signal.

Until the bug is fixed on PySide2 side workaround is to not use Property
as a decorator, but as a simple function wrapper emitting the property
as a class member.

Fixes #1239.
2022-07-08 01:00:43 +03:00
ChemicalXandco
3d33134ca9 [ui] add support for node categories 2021-02-14 16:12:39 +00:00
Fabien Castan
1102ce84e0 Merge branch 'develop' of github.com:alicevision/meshroom into dev/nodesAndTaskManager
Conflicts:
	meshroom/core/graph.py
	meshroom/ui/qml/main.qml
2020-12-01 20:02:43 +01:00
Fabien Castan
589856ecdc Rename hdri into panoramaHdr 2020-09-05 01:16:51 +02:00
Julien-Haudegond
e0389ad957 [ui] move UndoStack and TaskManager instantiations into app.py 2020-08-31 17:43:17 +02:00
Julien-Haudegond
da765a5f98 [ui] Viewer3D: TransformGizmo - moving transform operations to Python
- Moving transform operations from QML to Python to get access to more Qt functionalities and to make a better separation of logic/display.
2020-08-13 14:24:44 +02:00
Fabien Castan
0e434908a5 [ui] improve open recent files
* fix path conversion on windows
* remove invalid paths from the list on error
* explicit error message for "No Such File"
2020-03-17 14:07:00 +01:00
Fabien Castan
d001cc9e73 [ui] add Open Recent Project 2020-03-10 12:50:31 +01:00
Fabien Castan
b244e2e92b [ui] add verbose option 2020-01-17 12:28:44 +01:00
Fabien Castan
a0d6d23191 [ui] add option to save the new project file from the command line 2020-01-15 20:12:53 +01:00
Fabien Castan
be0fb571f9 [ui] set AA_EnableHighDpiScaling earlier to fix qt warnings 2019-12-18 19:03:53 +01:00
Fabien Castan
07f564d6e0 [bin] meshroom: option to choose HDRI pipeline 2019-11-04 00:30:22 +01:00
Fabien Castan
ce6dcbae4d [ui] simplify meshroom command line rules 2019-09-25 21:12:46 +02:00
Fabien Castan
fa7b4587ca [ui] meshroom: improve import command line arguments
-  explicit error messages
-  allow to combine multiple inputs with new --import and --importRecursive options
2019-09-21 18:04:26 +02:00
Fabien Castan
231125efdf [ui] improve meshroom command line
- "meshroom -h / --help": now provides command line documentation (so
argparse is done before GUI creation)
- new positional argument to set project file or input folder
- new "--pipeline" option to set a default pipeline, also support an
environment variable
2019-09-12 21:14:52 +02:00
Yann Lanthony
a85b4660ce
[packaging] dissociate meshroom.__version__ / __version_name__
Introduce meshroom.__version_name__ variable in order not to modify meshroom.__version__ and use this as displayed application version. 
meshroom.__version__ is stored in scene files and used when making a package and should not contain anything other than major.minor.micro information.
2019-06-17 12:46:26 +02:00
Yann Lanthony
e40b0e57b8
[ui] ChunksMonitor: asynchronous status files modification time polling
* make last modification time check on status asynchronous using a dedicated thread + use a ThreadPool to run tasks in parallel
* avoid UI freeze when checking for status updates + increase performances
2019-05-07 12:32:38 +02:00
Yann Lanthony
438622a14b
[ui] Introduce ClipboardHelper for copying to clipboard from QML
* add ClipboardHelper class that contains a QClipboard and exposes its method as Slots
* use Clipboard instead of hidden TextEdit where meaningful
2019-05-07 11:47:09 +02:00
Yann Lanthony
9ce077778b
[ui] add more explicit doc for QML helpers singleton 2019-05-07 11:03:54 +02:00
Tuk Bredsdorff
7f1943c0de
Corrected project argument name
Argument was `project` but was used as `pipeline` which prevented the ui from starting.
2019-03-29 17:17:10 +01:00
Simone Gasparini
a274546247
[ui] add option --pipeline at CLI to directly load a project in GUI 2019-03-26 12:18:04 +01:00
Yann Lanthony
26cb361ecd [ui] custom MessageHandler to turn Qt messages into Python logs
+ filter out inoffensive but non silenced messages coming from QML even when 'outputWarningsToStandardError' is set to False on the QML engine
2019-01-29 16:12:19 +01:00
Yann Lanthony
2f50587904 [ui] introduce Scene3DHelper object
Expose missing QEntity methods and helper functions to QML via this Python class.
2018-12-07 15:55:48 +01:00
Yann Lanthony
14780157c5 [setup] fix default filenames in frozen configuration
* voctree: missing SIFT descriptor type
* missing "aliceVision" folder for AliceVision COPYING.md
2018-08-09 17:29:48 +02:00
Yann Lanthony
3438900b2b [ui] add "About" dialog
Accessible from main menu Help > About Meshroom, or by pressing "F1". Provides info about Meshroom version + useful links and related Open Source Licenses.

* load COPYING.md from Meshroom/AliceVision files (either provided with the standalone package or online) + translate them to HTML for display  (added `markdown` package in requirements)
* request.js: centralize function to open file urls
* provide system info from MeshroomApp (exposed as contextProperty)
2018-08-03 17:24:04 +02:00
Yann Lanthony
4c03ecc249 [ui] remove meaningless meshroom.ui version + set application version 2018-07-19 13:50:45 +02:00
Yann Lanthony
8852f98bea [ui] split __main__.py code into separate modules
* add meshroom.ui.app.MeshroomApp to setup Meshroom UI application
* move PaletteManager to dedicated meshroom.ui.palette module
2018-06-06 12:18:43 +02:00