Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
b32374b4
Commit
b32374b4
authored
Feb 18, 2014
by
Buce
Browse files
Sort correctly when adding cards
parent
6a5f2d24
Changes
2
Hide whitespace changes
Inline
Side-by-side
cockatrice/src/decklistmodel.cpp
View file @
b32374b4
...
...
@@ -14,7 +14,7 @@
#include
"deck_loader.h"
DeckListModel
::
DeckListModel
(
QObject
*
parent
)
:
QAbstractItemModel
(
parent
)
:
QAbstractItemModel
(
parent
)
,
lastKnownColumn
(
1
),
lastKnownOrder
(
Qt
::
AscendingOrder
)
{
deckList
=
new
DeckLoader
;
connect
(
deckList
,
SIGNAL
(
deckLoaded
()),
this
,
SLOT
(
rebuildTree
()));
...
...
@@ -251,12 +251,13 @@ QModelIndex DeckListModel::addCard(const QString &cardName, const QString &zoneN
beginInsertRows
(
parentIndex
,
cardTypeNode
->
size
(),
cardTypeNode
->
size
());
cardNode
=
new
DecklistModelCardNode
(
decklistCard
,
cardTypeNode
);
endInsertRows
();
sort
(
1
);
sort
(
lastKnownColumn
,
lastKnownOrder
);
emitRecursiveUpdates
(
parentIndex
);
return
nodeToIndex
(
cardNode
);
}
else
{
cardNode
->
setNumber
(
cardNode
->
getNumber
()
+
1
);
QModelIndex
ind
=
nodeToIndex
(
cardNode
);
sort
(
lastKnownColumn
,
lastKnownOrder
);
emitRecursiveUpdates
(
ind
);
deckList
->
updateDeckHash
();
return
ind
;
...
...
@@ -298,6 +299,9 @@ void DeckListModel::sortHelper(InnerDecklistNode *node, Qt::SortOrder order)
void
DeckListModel
::
sort
(
int
column
,
Qt
::
SortOrder
order
)
{
lastKnownColumn
=
column
;
lastKnownOrder
=
order
;
emit
layoutAboutToBeChanged
();
root
->
setSortMethod
(
column
);
sortHelper
(
root
,
order
);
...
...
cockatrice/src/decklistmodel.h
View file @
b32374b4
...
...
@@ -54,6 +54,8 @@ public:
private:
DeckLoader
*
deckList
;
InnerDecklistNode
*
root
;
int
lastKnownColumn
;
Qt
::
SortOrder
lastKnownOrder
;
InnerDecklistNode
*
createNodeIfNeeded
(
const
QString
&
name
,
InnerDecklistNode
*
parent
);
QModelIndex
nodeToIndex
(
AbstractDecklistNode
*
node
)
const
;
void
emitRecursiveUpdates
(
const
QModelIndex
&
index
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment