context menu
This commit is contained in:
@@ -459,6 +459,27 @@ public class movieData
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean delete()
|
||||
{
|
||||
try
|
||||
{
|
||||
Connection conn = ds.getConnection();
|
||||
Statement stmt = conn.createStatement();
|
||||
stmt.execute("DELETE FROM movie WHERE movieID=" + m_movieID + ";");
|
||||
}
|
||||
catch(SQLException e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
ds.close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
String personListToString(List<PersonBasic> personList)
|
||||
{
|
||||
String str = "";
|
||||
|
||||
@@ -84,21 +84,31 @@ public class movieDetailsSelectorComposer extends SelectorComposer<Component>
|
||||
{
|
||||
movieData movie = (movieData) detailsMovie.getAttribute("movie");
|
||||
|
||||
Messagebox.show("Are you sure to delete \"" + movie.getMovieTitle() + "\"?", "Confirm Dialog", Messagebox.YES | Messagebox.NO, Messagebox.QUESTION, new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event evt) throws InterruptedException
|
||||
{
|
||||
if(evt.getName().equals("onYES"))
|
||||
{
|
||||
// alert("Data Saved!");
|
||||
detailsMovie.onClose();
|
||||
}
|
||||
else
|
||||
{
|
||||
detailsMovie.onClose();
|
||||
}
|
||||
}
|
||||
});
|
||||
Messagebox.show("Are you sure to delete \"" + movie.getMovieTitle() + "\"?",
|
||||
"Question", Messagebox.OK | Messagebox.CANCEL,
|
||||
Messagebox.QUESTION,
|
||||
new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event e)
|
||||
{
|
||||
if("onOK".equals(e.getName()))
|
||||
{
|
||||
movie.delete();
|
||||
Listitem item = (Listitem) detailsMovie.getAttribute("item");
|
||||
Listbox movieList = item.getListbox();
|
||||
movieList.removeItemAt(item.getIndex());
|
||||
|
||||
detailsMovie.onClose();
|
||||
}
|
||||
else if("onCancel".equals(e.getName()))
|
||||
{
|
||||
detailsMovie.onClose();
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
detailsMovie.onClose();
|
||||
}
|
||||
|
||||
private movieData getCurrentValues()
|
||||
@@ -107,7 +117,7 @@ public class movieDetailsSelectorComposer extends SelectorComposer<Component>
|
||||
|
||||
movie.setLocalPath(localPath.getValue());
|
||||
movie.setResolution(resolution.getValue());
|
||||
movie.setState(progress.getSelectedIndex()+1);
|
||||
movie.setState(progress.getSelectedIndex() + 1);
|
||||
|
||||
return movie;
|
||||
}
|
||||
|
||||
@@ -2,12 +2,14 @@ package at.windesign.application.movie;
|
||||
|
||||
import org.zkoss.zk.ui.Component;
|
||||
import org.zkoss.zk.ui.Executions;
|
||||
import org.zkoss.zk.ui.event.Event;
|
||||
import org.zkoss.zk.ui.event.MouseEvent;
|
||||
import org.zkoss.zk.ui.select.SelectorComposer;
|
||||
import org.zkoss.zk.ui.select.annotation.Listen;
|
||||
import org.zkoss.zk.ui.select.annotation.Wire;
|
||||
import org.zkoss.zul.Listbox;
|
||||
import org.zkoss.zul.Listitem;
|
||||
import org.zkoss.zul.Window;
|
||||
import org.zkoss.zk.ui.util.Clients;
|
||||
import org.zkoss.zul.*;
|
||||
import org.zkoss.zul.impl.LabelElement;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -63,4 +65,96 @@ public class movieListSelectorComposer extends SelectorComposer<Component>
|
||||
|
||||
window.doModal();
|
||||
}
|
||||
|
||||
@Listen("onClick = menuitem")
|
||||
public void onMoviePopup(MouseEvent event)
|
||||
{
|
||||
String label = ((LabelElement)event.getTarget()).getLabel();
|
||||
|
||||
if(label.compareToIgnoreCase("set Init") == 0)
|
||||
setState(1);
|
||||
else if(label.compareToIgnoreCase("set Progress") == 0)
|
||||
setState(2);
|
||||
else if(label.compareToIgnoreCase("set Done") == 0)
|
||||
setState(3);
|
||||
else if(label.compareToIgnoreCase("update") == 0)
|
||||
updateMovie();
|
||||
else if(label.compareToIgnoreCase("delete") == 0)
|
||||
deleteMovie();
|
||||
}
|
||||
|
||||
public void setState(int state)
|
||||
{
|
||||
Listitem item = movieList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
movieData m = (movieData) item.getValue();
|
||||
m.setState(state);
|
||||
m.save();
|
||||
|
||||
ListModelList model = m.getModel();
|
||||
int index = item.getIndex();
|
||||
model.remove(index);
|
||||
model.add(index, m);
|
||||
}
|
||||
|
||||
public void updateMovie()
|
||||
{
|
||||
Listitem item = movieList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
movieData m = (movieData) item.getValue();
|
||||
movieData mNew = new movieData();
|
||||
|
||||
try
|
||||
{
|
||||
mNew.fromTMDB(m.getMovieID());
|
||||
mNew.copyFrom(m);
|
||||
mNew.save();
|
||||
|
||||
ListModelList model = m.getModel();
|
||||
int index = item.getIndex();
|
||||
|
||||
mNew.setModel(model);
|
||||
model.remove(index);
|
||||
model.add(index, mNew);
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
public void deleteMovie()
|
||||
{
|
||||
Listitem item = movieList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
movieData m = (movieData) item.getValue();
|
||||
|
||||
Messagebox.show("Are you sure to delete \"" + m.getMovieTitle() + "\"?",
|
||||
"Question", Messagebox.OK | Messagebox.CANCEL,
|
||||
Messagebox.QUESTION,
|
||||
new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event e)
|
||||
{
|
||||
if("onOK".equals(e.getName()))
|
||||
{
|
||||
m.delete();
|
||||
movieList.removeItemAt(item.getIndex());
|
||||
}
|
||||
else if("onCancel".equals(e.getName()))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -672,6 +672,29 @@ class serieData
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean delete()
|
||||
{
|
||||
try
|
||||
{
|
||||
Connection conn = ds.getConnection();
|
||||
Statement stmt = conn.createStatement();
|
||||
stmt.execute("DELETE FROM serie WHERE seriesID=" + m_seriesID + ";");
|
||||
stmt.execute("DELETE FROM season WHERE seriesID=" + m_seriesID + ";");
|
||||
stmt.execute("DELETE FROM episode WHERE seriesID=" + m_seriesID + ";");
|
||||
}
|
||||
catch(SQLException e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
ds.close();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
String personListToString(List<PersonBasic> personList)
|
||||
{
|
||||
String str = "";
|
||||
|
||||
@@ -93,21 +93,29 @@ public class serieDetailsSelectorComposer extends SelectorComposer<Component>
|
||||
{
|
||||
serieData serie = (serieData) detailsSerie.getAttribute("serie");
|
||||
|
||||
Messagebox.show("Are you sure to delete \"" + serie.getSeriesName() + "\"?", "Confirm Dialog", Messagebox.YES | Messagebox.NO, Messagebox.QUESTION, new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event evt) throws InterruptedException
|
||||
{
|
||||
if(evt.getName().equals("onYES"))
|
||||
{
|
||||
alert("Data Saved!");
|
||||
detailsSerie.onClose();
|
||||
}
|
||||
else
|
||||
{
|
||||
detailsSerie.onClose();
|
||||
}
|
||||
}
|
||||
});
|
||||
Messagebox.show("Are you sure to delete \"" + serie.getSeriesName() + "\"?",
|
||||
"Question", Messagebox.OK | Messagebox.CANCEL,
|
||||
Messagebox.QUESTION,
|
||||
new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event e)
|
||||
{
|
||||
if("onOK".equals(e.getName()))
|
||||
{
|
||||
serie.delete();
|
||||
Listitem item = (Listitem) detailsSerie.getAttribute("item");
|
||||
Listbox serieList = item.getListbox();
|
||||
serieList.removeItemAt(item.getIndex());
|
||||
|
||||
detailsSerie.onClose();
|
||||
}
|
||||
else if("onCancel".equals(e.getName()))
|
||||
{
|
||||
detailsSerie.onClose();
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
private serieData getCurrentValues()
|
||||
|
||||
@@ -1,15 +1,20 @@
|
||||
package at.windesign.application.serie;
|
||||
|
||||
import at.windesign.application.movie.movieData;
|
||||
import org.zkoss.zhtml.Li;
|
||||
import org.zkoss.zk.ui.Component;
|
||||
import org.zkoss.zk.ui.Executions;
|
||||
import org.zkoss.zk.ui.event.Event;
|
||||
import org.zkoss.zk.ui.event.MouseEvent;
|
||||
import org.zkoss.zk.ui.select.SelectorComposer;
|
||||
import org.zkoss.zk.ui.select.annotation.Listen;
|
||||
import org.zkoss.zk.ui.select.annotation.Wire;
|
||||
import org.zkoss.zul.*;
|
||||
import org.zkoss.zul.impl.LabelElement;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.SortedMap;
|
||||
|
||||
public class serieListSelectorComposer extends SelectorComposer<Component>
|
||||
{
|
||||
@@ -74,4 +79,103 @@ public class serieListSelectorComposer extends SelectorComposer<Component>
|
||||
|
||||
window.doModal();
|
||||
}
|
||||
|
||||
@Listen("onClick = menuitem")
|
||||
public void onSeriePopup(MouseEvent event)
|
||||
{
|
||||
String label = ((LabelElement)event.getTarget()).getLabel();
|
||||
|
||||
if(label.compareToIgnoreCase("set all Progress to Done") == 0)
|
||||
setAllProgressToDone();
|
||||
else if(label.compareToIgnoreCase("delete") == 0)
|
||||
deleteSerie();
|
||||
}
|
||||
|
||||
public void setAllProgressToDone()
|
||||
{
|
||||
Listitem item = seriesList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
serieData s = (serieData) item.getValue();
|
||||
|
||||
SortedMap<Integer, seasonData> seasons = s.getSeasons();
|
||||
|
||||
for(seasonData season : seasons.values())
|
||||
{
|
||||
SortedMap<Integer, episodeData> episodes = season.getEpisodes();
|
||||
|
||||
for(episodeData episode : episodes.values())
|
||||
{
|
||||
if(episode.getEpisodeState() == 2)
|
||||
episode.setEpisodeState(3);
|
||||
}
|
||||
}
|
||||
s.save();
|
||||
s.recalcState();
|
||||
|
||||
ListModelList model = s.getModel();
|
||||
int index = item.getIndex();
|
||||
model.remove(index);
|
||||
model.add(index, s);
|
||||
}
|
||||
|
||||
public void updateSerie()
|
||||
{
|
||||
Listitem item = seriesList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
serieData m = (serieData) item.getValue();
|
||||
serieData mNew = new serieData();
|
||||
|
||||
try
|
||||
{
|
||||
mNew.fromTMDB(m.getSeriesID());
|
||||
mNew.copyFrom(m);
|
||||
mNew.save();
|
||||
|
||||
ListModelList model = m.getModel();
|
||||
int index = item.getIndex();
|
||||
|
||||
mNew.setModel(model);
|
||||
model.remove(index);
|
||||
model.add(index, mNew);
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
public void deleteSerie()
|
||||
{
|
||||
Listitem item = seriesList.getSelectedItem();
|
||||
|
||||
if(item == null)
|
||||
return;
|
||||
|
||||
serieData s = (serieData) item.getValue();
|
||||
|
||||
Messagebox.show("Are you sure to delete \"" + s.getSeriesName() + "\"?",
|
||||
"Question", Messagebox.OK | Messagebox.CANCEL,
|
||||
Messagebox.QUESTION,
|
||||
new org.zkoss.zk.ui.event.EventListener()
|
||||
{
|
||||
public void onEvent(Event e)
|
||||
{
|
||||
if("onOK".equals(e.getName()))
|
||||
{
|
||||
s.delete();
|
||||
seriesList.removeItemAt(item.getIndex());
|
||||
}
|
||||
else if("onCancel".equals(e.getName()))
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
>
|
||||
<tabbox id="tabbox"
|
||||
height="100%"
|
||||
orient="left"
|
||||
orient="top"
|
||||
>
|
||||
<tabs id="tabs"
|
||||
width="120px"
|
||||
|
||||
@@ -19,14 +19,29 @@
|
||||
>
|
||||
</button>
|
||||
</hbox>
|
||||
|
||||
<listbox id="movieList"
|
||||
multiple="true"
|
||||
autopaging="true"
|
||||
vflex="true">
|
||||
vflex="true"
|
||||
context="moviePopup"
|
||||
>
|
||||
<listhead sizable="true"
|
||||
>
|
||||
</listhead>
|
||||
<!-- https://stackoverflow.com/questions/28629458/display-image-from-db-on-zk-zul-listbox-->
|
||||
<!-- https://www.zkoss.org/zksandbox/#u6-->
|
||||
</listbox>
|
||||
|
||||
<menupopup id="moviePopup">
|
||||
<menu label="set status">
|
||||
<menupopup>
|
||||
<menuitem label="set Init"/>
|
||||
<menuitem label="set Progress"/>
|
||||
<menuitem label="set Done"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuitem label="update"/>
|
||||
<menuitem label="delete"/>
|
||||
</menupopup>
|
||||
</div>
|
||||
|
||||
@@ -1,39 +1,51 @@
|
||||
<div id="centerSeries"
|
||||
vflex="true"
|
||||
apply="at.windesign.application.serie.serieListForwardComposer, at.windesign.application.serie.serieListSelectorComposer"
|
||||
vflex="true"
|
||||
apply="at.windesign.application.serie.serieListForwardComposer, at.windesign.application.serie.serieListSelectorComposer"
|
||||
>
|
||||
<vlayout>
|
||||
<hbox width="100%" widths="25%,25%,25%,25%" pack="stretch">
|
||||
<button width="100%"
|
||||
id="updateAll"
|
||||
label="update all"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="updateOpen"
|
||||
label="update open"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="searchSerie"
|
||||
label="search TV Show"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="discoverSerie"
|
||||
label="discover TV Show"
|
||||
>
|
||||
</button>
|
||||
</hbox>
|
||||
</vlayout>
|
||||
<listbox id="seriesList"
|
||||
multiple="true"
|
||||
autopaging="true"
|
||||
vflex="true">
|
||||
<listhead sizable="true"
|
||||
>
|
||||
</listhead>
|
||||
<!-- https://stackoverflow.com/questions/28629458/display-image-from-db-on-zk-zul-listbox-->
|
||||
<!-- https://www.zkoss.org/zksandbox/#u6-->
|
||||
</listbox>
|
||||
<vlayout>
|
||||
<hbox width="100%" widths="25%,25%,25%,25%" pack="stretch">
|
||||
<button width="100%"
|
||||
id="updateAll"
|
||||
label="update all"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="updateOpen"
|
||||
label="update open"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="searchSerie"
|
||||
label="search TV Show"
|
||||
>
|
||||
</button>
|
||||
<button width="100%"
|
||||
id="discoverSerie"
|
||||
label="discover TV Show"
|
||||
>
|
||||
</button>
|
||||
</hbox>
|
||||
</vlayout>
|
||||
<listbox id="seriesList"
|
||||
multiple="true"
|
||||
autopaging="true"
|
||||
vflex="true"
|
||||
context="seriePopup"
|
||||
>
|
||||
<listhead sizable="true"
|
||||
>
|
||||
</listhead>
|
||||
<!-- https://stackoverflow.com/questions/28629458/display-image-from-db-on-zk-zul-listbox-->
|
||||
<!-- https://www.zkoss.org/zksandbox/#u6-->
|
||||
</listbox>
|
||||
|
||||
<menupopup id="seriePopup">
|
||||
<menu label="set status">
|
||||
<menupopup>
|
||||
<menuitem label="set all Progress to Done"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menuitem label="update"/>
|
||||
<menuitem label="delete"/>
|
||||
</menupopup>
|
||||
</div>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -12,6 +12,8 @@ at\windesign\application\serie\serieDetailsSelectorComposer$1.class
|
||||
at\windesign\application\serie\serieListForwardComposer.class
|
||||
at\windesign\application\testing\testForwardComposer.class
|
||||
at\windesign\application\movie\movieSearchSelectorComposer.class
|
||||
at\windesign\application\movie\movieListSelectorComposer.class
|
||||
at\windesign\application\serie\episodeData.class
|
||||
at\windesign\application\serie\serieResultRenderer.class
|
||||
at\windesign\application\movie\movieListSelectorComposer$1.class
|
||||
at\windesign\application\main\indexForwardComposer.class
|
||||
|
||||
Reference in New Issue
Block a user