initial commit

This commit is contained in:
2020-11-02 17:16:13 +01:00
parent 6fec9da43e
commit 31d74c1ac3
23 changed files with 260 additions and 89 deletions
+7
View File
@@ -68,6 +68,13 @@
<version>${commons-io}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
@@ -0,0 +1,29 @@
package at.windesign.application.main;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Label;
import org.zkoss.zul.Window;
import java.net.URL;
public class indexForwardComposer extends GenericForwardComposer<Component>
{
private static final long serialVersionUID = 1L;
@Wire
private Window mainWindow;
@Wire
protected Label width;
@Wire
protected Label height;
@Override
public void doAfterCompose(Component comp) throws Exception
{
super.doAfterCompose(comp);
}
}
@@ -1,8 +1,8 @@
package at.windesign.application;
package at.windesign.application.serie;
import java.util.SortedMap;
class Serie
class serie
{
private int m_seriesID;
private String m_seriesName;
@@ -17,11 +17,11 @@ class Serie
private int m_minSeason;
private int m_maxSeason;
public Serie()
public serie()
{
}
public Serie(int seriesID, String seriesName, int seriesFirstAired, String seriesResolution, boolean seriesCliffhanger, String seriesStatus, String seriesDownload, String seriesPoster, String seriesBackdrop, SortedMap<Integer, Integer> episodeState, int minSeason, int maxSeason)
public serie(int seriesID, String seriesName, int seriesFirstAired, String seriesResolution, boolean seriesCliffhanger, String seriesStatus, String seriesDownload, String seriesPoster, String seriesBackdrop, SortedMap<Integer, Integer> episodeState, int minSeason, int maxSeason)
{
m_seriesID = seriesID;
m_seriesName = seriesName;
@@ -1,11 +1,11 @@
package at.windesign.application;
package at.windesign.application.serie;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public enum SeriesDataSource
public enum serieDataSource
{
INSTANCE;
@@ -27,7 +27,7 @@ public enum SeriesDataSource
}
}
private SeriesDataSource()
private serieDataSource()
{
// drop the table if it exists
try
@@ -0,0 +1,67 @@
package at.windesign.application.serie;
import org.zkoss.image.AImage;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Desktop;
import org.zkoss.zk.ui.select.annotation.Wire;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Label;
import org.zkoss.zul.Window;
import java.net.URL;
public class serieDetailsForwardComposer extends GenericForwardComposer<Component>
{
private static final long serialVersionUID = 1L;
@Wire
private Window resultWin;
@Wire
protected Label title;
private serie m_serie;
@Override
public void doAfterCompose(Component comp) throws Exception
{
super.doAfterCompose(comp);
int hD = (int)self.getDesktop().getAttribute("desktopHeight");
int wD = (int)self.getDesktop().getAttribute("desktopWidth");
resultWin.setWidth(wD - 10 + "px");
resultWin.setHeight(hD - 10 + "px");
if(arg.containsKey("serie"))
m_serie = (serie) arg.get("serie");
else
resultWin.detach();
String uri = "http://image.tmdb.org/t/p/original" + m_serie.getSeriesBackdrop();
URL url = new URL(uri);
AImage img = new AImage(url);
int w = Integer.parseInt(resultWin.getWidth().replace("px", ""));
int h = Integer.parseInt(resultWin.getHeight().replace("px", ""));
int wI = img.getWidth();
int hI = img.getHeight();
int wR = w;
int hR = hI*w/wI;
if(hR < h)
{
hR = h;
wR = wI*h/hI;
}
String size = String.valueOf(wR) + "px " + String.valueOf(hR) + "px";
String format = "background:url('%1$s') no-repeat center center fixed; -webkit-background-size: " + size + "; -moz-background-size: \" + size + \"; -o-background-size: \" + size + \"; background-size: \" + size + \";";
String style = String.format(format, uri);
resultWin.setContentStyle(style);
// resultWin.setTitle(m_serie.getSeriesName());
// resultWin.setTitle(resultWin.getWidth() + " x " + resultWin.getHeight());
// resultWin.setTitle(m_serie.getParentWidth() + " x " + m_serie.getParentHeight());
// resultWin.setTitle(wD + " x " + hD);
}
}
@@ -0,0 +1,39 @@
package at.windesign.application.serie;
import org.zkoss.zk.ui.Component;
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.Label;
import org.zkoss.zul.Window;
public class serieDetailsSelectorComposer extends SelectorComposer<Component>
{
private static final long serialVersionUID = 1L;
@Wire
private Window resultWin;
@Wire
protected Label title;
private serie m_serie;
@Listen("onClick = #saveButton")
public void save()
{
resultWin.onClose();
}
@Listen("onClick = #cancelButton")
public void cancel()
{
resultWin.onClose();
}
@Listen("onClick = #deleteButton")
public void delete()
{
resultWin.onClose();
}
}
@@ -1,4 +1,4 @@
package at.windesign.application;
package at.windesign.application.serie;
import org.zkoss.zk.ui.Component;
@@ -11,14 +11,13 @@ import java.sql.Statement;
import java.util.SortedMap;
import java.util.TreeMap;
public class seriesListController extends GenericForwardComposer
public class serieListForwardComposer extends GenericForwardComposer
{
protected Listbox seriesList; // autowired
private ListModelList seriesListModel; // the model of the listbox
private seriesRenderer renderer;
private seriesListener itemListener = new seriesListener();
protected Listbox seriesList; // autowired
private ListModelList seriesListModel; // the model of the listbox
private serieRenderer renderer;
private final SeriesDataSource ds = SeriesDataSource.INSTANCE;
private final serieDataSource ds = serieDataSource.INSTANCE;
@Override
public void doAfterCompose(Component comp) throws Exception
@@ -49,8 +48,6 @@ public class seriesListController extends GenericForwardComposer
seriesListModel = new ListModelList();
seriesList.setModel(seriesListModel);
seriesList.addEventListener("onSelect", itemListener);
itemListener.setSeriesList(seriesList);
Listhead head = seriesList.getListhead();
Listheader seriesName = new Listheader("Series Name");
@@ -75,7 +72,7 @@ public class seriesListController extends GenericForwardComposer
head.appendChild(seasonHeader);
}
renderer = new seriesRenderer();
renderer = new serieRenderer();
seriesList.setItemRenderer(renderer);
try
@@ -108,7 +105,7 @@ public class seriesListController extends GenericForwardComposer
);
// fetch all events from database
Serie serie = new Serie();
serie serie = new serie();
int oldID = -1;
SortedMap<Integer, Integer> episodeState = new TreeMap<>();
@@ -126,7 +123,7 @@ public class seriesListController extends GenericForwardComposer
}
oldID = rs.getInt("seriesID");
serie = new Serie();
serie = new serie();
serie.setSeriesID(rs.getInt("seriesID"));
serie.setSeriesName(rs.getString("seriesName"));
@@ -0,0 +1,39 @@
package at.windesign.application.serie;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
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 java.util.HashMap;
import java.util.Map;
public class serieListSelectorComposer extends SelectorComposer<Component>
{
@Wire
private Listbox seriesList;
@Listen("onDoubleClick = #seriesList")
public void onClick()
{
Listitem item = seriesList.getSelectedItem();
if(item == null)
return;
serie s = (serie) item.getValue();
Map<String, Object> arguments = new HashMap<String, Object>();
arguments.put("serie", s);
String template = "/serie/detailsSerie.zul";
Window window = (Window) Executions.createComponents(template, null, arguments);
window.doModal();
}
}
@@ -1,7 +1,6 @@
package at.windesign.application;
package at.windesign.application.serie;
import org.zkoss.image.Images;
import org.zkoss.zk.ui.sys.ComponentsCtrl;
import org.zkoss.zul.*;
import java.awt.*;
@@ -9,7 +8,7 @@ import java.awt.image.BufferedImage;
import java.util.SortedMap;
import java.util.TreeMap;
public class seriesRenderer implements ListitemRenderer
public class serieRenderer implements ListitemRenderer
{
private Integer stateWidth = 4;
private Integer stateHeight = 20;
@@ -19,7 +18,7 @@ public class seriesRenderer implements ListitemRenderer
@Override
public void render(Listitem item, Object o, int i) throws Exception
{
final Serie data = (Serie) o;
final serie data = (serie) o;
Listcell seriesNameCell = new Listcell(data.getSeriesName());
Listcell seriesFirstAiredCell = new Listcell(String.valueOf(data.getSeriesFirstAired()));
@@ -1,37 +0,0 @@
package at.windesign.application;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zul.Listbox;
import org.zkoss.zul.Listitem;
import org.zkoss.zul.Messagebox;
import static org.zkoss.zk.ui.util.Clients.alert;
public class seriesListener implements EventListener
{
Listbox m_seriesList;
public seriesListener()
{
}
public void setSeriesList(Listbox seriesList)
{
m_seriesList = seriesList;
}
public boolean isAsap()
{
// TODO Auto-generated method stub
return true;
}
@Override
public void onEvent(Event arg)
{
Listitem item = m_seriesList.getSelectedItem();
Serie s = (Serie) item.getValue();
Messagebox.show(s.getSeriesName());
}
}
+28 -13
View File
@@ -1,15 +1,30 @@
<zk>
<borderlayout hflex="1"
vflex="1">
<north height="100px"
border="none">
<label style="font-size:50px">North for header</label>
</north>
<center id="win"
border="none"
apply="org.zkoss.bind.BindComposer"
vflex="true">
<include src="/centerSeries.zul"/>
</center>
</borderlayout>
<window id="mainWindow"
width="100%"
height="100%"
border="none"
sclass="outerwin"
apply="at.windesign.application.main.indexForwardComposer, org.zkoss.bind.BindComposer"
onClientInfo="onClientInfo(event)"
>
<borderlayout hflex="1"
vflex="1">
<north height="100px"
border="none">
<label style="font-size:50px">North for header</label>
</north>
<center id="win"
border="none"
apply="org.zkoss.bind.BindComposer"
vflex="true">
<include src="/serie/centerSerie.zul"/>
</center>
</borderlayout>
<zscript>
void onClientInfo(ClientInfoEvent evt) {
<![CDATA[desktop.setAttribute("desktopWidth",evt.desktopWidth);]]>
<![CDATA[desktop.setAttribute("desktopHeight",evt.desktopHeight);]]>
}
</zscript>
</window>
</zk>
@@ -1,5 +1,6 @@
<div vflex="true"
apply="at.windesign.application.seriesListController"
<div id="centerSeries"
vflex="true"
apply="at.windesign.application.serie.serieListForwardComposer, at.windesign.application.serie.serieListSelectorComposer"
>
<listbox id="seriesList"
multiple="true"
+10
View File
@@ -0,0 +1,10 @@
<window id="resultWin"
title=""
border="normal"
apply="at.windesign.application.serie.serieDetailsForwardComposer, at.windesign.application.serie.serieDetailsSelectorComposer">
<hbox width="100%" pack="center">
<button id="saveButton" label="Save"/>
<button id="cancelButton" label="Cancel"/>
<button id="deleteButton" label="Delete"/>
</hbox>
</window>
Binary file not shown.
+1 -1
View File
@@ -1,5 +1,5 @@
#Generated by Maven
#Wed Oct 28 15:56:30 CET 2020
#Mon Nov 02 11:43:04 CET 2020
groupId=at.windesign.application
artifactId=multimedia
version=1.0-SNAPSHOT
@@ -1,2 +1,2 @@
at\windesign\application\seriesRenderer.class
at\windesign\application\seriesListController.class
at\windesign\application\serie\serieDetailsForwardComposer.class
at\windesign\application\main\indexForwardComposer.class
@@ -1,5 +1,10 @@
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\seriesListener.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\seriesListController.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\SeriesDataSource.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\Serie.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\seriesRenderer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDataSource.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\main\mainSelectorComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\main\mainForwardComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDetailsSelectorComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serie.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieListSelectorComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieListForwardComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\main\OXMainLayoutVM.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieDetailsForwardComposer.java
C:\Users\birkeh\ownCloud\dev\IntelliJ\zk\multimedia\src\main\java\at\windesign\application\serie\serieRenderer.java
Binary file not shown.
+6 -6
View File
@@ -1,15 +1,15 @@
<zk>
<borderlayout hflex="1" vflex="1">
<north height="100px" border="none">
<borderlayout hflex="1"
vflex="1">
<north height="100px"
border="none">
<label style="font-size:50px">North for header</label>
</north>
<center id="win"
autoscroll="true"
border="none"
apply="org.zkoss.bind.BindComposer"
viewModel="@id('vm')@init('at.windesign.application.EventViewModel')"
validationMessages="@id('vmsgs')">
<include src="/center.zul"/>
vflex="true">
<include src="/serie/centerSerie.zul"/>
</center>
</borderlayout>
</zk>