Yann Lanthony
ca712ef2aa
[ui] AttributeEditor: don't instantiate slider if no range is defined
2018-07-19 13:50:45 +02:00
Yann Lanthony
fc8a3f5f0b
[ui] GraphEditor: add helper functions to move and select nodes
2018-07-19 13:50:45 +02:00
Yann Lanthony
2952e11691
[core] move duplicateNode methods to core.graph
...
handle this low-level operation engine side
* fix ListAttribute children links duplication
* handle CompatibilityNode duplication
* move corresponding unit test in test_graph.py
* [ui] add DuplicateNodeCommand
2018-07-19 13:50:45 +02:00
Yann Lanthony
7d389e365c
[ui] display application version in window title
2018-07-19 13:50:45 +02:00
Fabien Castan
2480c22bf2
[ui] display number of reconstructed cameras
2018-07-16 23:15:00 +02:00
Yann Lanthony
80869879bb
[ui] fix Live Reconstruction mode
...
* use Filepath to setup watched folder
* consider whether mvs nodes were created when sending sfmAugmented signal
2018-07-05 16:45:59 +02:00
Yann Lanthony
d5d8fa77dc
[ui] graph: better ListAttribute connections filtering
...
* fix ListAttribute => ListAttribute with children (was breaking multiple simple connections to a ListAttribute)
* add missing case ListAttribute => Attribute
2018-06-26 12:29:55 +02:00
Yann Lanthony
99d6068250
[graph] make ListAttribute connectable at root level
...
ListAttribute can now be connected :
* at root level to another ListAttribute (new)
* at child level to basic Attributes
2018-06-18 14:58:35 +02:00
Yann Lanthony
20ef9b5a05
[ui] GraphEditor: unregister AttributePins when destroyed
2018-06-18 14:43:18 +02:00
Yann Lanthony
5b586a2810
[ui] use sorted NodeChunks to handle global progression
...
Simplify global progression handling by directly considering the list of NodeChunks (sorted by visit order) instead of the list of Nodes.
2018-05-28 16:23:01 +02:00
Yann Lanthony
df1dc2bab6
[ui] ImageGallery: improve synced selection with 3D view
...
Fix synchronization with 3D camera selection when the corresponding image has not been instantiated in ImageGallery (outside visible viewport).
* SortFilterDelegateModel: add "find" method
* ImageGallery
* move passive selection logic out of the Delegate as it's created only when visible in the GridView
* use SortFilterDelegateModel.find to get item index based on selected "viewId" and set GridView's currentIndex
2018-05-28 16:14:28 +02:00
Yann Lanthony
c606c1d3e2
[ui] ImageGallery: fix 'readOnly' behavior
...
* properly propagate readOnly state + disable high-level modifications on ImageGallery when graph is being computed
* tweak ImageGallery initial width
2018-05-28 16:04:45 +02:00
Yann Lanthony
2f2390e465
[ui] fix Palette propagation
...
* bugfix: in latest PySide2 versions, application palette is not properly applied to all QtQuick Controls 2 components. Force this by exposing QApplication palette and bind it to the root ApplicationWindow.
* rename all "palette" ids to "activePalette" to avoid clashes with "palette" property on QtQuick Controls 2
* use parent component palette when it makes sense to propagate active/disabled style (instead of always using Active SystemPalette)
2018-05-28 15:30:09 +02:00
Yann Lanthony
b46520009f
[ui] add 'Message' structure to wrap high-level messages
...
* fix random segfault due to signals with 2+ arguments (PySide bug)
* group Connections to '_reconstruction' instance
2018-05-28 11:25:41 +02:00
Fabien Castan
1c16199ca4
[ui] fix background color of ImageDelegate
2018-05-21 16:57:09 +02:00
Fabien Castan
81dcf10d25
[ui] fix FloatingPane background color
2018-05-21 16:10:20 +02:00
Fabien Castan
4e3372b2b1
[ui] force palette.window
2018-05-21 15:59:12 +02:00
Fabien Castan
3c6ebf3df4
[qt] disable qml Connections that create a crash on Qt 5.11
...
Disable them temporarily, but we need to find an alternative.
2018-05-20 22:42:29 +02:00
Yann Lanthony
1634555bf0
[ui] replace anchors by alignments inside Layouts
2018-05-03 16:52:00 +02:00
Yann Lanthony
f87024b0c5
[ui] highlight selected view in 3D + 3D picking
...
Spawn a cube on each camera to display which one is selected + allow picking from the 3D view
2018-04-21 13:14:29 +02:00
Yann Lanthony
8466264cf0
Merge pull request #106 from alicevision/dev_retrocompatibility
...
Retrocompatibility V1
2018-04-16 18:39:32 +02:00
Yann Lanthony
cfaa0bc012
[ui] Viewer2D: display image source path
...
* display selectable-by-mouse source filepath
* add radius property to FloatingPane to control border radius from outside
* use FloatingPane in ImageMetadataView
2018-04-16 12:14:04 +02:00
Yann Lanthony
f2089108aa
[ui] high-level log system to prompt message dialogs in UI
...
* add 'info', 'warning', 'error' Signals on root object Reconstruction
* create MessageDialogs when those signals are emitted
2018-04-13 22:52:22 +02:00
Yann Lanthony
014c1fe25f
[ui] specify keys for DropAreas
2018-04-13 22:48:46 +02:00
Yann Lanthony
1e462d94de
[ui][3d] fix depthMap clearing
...
* must be fixed in qtOIIO plugin
2018-04-13 22:46:44 +02:00
Yann Lanthony
029d4f2e7b
[ui] GraphEditor: clamp zoom
2018-04-13 22:44:09 +02:00
Yann Lanthony
b64cfc856c
[ui] ImageMetadataView: display image location on map when available
2018-04-13 19:29:30 +02:00
Yann Lanthony
def7e6b634
[ui] set font size at Application level
2018-04-09 12:00:30 +02:00
Yann Lanthony
472b860131
[ui] better handling of Reconstruction's current sfm node
...
* reset sfm node on graph change by using 'sfm' property (ensure previous sfm node is correctly disconnected)
* ui: clear viewers when graph changes
2018-04-06 14:24:45 +02:00
Yann Lanthony
11121039dc
[ui] Viewer3D: reset polycount on source change
2018-04-05 22:00:20 +02:00
Yann Lanthony
adf59e56fa
[ui] GraphEditor: fix typo
2018-04-05 21:56:36 +02:00
Yann Lanthony
a2dd3c22bd
[ui][3D] tweak rotation/scale pane
...
* use a GridLayout
* reduce default sliders size
2018-03-23 11:23:47 +01:00
Yann Lanthony
c4f47d1307
[ui] Panel: clip by default
2018-03-23 11:23:47 +01:00
Yann Lanthony
35e89a3c9b
[ui][3D] retrieve and display polycount after loading a scene
...
* use vertexPosition attribute buffer to determine the number of faces
* remove useless Qt.resolvedUrl()
2018-03-23 11:23:46 +01:00
Yann Lanthony
d4c0a4975a
[ui] add "Controls" module to centralize common UI components
...
* add FloatingPane control + use it in Viewer3D
2018-03-23 11:17:11 +01:00
Yann Lanthony
6ae591e981
[ui] module Singleton crashes at exit; expose "Filepath" as context property
...
TODO: find a better way to do this (wait for 'qmlRegisterSingletonType' to be available in PySide ? )
2018-03-23 11:17:11 +01:00
Yann Lanthony
74e80e70b5
[ui][3d] introduce Wireframe render mode
...
* add WireframeMaterial from Qt 3D example
* MaterialSwitcher now has 3 render modes: Solid, Wireframe, Textured
* Remove NodeInstantiator; always create the material and modify entity's components (avoid rendering issues when switching between materials)
* use DiffuseSpecularMaterial for Solid and Textured mode
* create a MaterialSwitcher for all types of meshes (with/without textures)
* add a render settings panel as part of 3D viewport overlay and remove "Textures" entry from outliner
2018-03-23 11:17:10 +01:00
Yann Lanthony
f1d4291219
[ui][3d] improve layout of mesh rotation/scale control
2018-03-21 17:24:19 +01:00
Yann Lanthony
9f39579e00
[ui][3d] reduce camera nearPlane
...
useful for close-up mesh inspection
2018-03-21 17:24:19 +01:00
Yann Lanthony
0249706018
[ui] add missing string paths to url conversions
2018-03-21 17:24:19 +01:00
Yann Lanthony
2e4d9b85e6
[ui] UIGraph: rename 'addNode' to 'addNewNode' to match core.graph API
2018-03-21 15:53:34 +01:00
Yann Lanthony
450f800fef
[ui] allow SfM augmentation when providing new images
...
* create two separate drop areas when adding images to the project (add images / augment reconstruction)
* add sfm augmentation in graph after intrinsics have been built
2018-03-21 15:53:34 +01:00
Yann Lanthony
9f2dbc9639
[reconstruction] small structural re-organization
...
* move LiveSfmManager.stepCreated to Reconstruction.sfmAugmented
* add utility methods in Reconstruction to get all images/views used in the graph
* ui: perform local auto-layout on sfm augmentation on created nodes
2018-03-21 15:53:34 +01:00
Yann Lanthony
e0b72863ee
[ui] GraphEditor: improve auto-layout related functions
...
* move graph boundingBox computation in a separate method
* perform autoLayout from "from" to "to" index (instead of "to"-1)
2018-03-21 15:53:34 +01:00
Yann Lanthony
266f0985d2
[ui] convert string paths to urls outside Viewers
...
* fix external image drop on 2D Viewer
* fix 3D model loading from "Load Model" button
2018-03-21 15:53:34 +01:00
Yann Lanthony
f1b42acc14
[ui] add FilepathHelper Python class to manipulate paths and QUrls
...
* avoid non-cross platform hacks to convert string path to urls
* use standard python API
2018-03-06 15:32:33 +01:00
Yann Lanthony
0c071d03d1
[ui] remove ASCII icons
...
won't render correctly on some platforms
2018-02-26 17:01:41 +01:00
Yann Lanthony
b9a1e57b79
[ui][log] reload file when auto-reload timer stops
...
useful to reload the file when status goes from RUNNING to ERROR/SUCCESS
2018-02-26 17:00:20 +01:00
Yann Lanthony
2cdc83f06f
[ui] add string <--> file representation convertors
...
* convenient methods to conform strings to Qt file reprensentation using the "file:/" protocol prefix
* use those methodes when manipulating files
2018-02-26 16:59:25 +01:00
Yann Lanthony
62726b4663
[ui] fix missing "else"
...
+ remove unnecessary call to clearAbc
2018-02-26 16:33:06 +01:00