Scrolling works, had boundaries, only draws an object when image is drawn, woo
This commit is contained in:
+12
-2
@@ -81,6 +81,17 @@ public class Panel extends JPanel {
|
||||
|
||||
}
|
||||
|
||||
public int getPanelInfoLength()
|
||||
{
|
||||
int panelInfoLength = 0;
|
||||
for(BufferedImage image : panelInfo)
|
||||
{
|
||||
panelInfoLength += image.getWidth();
|
||||
}
|
||||
|
||||
return panelInfoLength;
|
||||
}
|
||||
|
||||
public DrawObject createNewDrawObject(int index)
|
||||
{
|
||||
switch(index)
|
||||
@@ -112,12 +123,11 @@ public class Panel extends JPanel {
|
||||
// g2.drawImage(podiumImage, 0, 0, null);
|
||||
for(BufferedImage image : panelInfo)
|
||||
{
|
||||
g2.drawImage(image, panelInfox - scrollfactor, panelInfoy, null);
|
||||
g2.drawImage(image, panelInfox + scrollfactor, panelInfoy, null);
|
||||
panelInfox += image.getWidth();
|
||||
}
|
||||
panelInfox = 0;
|
||||
|
||||
|
||||
g2.setClip(new Rectangle2D.Double(0,150, getWidth(), getHeight()));
|
||||
AffineTransform oldTransform = g2.getTransform();
|
||||
g2.setTransform(getCamera());
|
||||
|
||||
@@ -34,7 +34,7 @@ public class Mouse extends MouseAdapter {
|
||||
int last = 0;
|
||||
for(BufferedImage image : panel.getPanelInfo())
|
||||
{
|
||||
if(e.getX() < last + image.getWidth() - panel.getScrollfactor())
|
||||
if(e.getX() >= panel.getScrollfactor() && e.getX() < last + image.getWidth() + panel.getScrollfactor())
|
||||
{
|
||||
DrawObject tempDrawObj = panel.createNewDrawObject(i);
|
||||
tempDrawObj.setPosition(clickPoint);
|
||||
|
||||
@@ -9,7 +9,7 @@ import Applicatie.Panel;
|
||||
|
||||
public class MouseWheel implements MouseWheelListener {
|
||||
private Panel panel;
|
||||
private int scrollfactor, min, max;
|
||||
private int scrollfactor;
|
||||
|
||||
public MouseWheel(Panel panel)
|
||||
{
|
||||
@@ -35,11 +35,19 @@ public class MouseWheel implements MouseWheelListener {
|
||||
|
||||
if(e.getPreciseWheelRotation() < 0)
|
||||
{
|
||||
panel.setScrollfactor(panel.getScrollfactor() - scrollfactor);
|
||||
if(panel.getScrollfactor() + scrollfactor + panel.getPanelInfoLength() < panel.getWidth())
|
||||
{
|
||||
panel.setScrollfactor(panel.getScrollfactor() + scrollfactor);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
panel.setScrollfactor(panel.getScrollfactor() + scrollfactor);
|
||||
if(panel.getScrollfactor() - scrollfactor >= 0)
|
||||
{
|
||||
panel.setScrollfactor(panel.getScrollfactor() - scrollfactor);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user