git://git.nikiroo.be
/
nikiroo-utils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
working on ui refresh for books
[nikiroo-utils.git]
/
src
/
be
/
nikiroo
/
fanfix_swing
/
gui
/
book
/
BookPopup.java
diff --git
a/src/be/nikiroo/fanfix_swing/gui/book/BookPopup.java
b/src/be/nikiroo/fanfix_swing/gui/book/BookPopup.java
index 0710549feb3112f1233261ed79f47e8cedd01681..c99e2730c45917359cd8e01043772414d6a08035 100644
(file)
--- a/
src/be/nikiroo/fanfix_swing/gui/book/BookPopup.java
+++ b/
src/be/nikiroo/fanfix_swing/gui/book/BookPopup.java
@@
-47,6
+47,7
@@
public class BookPopup extends JPopupMenu {
public void fireElementChanged(BookInfo book);
public void fireElementChanged(BookInfo book);
+ public void invalidateCache();
}
/**
}
/**
@@
-68,12
+69,6
@@
public class BookPopup extends JPopupMenu {
private Informer informer;
private Informer informer;
- private Object object;
-
- private Object object2;
-
- private Object object3;
-
public BookPopup(BasicLibrary lib, Informer informer) {
this.lib = lib;
this.informer = informer;
public BookPopup(BasicLibrary lib, Informer informer) {
this.lib = lib;
this.informer = informer;
@@
-438,7
+433,6
@@
public class BookPopup extends JPopupMenu {
lib.changeAuthor(luid, fChangeTo, null);
}
}
lib.changeAuthor(luid, fChangeTo, null);
}
}
- // TODO: ^-- this can create new sources/authors, update maybe required?
return null;
}
return null;
}
@@
-446,11
+440,13
@@
public class BookPopup extends JPopupMenu {
@Override
protected void done() {
try {
@Override
protected void done() {
try {
- // Reload anyway
- for (BookInfo book : selected) {
- informer.fireElementChanged(book);
- }
+ // this can create new sources/authors, so a simple fireElementChanged is not
+ // enough, we need to clear the whole cache (for BrowserPanel for instance)
+ informer.invalidateCache();
+
+ // TODO: also refresh the Sources/Authors(/Tags?) list
+ // Even if problems occurred, still invalidate the cache
get();
} catch (Exception e) {
UiHelper.error(BookPopup.this.getParent(), e.getLocalizedMessage(), "IOException", e);
get();
} catch (Exception e) {
UiHelper.error(BookPopup.this.getParent(), e.getLocalizedMessage(), "IOException", e);
@@
-513,17
+509,17
@@
public class BookPopup extends JPopupMenu {
luids.add(book.getMeta().getLuid());
break;
case SOURCE:
luids.add(book.getMeta().getLuid());
break;
case SOURCE:
- for (MetaData meta : lib.getList
BySource(book.getMainInfo()
)) {
+ for (MetaData meta : lib.getList
().filter(book.getMainInfo(), null, null
)) {
luids.add(meta.getLuid());
}
break;
case AUTHOR:
luids.add(meta.getLuid());
}
break;
case AUTHOR:
- for (MetaData meta : lib.getList
ByAuthor(book.getMainInfo()
)) {
+ for (MetaData meta : lib.getList
().filter(null, book.getMainInfo(), null
)) {
luids.add(meta.getLuid());
}
break;
case TAG:
luids.add(meta.getLuid());
}
break;
case TAG:
- for (MetaData meta : lib.getList(
null
).filter(null, null, book.getMainInfo())) {
+ for (MetaData meta : lib.getList().filter(null, null, book.getMainInfo())) {
luids.add(meta.getLuid());
}
break;
luids.add(meta.getLuid());
}
break;