mirror of
https://github.com/2006-Scape/Parabot.git
synced 2026-07-07 16:49:10 +00:00
Added screenshot feature
This commit is contained in:
@@ -40,6 +40,7 @@ public class Directories {
|
|||||||
cached.put("Settings", new File(cached.get("Root"), "/Parabot/settings/"));
|
cached.put("Settings", new File(cached.get("Root"), "/Parabot/settings/"));
|
||||||
cached.put("Servers", new File(cached.get("Root"), "/Parabot/servers/"));
|
cached.put("Servers", new File(cached.get("Root"), "/Parabot/servers/"));
|
||||||
cached.put("Cache", new File(cached.get("Root"), "/Parabot/cache/"));
|
cached.put("Cache", new File(cached.get("Root"), "/Parabot/cache/"));
|
||||||
|
cached.put("Screenshots", new File(cached.get("Root"), "/Parabot/screenshots/"));
|
||||||
Core.verbose("Directories cached.");
|
Core.verbose("Directories cached.");
|
||||||
|
|
||||||
clearCache(259200);
|
clearCache(259200);
|
||||||
@@ -192,6 +193,16 @@ public class Directories {
|
|||||||
return cached.get("Home");
|
return cached.get("Home");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the screenshot folder.
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static File getScreenshotDir() {
|
||||||
|
return cached.get("Screenshots");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validates all directories and makes them if necessary
|
* Validates all directories and makes them if necessary
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -7,13 +7,17 @@ import org.parabot.core.ui.components.VerboseLoader;
|
|||||||
import org.parabot.core.ui.images.Images;
|
import org.parabot.core.ui.images.Images;
|
||||||
import org.parabot.core.ui.utils.SwingUtil;
|
import org.parabot.core.ui.utils.SwingUtil;
|
||||||
import org.parabot.environment.OperatingSystem;
|
import org.parabot.environment.OperatingSystem;
|
||||||
|
import org.parabot.environment.api.utils.StringUtils;
|
||||||
import org.parabot.environment.scripts.Script;
|
import org.parabot.environment.scripts.Script;
|
||||||
import org.parabot.environment.scripts.randoms.Random;
|
import org.parabot.environment.scripts.randoms.Random;
|
||||||
|
|
||||||
|
import javax.imageio.ImageIO;
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.event.*;
|
import java.awt.event.*;
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,7 +71,6 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void createMenu() {
|
private void createMenu() {
|
||||||
JMenuBar menuBar = new JMenuBar();
|
JMenuBar menuBar = new JMenuBar();
|
||||||
|
|
||||||
@@ -143,7 +146,16 @@ public class BotUI extends JFrame implements ActionListener, ComponentListener,
|
|||||||
|
|
||||||
switch (command) {
|
switch (command) {
|
||||||
case "Create screenshot":
|
case "Create screenshot":
|
||||||
JOptionPane.showMessageDialog(this, "We are still working on this...");
|
try {
|
||||||
|
Robot robot = new Robot();
|
||||||
|
Rectangle parabotScreen = new Rectangle((int) getLocation().getX(), (int) getLocation().getY(), getWidth(), getHeight());
|
||||||
|
BufferedImage image = robot.createScreenCapture(parabotScreen);
|
||||||
|
ImageIO.write(image, "png", new File(Directories.getScreenshotDir().getPath() + "/" + StringUtils.randomString(10) + ".png"));
|
||||||
|
} catch (IOException k) {
|
||||||
|
k.printStackTrace();
|
||||||
|
} catch (AWTException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "Exit":
|
case "Exit":
|
||||||
System.exit(0);
|
System.exit(0);
|
||||||
|
|||||||
Reference in New Issue
Block a user