Commit graph

103 commits

Author SHA1 Message Date
Yann Lanthony
1134aad2d8 [ui] ImageGallery: sort ImageDelegates based on image file's basename 2018-02-16 13:38:49 +01:00
Yann Lanthony
9501307256 [ui] MetadataView: move model delegate declatation in the ListView 2018-02-16 13:03:56 +01:00
Yann Lanthony
d2da971169 [ui] improve SortFilterDelegateModel
* use variant for filterValue and implement different logics to test filter matching based on value type
* allow redefinition of modelData and respectFilter functions to customize logic from outisde if need be
* add convenient 'reverseSortOrder' method
2018-02-16 13:02:18 +01:00
Yann Lanthony
53764812bd [ui] add ImageMetadataView + integration in Viewer2D
* display image metadata as a sorted table view with filtering  
* 2DViewer: new bottom toolbar with metadata toggle + image resolution
2018-02-15 16:10:25 +01:00
Yann Lanthony
d91601ca8e [ui] move filepath.js to Utils module 2018-02-15 15:12:07 +01:00
Yann Lanthony
61427ba41c [ui] introduce SortFilterDelegateModel
* delegate model to add sorting/filtering capabilities to a source models
* create Utils module to store generic purpose Components
2018-02-15 15:06:29 +01:00
Yann Lanthony
6dec4c71c9 [ui][3D] fix error message at startup
use null instead of undefined as default Entity value for plugin-based viewers
2018-02-14 11:29:57 +01:00
Fabien Castan
c3bf936b9f
Merge pull request #94 from alicevision/dev_duplicateNodes
GraphEditor: allow nodes duplication
2018-02-13 16:16:23 +01:00
Fabien Castan
2dceec447d Add 3D depth map viewer 2018-02-13 14:52:55 +01:00
Yann Lanthony
06851f0357 [ui] GraphEditor: use Node name as objectName
* ease debugging
2018-02-12 18:50:54 +01:00
Yann Lanthony
53791cb7d8 [ui] GraphEditor: nodes duplication
* allow duplication of one node/all nodes following a node
* actions available from Node contextual menu and Alt+Click on node for multi-nodes duplication
2018-02-12 18:49:13 +01:00
Yann Lanthony
6455b7c5d8 [ui] GraphEditor: add partial autoLayout 2018-02-12 18:12:26 +01:00
Yann Lanthony
25992286d0 [ui] add partial graph submission up to a certain node 2018-02-07 14:35:50 +01:00
Yann Lanthony
907c9cbcba [ui] use signals instead of direct calls to context var '_reconstruction' 2018-02-07 14:33:30 +01:00
Yann Lanthony
ca8a70f367 [ui] GraphEditor: grab focus on background click 2018-02-06 12:20:22 +01:00
Yann Lanthony
b931632ea2 [ui] lose edit focus on background click and TextField validation 2018-02-06 12:19:42 +01:00
Yann Lanthony
f6ff0b9151 [ui] use MaterialIcons instead of ASCII 2018-02-05 19:42:30 +01:00
Yann Lanthony
60f1f36ff8 [ui] AttributeEditor: add contextual actions on File params
* add 'Open Containing Folder'/'Open File' actions for filepaths
* add 'Open Folder' action for folders
* misc: tweak spacings
2018-02-05 19:04:39 +01:00
Yann Lanthony
c45ebdf83c [ui] AttributeEditor: add contextual menu on attributes
* allow to expose additional actions on individuals attributes
* add 'Reset to Default Value' action
2018-02-05 18:28:31 +01:00
Yann Lanthony
24727de477 [ui] make label of linked attributes italic 2018-02-05 18:18:30 +01:00
Yann Lanthony
4d961065a8 [ui] don't 'bold' output attributes label
outputs don't have a real default value
2018-02-05 18:17:12 +01:00
Yann Lanthony
bb638f9e08 [ui] customize global ToolTip style
less agressive contrast between border and background when using dark theme
2018-02-05 17:32:22 +01:00
Yann Lanthony
516a9641bd [ui] display index as label for ListAttribute's children 2018-02-05 17:31:13 +01:00
Yann Lanthony
f81fdc3c51 [ui] allow file/text drop on String/File params 2018-02-05 15:22:49 +01:00
Yann Lanthony
0fec9c25b0 [ui] make labels of attributes with non-default value bold 2018-02-05 15:13:10 +01:00
Yann Lanthony
4d3509847a [ui] move label inside AttributeItemDelegate
* avoid duplication of code for displaying labels of GroupAttribute's children
* display input/output aligned to the left/right
* add a background to improve readability
2018-02-05 15:05:34 +01:00
Yann Lanthony
0354c3dc9b [ui] convert text value to Number before setting Int/FloatParams 2018-02-02 15:18:20 +01:00
Yann Lanthony
7da0bb16d0 [ui] 3D: improve scene lighting
attach a PointLight to the active camera to dynamically light the model
2018-02-01 15:24:37 +01:00
Yann Lanthony
fe53c582ab [ui] Viewer3D: don't multiply AlembicEntity's locators by current scale
Entity's transform scale is already taken into account by parenting (unlike particleSize that uses a custom shader for rendering and don't rely on transform's scale)
2018-01-30 12:05:50 +01:00
Yann Lanthony
b08a6d65bf [ui] logs: use Monospace font 2018-01-29 16:17:27 +01:00
Yann Lanthony
96d648d76d [ui] logs: reset text if file could not be opened 2018-01-29 16:16:04 +01:00
Yann Lanthony
a582a2f5c1 [ui] improve Alembic files loading
New version of AlembicEntity always clears itself when setting an url (even if it's invalid/empty). Don't need to re-create the AlembicEntity each time we load a file.
2018-01-29 14:46:28 +01:00
Yann Lanthony
817e286d8f [ui] logs: add button to control auto-refresh when chunk is running 2018-01-26 12:23:32 +01:00
Yann Lanthony
796551dc38 [ui] logs: don't reload unchanged file + improve position restoring
* in case the textArea changes, restore the scrollbar position to where it was (not only the cursor position)
2018-01-25 21:46:43 +01:00
Yann Lanthony
0bf2ffc4af [ui] logs: load first chunk's log by default 2018-01-25 21:36:44 +01:00
Yann Lanthony
3965be049b [ui] improve performance on image reconstruction status
*  look-up in views/poses (exposed as QVariant) on QML side is not efficient
*  move this logic to the Python side and expose it as dedicated slots
2018-01-25 12:52:11 +01:00
Yann Lanthony
59bbf14f14 [ui] fix missing fontFamily on Label 2018-01-19 18:42:10 +01:00
Yann Lanthony
63aa19698a [ui] Main Menu: GraphEditor visibility control 2018-01-15 21:50:28 +01:00
Yann Lanthony
fe944b0def [ui] Viewer3D: modify camera locator size in AlembicEntity 2018-01-15 21:47:13 +01:00
Yann Lanthony
95649ebcfd [ui] ImageGallery: remove images on Delete key press 2018-01-15 21:46:37 +01:00
Yann Lanthony
c53c0ae8d2 [ui] display reconstruction status on Images
* add the notion of a current SfM node in the Reconstruction
* retrieve views and poses from this node when selected or when its status changes
* use this information to display a status on Images in ImageGallery
2018-01-15 21:45:15 +01:00
Yann Lanthony
b8b8ea376c [ui] handle file drop on Viewer2D 2018-01-15 21:17:51 +01:00
Yann Lanthony
e71a95de7a [ui] GraphEditor: invert TexField and Slider on Float/IntAttribute 2018-01-15 21:08:19 +01:00
Yann Lanthony
254b945728 [ui] GraphEditor: expose nodes depth strategy for auto-layout
add a ComboBox to chose between node's min/max depth for graph auto-layout
2018-01-15 15:27:21 +01:00
Yann Lanthony
04973fbf63 [ui] move sfm/mesh unloading to visibility control panel 2018-01-15 15:18:39 +01:00
Yann Lanthony
13c22dc884 [ui] add SfmLiveView Panel to control live reconstruction 2018-01-15 15:11:07 +01:00
Yann Lanthony
273cfd9f0e [ui] handle multiple CameraInit nodes in a Reconstruction
* [ui] ImageGallery: add control to navigate image groups
* [graph] expose Node.attribute as a Slot
2018-01-15 14:33:27 +01:00
Yann Lanthony
b9ceb47677 [ui] improve 3D Viewer
* rename Model > Mesh, Alembic > SfM
* add checkbox to control Mesh and SfM visibility
* transparentize visibility checkboxes that do not have a direct impact on the current scene (i.e: 'Textures' when the loaded mesh has no texture)
* move 3D content unloading into a contextual submenu
2018-01-09 20:22:52 +01:00
Yann Lanthony
cc4a24f5f3 [ui] 3D Viewer: Alembic support
* optional and only available if AlembicEntity QML plugin is in QML import path
* 3D viewer can load a 3D model and an Alembic file at the same time
* add contextual menu options to unload model/Alembic
2018-01-09 18:58:27 +01:00
Yann Lanthony
b8f61bf033 [ui] display output 3D files when double clicking on a node
* iterate over output attributes to find an "obj" file
* make default material brighter
2018-01-05 12:14:32 +01:00