Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v2.0.0dev7 changes to Master #201

Open
wants to merge 863 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
863 commits
Select commit Hold shift + click to select a range
313cf4d
[NifModel] Improve updateHeader
hexabits Apr 28, 2016
fd2fdfa
[NifModel] Clean up array updating
hexabits Apr 29, 2016
95dee03
[FO4] Shader .prog fixes
hexabits Apr 30, 2016
b0b0e74
[GL] TexCache file watcher fixes
hexabits May 2, 2016
aab2e09
[NifModel] Loosen signal restriction
hexabits May 3, 2016
9e91704
[GL] Prevent multiple successive mesh recompiles
hexabits May 3, 2016
5c8b25c
[GL] Fix potential crash
hexabits May 3, 2016
31a704b
[NifModel] Item data flags
hexabits May 3, 2016
a80ed27
[NifModel] Condition invalidation fix
hexabits May 4, 2016
e18c3f5
[Build] Remove ICU library copying
hexabits May 4, 2016
90e30c5
[NifExpr] Remove QRegExp debug
hexabits May 5, 2016
87f2d85
[NifTreeView] Redo BSShaderTextureSet auto-expand
hexabits May 8, 2016
43ffa5d
[Fix] Set current directory for application
hexabits May 8, 2016
67bce54
[GL] Move to #version 130
hexabits May 11, 2016
f8bf089
[GL] AMD shader fix
hexabits May 11, 2016
9582f38
[GL] Intel shader fix
hexabits May 11, 2016
15bbea8
[GL] Shader .prog typo fix
hexabits May 11, 2016
b9b4020
[GL] Intel Shader Fix Pt2
hexabits May 12, 2016
579877b
[UI] Default layout changes
hexabits Jun 6, 2016
e257858
[UI] Shortcut Changes
hexabits Jun 6, 2016
cdeddd4
[NifModel] More aggressive invalidation
hexabits Jun 27, 2016
6ff7309
[NifModel] Faster link updates
hexabits Jun 27, 2016
e0f1d6b
[UI] Improved UIntSpinBox
hexabits Jul 14, 2016
3b0e5dd
[UI] Copy Transform button in Inspect
hexabits Jul 15, 2016
e8815d8
[GL] Prevent crash from incorrect segment values
hexabits Jul 16, 2016
6ad847e
[NifModel] Init items with no conditions to true
hexabits Jul 17, 2016
882b46c
[Fix] Disable checksum comparisons for now
hexabits Jul 18, 2016
5f82eda
[FO4] Re-enable auto-sanitization for FO4 meshes
hexabits Jul 18, 2016
8a46204
[GL] Fix data change recompile and recenter behavior
hexabits Jul 18, 2016
8fec4d5
[UI] Increase float editor precision
hexabits Jul 18, 2016
2745df5
[NifModel] Changes for ranged for loops
hexabits Jul 18, 2016
5f7d5f7
[Spell] Block Name Sanitization
hexabits Jul 20, 2016
7751a34
[Spell] Import/Export Binary from rows
hexabits Jul 20, 2016
85c840b
[GL] Partial reversion of modelLinked() changes
hexabits Jul 21, 2016
80bc4bb
[Spell] Update Strippify for new XML names
hexabits Jul 21, 2016
ebc4d0b
[FO4] Update UV Editor for new vertex format
hexabits Jul 25, 2016
f8d1201
[FO4] UV Editor update 2
hexabits Jul 26, 2016
4170570
[FO4] Greatly improved rendering
hexabits Jul 27, 2016
d0918fb
[GL] Increase max framerate
hexabits Jul 28, 2016
6e9ccb4
[Spell] Add "Mesh" category to batch() by default
hexabits Jul 28, 2016
416d55a
[UI] Remove Name editing from NifBlockEditor
hexabits Jul 28, 2016
0e9e6ef
[NifModel] removeNiBlock speedup
hexabits Jul 29, 2016
2c32dc5
[NifModel] Remove unused max length setting
hexabits Jul 29, 2016
a065b71
[NifModel] Fix updateLinks crash
hexabits Sep 15, 2016
11da67c
[GL] Add a "not &" operator to .prog expressions
hexabits Oct 18, 2016
ad0acb7
[BSA] Added LZ4 lib
hexabits Oct 19, 2016
56a30cc
Updated 'About' dialog
hexabits Oct 19, 2016
622336f
[GL] Updated .prog conditions for Skyrim
hexabits Oct 19, 2016
f5b1304
[NifExpr] Division and multiplication for expressions
hexabits Oct 20, 2016
c149b11
[SSE] Registry path updates for SSE
hexabits Oct 24, 2016
a0ac717
[GL] BSESP tex clamp mode update
hexabits Oct 24, 2016
fb1dd32
[NifExpr] Slight cleanup
hexabits Oct 24, 2016
f2077dd
[SSE] Rendering support for NIF version 100
hexabits Oct 25, 2016
75faea9
[SSE] UV Editor update for NIF version 100
hexabits Oct 25, 2016
5469130
Misc Cleanup
hexabits Oct 25, 2016
3abcc9c
[UI] Unchecked Stripify by default in Partition dialog
hexabits Oct 25, 2016
b18e5f9
Version bump
hexabits Oct 25, 2016
7c158e2
[GL] Skyrim shader fixes
hexabits Oct 26, 2016
b91729c
[GL] Merged all shader init into one location
hexabits Oct 27, 2016
150ec13
[GL] Fix out of index in shader properties
hexabits Oct 27, 2016
5aedfc7
[UI] New icon for skinning toggle
hexabits Oct 28, 2016
3abb396
[SSE/FO4] Skinning support, new Skinning toggle
hexabits Oct 29, 2016
f733af7
[Spell] Add Tangent Spaces batch spell
hexabits Oct 29, 2016
b3dc782
[Spell] Triangulate All Strips batch spell
hexabits Oct 29, 2016
ffa2278
[Spell] Remove Unused Strings
hexabits Oct 29, 2016
3bdf582
Minor spell fix
hexabits Oct 29, 2016
593acb6
[GL] Fix texture loading for some Skyrim SE paths
hexabits Oct 29, 2016
ef1a9bc
[SSE/FO4] Skinning fixes
hexabits Oct 29, 2016
45b381b
[Spell] Add and Update Tangent Space improvement
hexabits Oct 30, 2016
0e82628
[UI] NiAVObject and BSXFlags correct flags options
hexabits Nov 7, 2016
df3e28e
[Mem] NifBlock pointer leaks
hexabits Nov 7, 2016
bfe2cd6
[Mem] Spell and SpellBook pointer leaks
hexabits Nov 7, 2016
cbde390
[Mem] SpellBook missed fix in last commit
hexabits Nov 7, 2016
e56feb1
[Mem] Settings dialog leaks
hexabits Nov 7, 2016
231f166
[Mem] QIcon pointer leaks
hexabits Nov 7, 2016
96d7ac2
[Mem] Archive handler leaks
hexabits Nov 7, 2016
a317098
[Mem] Leaks on exit
hexabits Nov 7, 2016
2a7e216
[Mem] Leaks on close
hexabits Nov 7, 2016
d77049c
[Mem] Major NifIStream leaks
hexabits Nov 7, 2016
ad3994b
[Mem] Misc UI leaks
hexabits Nov 7, 2016
227f24c
[BSA] Finally commit accrued changes
hexabits Nov 7, 2016
f32b9ad
[GCC] Fix type punning for strict aliasing rules
hexabits Nov 7, 2016
beb5870
[GL] Clear texture data from RAM after loading
hexabits Nov 7, 2016
1d9d0d6
[Mem] Misc compiler warning fixes
hexabits Nov 7, 2016
458baee
Merge pull request #91 from niftools/dev/2.0
hexabits Nov 10, 2016
7261b0a
Allows for compilation on Linux (#101)
psi29a May 1, 2017
084bd38
Fix "Close All Windows" crash
hexabits May 16, 2017
4ce86c8
Revert back to non-tokens for expression parsing
hexabits May 16, 2017
2cb4f27
[bhk] Sub-shape selection for hkPackedNiTriStripsData
hexabits May 16, 2017
d3e464c
[bhk] Display bhkConvexListShape as well
hexabits May 16, 2017
b9fcc1f
[UV] Hold X or Y to constrain axis of motion
hexabits May 16, 2017
4b6e025
[UV] Remove restrictive window flags
hexabits May 16, 2017
9c02f78
[GL] Hold spacebar as an alternative to MMB
hexabits May 16, 2017
c450727
[GL] Visualize the axis for a node
hexabits May 16, 2017
911985d
[UI] Row copy/paste incl. multi-row paste
hexabits May 16, 2017
ffa2762
[BSA] Cleanup sized string read
hexabits May 16, 2017
585c3b3
[Spell] NiControllerSequence filling
hexabits May 16, 2017
59b9b92
[UI] Helper literal to separate debug/release UI
hexabits May 16, 2017
702bbe5
[XML] Add BTO and BTR files to checker
hexabits May 17, 2017
a73d9e8
Disable migrations for debug builds
hexabits May 17, 2017
1bbda49
Fix README formatting
hexabits May 17, 2017
42d753e
Fix README formatting 2
hexabits May 17, 2017
5031542
Fix README formatting 3
hexabits May 17, 2017
7d63659
[Build] Updates for 5.8+ and misc fixes
hexabits May 28, 2017
ab032ac
[Build] Require C++14, VS2015+, Qt 5.7+
hexabits May 28, 2017
b98b849
Ignore Block Size by default
hexabits Jun 9, 2017
07e92b6
[Spell] Fix None refs in NiDefaultAVObjectPalette
hexabits Jun 9, 2017
480551e
[NifModel] Introduce mixins (specialized compounds)
hexabits May 23, 2017
f64b28d
[NifModel] evalVersion/evalCondition cleanup
hexabits May 26, 2017
375be20
[NifModel] Fix mixin names for nif.xml changes
hexabits Jun 9, 2017
721c8b8
Remove some unused icons
hexabits May 18, 2017
3b852ed
Remove more old icons
hexabits May 18, 2017
652466b
Increased icons 200% for high DPI
hexabits May 19, 2017
dea625f
Moved and removed unused icons
hexabits May 19, 2017
57d1b37
Remove editability of Name column
hexabits May 17, 2017
1501e7e
[Build] Fix cross-platform make target issues
hexabits Jun 10, 2017
6fcdb99
[UI] Default Quaternion rotation to YPR
hexabits Jun 18, 2017
c2039e1
[Spell] spFixInvalidNames fixes
hexabits Jun 18, 2017
8d0a697
[UI] Fix broken right click behavior
hexabits Jun 18, 2017
bb41651
Static Analysis fixes
hexabits Jun 22, 2017
d656dfc
Static Analysis optimizations
hexabits Jun 23, 2017
9e6e23b
[Reorg] Initial file move
hexabits Jun 23, 2017
d26314a
[Reorg] Undo commands to own file
hexabits Jun 23, 2017
885b67c
[Reorg] Rename nifproxy .h/.cpp
hexabits Jun 23, 2017
b9a7cac
[Reorg] Move settings to ui/settingspane
hexabits Jun 23, 2017
0c1d2ec
[Reorg] Remove unused config.h
hexabits Jun 23, 2017
42437a2
[Reorg] NIF stream classes to own file
hexabits Jun 23, 2017
23e97ff
[Reorg] Split main() into own file
hexabits Jun 23, 2017
a7e7e45
[Reorg] Rename expression class to match filename
hexabits Jun 24, 2017
2a17939
[Reorg] Fix debug compilation from 42437a2
hexabits Jun 24, 2017
f5de104
[Reorg] Update file commands for doxygen
hexabits Jun 25, 2017
136aeb2
[Reorg] Include and forward decl cleanup
hexabits Jun 25, 2017
531da58
[Reorg] More include cleanup
hexabits Jun 26, 2017
6256d5f
[Reorg] Organize include paths
hexabits Jun 26, 2017
450f23b
[GL] Fix crash with < 4 bones
hexabits Jun 26, 2017
6da8175
[Build] Fix game detection for 64-bit builds
hexabits Jun 27, 2017
157db70
[UI] Update URLs
hexabits Jul 4, 2017
4b96147
[UI] Icon changes for light/dark
hexabits Jul 11, 2017
dfb4993
[UI] Emit signal for ColorLineEdit
hexabits Jul 11, 2017
a55da49
[UI] New UI Theming
hexabits Jul 18, 2017
0e1cc2c
Change auto to auto& from d656dfc
hexabits Jul 18, 2017
910554b
[UI] Fix checkbox list crash
hexabits Jul 19, 2017
5615e2c
[GL] Correct BGSM priority over flags
hexabits Jul 19, 2017
a4ea44b
[FO4] Expand classification for Editor Markers
hexabits Jul 19, 2017
07f4b5e
[Spell] Update UV naming for nif.xml
hexabits Jul 19, 2017
d35cce5
[UI] Open UV Editor even if there is no texture
hexabits Jul 19, 2017
94dc6e9
[Build] Update AppVeyor and Travis to Qt 5.7
hexabits Jul 21, 2017
6a9b868
[Build] Fix Travis ppa for 5.7.1
hexabits Jul 21, 2017
d6e906b
[Build] Attempt to fix Travis issues
hexabits Jul 21, 2017
7c4102b
[Build] Fix 6da8175 for non-Windows
hexabits Jul 21, 2017
919cd9a
[Build] Support cygwin64 for sed path
hexabits Jul 24, 2017
a10d928
Fix longstanding bug with updating MOPP byte array
hexabits Sep 23, 2017
5d8c33a
Syncing with nifxml 0.9 changes
hexabits Sep 23, 2017
31c3357
[NiMesh] Initial rendering support
hexabits Sep 23, 2017
555880a
Disable Unknown Property warning
hexabits Sep 23, 2017
8d75c96
[GL] Accumulate scene bounds for NiMesh
hexabits Oct 5, 2017
7f57f23
[GL] Support non-Bethesda texture paths again
hexabits Oct 5, 2017
d910f6e
[Spells] Export Template support for SSE and FO4
hexabits Oct 5, 2017
5c2c9d4
[Spells] Transform > Apply fixes, support for BSTriShape
hexabits Oct 6, 2017
8c217ac
[Spells] Face/Smooth Normals support for SSE
hexabits Oct 6, 2017
b6514e4
[Spells] Update Tangents fixes, support for SSE
hexabits Oct 6, 2017
1c8a9e0
Add editorconfig for GitHub tabsize
hexabits Oct 6, 2017
e2b4b76
[GL] Switch to SOIL2, unswap ATI2/BC5 channels
hexabits Oct 11, 2017
6410955
[GL] Add GLI/GLM
hexabits Oct 12, 2017
35d5c44
[GL] Fix palettized NiPixelData texture loading
hexabits Oct 14, 2017
e8b7127
nifxml 0.9 sync, internal BSVertexDesc type
hexabits Oct 15, 2017
f43ec64
[GL] Enable shaders for non-Windows
hexabits Oct 16, 2017
de65fa8
[Build] Cross-platform fixes
hexabits Oct 16, 2017
16a3019
[UI] NifBlockEditor reject changes button
hexabits Oct 22, 2017
1764db8
[Imp/Ex] Slight cleanup, expanded support
hexabits Oct 22, 2017
c8c2a5a
[GL] Reworked FO4 segment vis
hexabits Oct 23, 2017
c9fa4d6
[GL] Fix msn .prog logic from e8b7127
hexabits Oct 23, 2017
d8f2724
nifxml 0.9 sync, Havok constraint fixes
hexabits Oct 28, 2017
d940f0a
[KFM] Fix KFM loading
hexabits Oct 28, 2017
2f524d3
[Spells] Fix strippify for large shapes
hexabits Oct 31, 2017
0895088
[Spells] Expose Copy/Paste Branch and Reorder Blocks publicly
hexabits Nov 8, 2017
97c3466
[GL] Fix potential crash from 7f57f23
hexabits Nov 16, 2017
067a789
[UI] Allow HDR Color3/Color4
hexabits Nov 16, 2017
a2011d4
[Spells] Fix Calc Spring Lengths for nifxml 0.9
hexabits Nov 16, 2017
a728167
[UI] Filter added archives, correct modifyPane behavior
hexabits Nov 16, 2017
eb9f6fc
[BSA] Support sRGB BCn files
hexabits Nov 16, 2017
72797e8
[Build] Cross-platform fixes
hexabits Nov 16, 2017
e81b248
[UI] Undo transactions, support for command merging
hexabits Nov 27, 2017
aee55a7
[GL] Fix rigidbody axes' size and color in select buffer
hexabits Nov 28, 2017
1b471d8
[UI] Prevent Redo from crashing when indices no longer exist
hexabits Nov 28, 2017
aa67419
[UI] Speed up Row Hiding in large flat arrays
hexabits Nov 28, 2017
26b6026
[UI] Auto-expand more items in Block Details
hexabits Nov 28, 2017
3c84be6
[UI] Flat Array/Compound copy/paste
hexabits Nov 28, 2017
12d9bfd
[UI] Link Array sorting
hexabits Nov 28, 2017
097489c
[Build] Correct subdir copy for unix
hexabits Nov 29, 2017
c22c4d2
[GL] New texture loader
hexabits Nov 29, 2017
310eb6e
[GL] Shader improvements for FO4
hexabits Nov 29, 2017
0c996fe
[Imp/Ex] Create shader prop and texset on import for Skyrim
hexabits Nov 29, 2017
6e43e29
[UI] Consolidate error messages on load failure
hexabits Dec 6, 2017
e0853ec
[GL] NiMesh rendering overhaul
hexabits Dec 6, 2017
89b04f7
[GL] Fix rendering issues
hexabits Dec 6, 2017
0885773
[GL] Switch to QVector for some QList
hexabits Dec 6, 2017
e78e064
[GL] Remove old DDS loader
hexabits Dec 6, 2017
7ebc646
[GL] Do not attempt shader usage on non-Bethesda files
hexabits Dec 6, 2017
3c10265
[NIF] 20.3.1.2 custom RTTI hash support
hexabits Dec 6, 2017
b175716
[GL] Skinning Improvements
hexabits Dec 6, 2017
ae5307a
[GL] Correct 20.1+ UV Set selection, 20.5+ Anisotropy for NiTexturing…
hexabits Dec 7, 2017
6e709f5
[GL] Fix loading of non-DDS textures
hexabits Dec 7, 2017
729e4fa
[GL] QList to QVector for texcoords
hexabits Dec 7, 2017
f0c5c60
[GL] 20.1+ NiTri and NiMesh vertex color fixes
hexabits Dec 8, 2017
ed03e37
[GL] Fix regression for non-tangent meshes in b175716
hexabits Dec 9, 2017
718a7ba
[Build] Cross-platform fixes
hexabits Dec 9, 2017
be93847
[KFM] Fix crash with no kfm.xml from d940f0a
hexabits Dec 11, 2017
318ec62
[UI] Fix 6e43e29 to work with Qt 5.10
hexabits Dec 11, 2017
38109b1
[GL] Remove SOIL2
hexabits Dec 11, 2017
c6eb2ad
[Build] GCC and Clang warning reduction
hexabits Dec 11, 2017
c788e1f
[UI] Auto-link pasted NiCollisionObjects on selected block
hexabits Dec 15, 2017
4d6f4b7
nifxml 0.9 sync, manual externalcond for BSVertexData
hexabits Dec 15, 2017
e34252e
[UI] Fix UI painting issues for Qt 5.10
hexabits Dec 15, 2017
a7f9cc6
[UI] Default layout and size tweaks
hexabits Dec 15, 2017
da0d4d3
[UI] Fix keypress crash in Header tab
hexabits Dec 15, 2017
11f2980
[GL] NiMesh rewrite No. 3
hexabits Dec 16, 2017
1db175d
[GL] Stencil and Material property updates
hexabits Dec 16, 2017
aa6b3d9
nifxml 0.9 sync for BSPackedCombined vis
hexabits Dec 16, 2017
c0b44e2
[GL] Per-frame major allocation optimizations
hexabits Dec 16, 2017
5639fce
[UI] LOD slider improvements, FO4 support
hexabits Dec 16, 2017
3f5d849
[UI] Add New Ref feature for "None" Ref links
hexabits Dec 16, 2017
323d67c
[UI] Major block copy/paste overhaul
hexabits Dec 16, 2017
31fc1b2
[GL] Renderer refactor, stage 1
hexabits Dec 16, 2017
c157d97
[UI] Value string changes
hexabits Dec 16, 2017
3b9a3bf
[UI] Make Update Array part of the undo stack
hexabits Dec 16, 2017
947e7c0
[GL] Missing changes for 31fc1b2 and c0b44e2
hexabits Dec 16, 2017
4c8fbf5
[UI] Small buddy() refactor
hexabits Dec 16, 2017
e742ee5
[UI] Support more transforms for spells etc.
hexabits Dec 16, 2017
7bdf5c8
[NifModel] Minor memory and speed improvements
hexabits Dec 16, 2017
df965f6
[GL] Try loading DDS that are smaller than calc size
hexabits Dec 16, 2017
e2823c8
[GL] Provide NPOT check like old loader
hexabits Dec 17, 2017
6798b9a
[GL] Reset shader when shading actions are toggled
hexabits Dec 17, 2017
807290b
VERSION increase
hexabits Dec 17, 2017
82358f9
[UI] Fix crash from missing default in c157d97
hexabits Dec 17, 2017
5ec306b
[UI] Licensing, About cleanup, version string change
hexabits Dec 17, 2017
2fbd0b1
[Build] Update docsys module, NifMopp dll
hexabits Dec 18, 2017
6b5ddca
[GL] Fix skinned NiMesh rendering from 11f2980
hexabits Dec 18, 2017
47b788d
Merge pull request #115 from jonwd7/develop
hexabits Dec 18, 2017
6d80ff0
[GL] Fix transparency bug on selection from 31fc1b2
hexabits Dec 20, 2017
a715fc2
[Imp/Ex] Potential fix for #74
hexabits Dec 20, 2017
129b881
[GL] Fix vis mode turning off shaders from 31fc1b2
hexabits Dec 20, 2017
1eb58de
[UI] Fix crash bug for < 20.1 NIFs
hexabits Dec 21, 2017
df48fc7
[GL] Fix shader issues
hexabits Dec 27, 2017
e0d4472
[GL] Fix partitionless skinning rendering
hexabits Jan 8, 2018
1cef1f4
README update
hexabits Jan 8, 2018
1b69840
[GL] Fix shader issues 2
hexabits Jan 16, 2018
3ac9aaa
[GL] BSShape update shader after texture edit
hexabits Feb 23, 2018
2dad25d
[BaseModel] Prevent crash during save() from corrupting file
hexabits Feb 23, 2018
3a85ac5
Merge pull request #126 from jonwd7/develop
hexabits Feb 23, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[NifModel] More aggressive invalidation
Some spells were no longer working correctly, particularly those which
use set<> on a row which has dependent condition rows.  The NifModel
set<> methods now invalidate any dependent conditions after setting
their value.   This did not cause any load speed regressions.
  • Loading branch information
hexabits committed Jun 27, 2016
commit cdeddd496f997a5817a0dc787e1ad6117527d11d
10 changes: 10 additions & 0 deletions src/nifmodel.cpp
Original file line number Diff line number Diff line change
@@ -2419,6 +2419,9 @@ void NifModel::invalidateConditions( const QModelIndex & index, bool refresh )

void NifModel::invalidateDependentConditions( NifItem * item )
{
if ( !item )
return;

NifItem * p = item->parent();
if ( !p || p == root )
return;
@@ -2438,6 +2441,13 @@ void NifModel::invalidateDependentConditions( NifItem * item )
}
}

void NifModel::invalidateDependentConditions( const QModelIndex & index )
{
auto item = static_cast<NifItem *>(index.internalPointer());
if ( item )
invalidateDependentConditions( item );
}


/*
* link functions
21 changes: 17 additions & 4 deletions src/nifmodel.h
Original file line number Diff line number Diff line change
@@ -102,6 +102,7 @@ class NifModel final : public BaseModel
void invalidateConditions( const QModelIndex & index, bool refresh = true );
//! Invalidate only the conditions of the items dependent on this item
void invalidateDependentConditions( NifItem * item );
void invalidateDependentConditions( const QModelIndex & index );

//! Loads a model and maps links
bool loadAndMapLinks( QIODevice & device, const QModelIndex &, const QMap<qint32, qint32> & map );
@@ -509,22 +510,34 @@ template <typename T> inline T NifModel::get( const QModelIndex & parent, const

template <typename T> inline bool NifModel::set( const QModelIndex & index, const T & d )
{
return BaseModel::set<T>( index, d );
bool result = BaseModel::set<T>( index, d );
if ( result )
invalidateDependentConditions( index );
return result;
}

template <typename T> inline bool NifModel::set( NifItem * item, const T & d )
{
return BaseModel::set<T>( item, d );
bool result = BaseModel::set<T>( item, d );
if ( result )
invalidateDependentConditions( item );
return result;
}

template <typename T> inline bool NifModel::set( const QModelIndex & parent, const QString & name, const T & d )
{
return BaseModel::set<T>( parent, name, d );
bool result = BaseModel::set<T>( parent, name, d );
if ( result )
invalidateDependentConditions( getIndex( parent, name ) );
return result;
}

template <typename T> inline bool NifModel::set( NifItem * parent, const QString & name, const T & d )
{
return BaseModel::set<T>( parent, name, d );
bool result = BaseModel::set<T>( parent, name, d );
if ( result )
invalidateDependentConditions( getItem( parent, name ) );
return result;
}

template <> inline QString NifModel::get( const QModelIndex & index ) const