From 9251d09aa7cfcf800f0732a4cf802cd7f22ff851 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Mon, 14 Aug 2017 21:17:19 -0500 Subject: [PATCH] Added Dragging Capabilities for Modules. Cleaned up Button class for Touhou Mother Module. Removed constant dinging sound when oAuth token does not authenticate properly. --- .classpath | 2 +- .gitignore | 3 +- projectBuilder.xml | 2 +- sigIRCv2.jar | Bin 325239 -> 328175 bytes src/sig/BackgroundColorButton.java | 6 +- src/sig/CustomSound.java | 1 + src/sig/Emoticon.java | 2 + src/sig/Module.java | 94 +++++++++++++++++- src/sig/MyPanel.java | 11 +- src/sig/ScrollingText.java | 13 ++- src/sig/UpdateEvent.java | 7 +- .../{Button2.java => KillButton.java} | 27 ++--- .../{Button3.java => SwapButton.java} | 25 ++--- src/sig/modules/TouhouMother/TimeRecord.java | 2 +- .../TouhouMother/TouhouMotherButton.java | 66 ++++++++++++ .../{Button.java => UpdateButton.java} | 25 ++--- src/sig/modules/TouhouMotherModule.java | 36 ++++--- src/sig/modules/utils/SemiValidInteger.java | 2 +- src/sig/modules/utils/SemiValidString.java | 2 +- src/sig/sigIRC.java | 10 +- src/sig/{ => utils}/DrawUtils.java | 4 +- src/sig/{ => utils}/FileUtils.java | 2 +- src/sig/{ => utils}/SoundUtils.java | 2 +- src/sig/{ => utils}/TextUtils.java | 4 +- 24 files changed, 257 insertions(+), 91 deletions(-) rename src/sig/modules/TouhouMother/{Button2.java => KillButton.java} (51%) rename src/sig/modules/TouhouMother/{Button3.java => SwapButton.java} (88%) create mode 100644 src/sig/modules/TouhouMother/TouhouMotherButton.java rename src/sig/modules/TouhouMother/{Button.java => UpdateButton.java} (84%) rename src/sig/{ => utils}/DrawUtils.java (95%) rename src/sig/{ => utils}/FileUtils.java (95%) rename src/sig/{ => utils}/SoundUtils.java (94%) rename src/sig/{ => utils}/TextUtils.java (94%) diff --git a/.classpath b/.classpath index fd654da..fcd4204 100644 --- a/.classpath +++ b/.classpath @@ -2,7 +2,7 @@ - + diff --git a/.gitignore b/.gitignore index 983c3ec..997ceee 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ /sigIRCv2.conf /swap.png /update.png -/WSplits \ No newline at end of file +/WSplits +/drag_bar.png diff --git a/projectBuilder.xml b/projectBuilder.xml index 48c0b4c..362bfe3 100644 --- a/projectBuilder.xml +++ b/projectBuilder.xml @@ -13,7 +13,7 @@ - + diff --git a/sigIRCv2.jar b/sigIRCv2.jar index f8efd3151c3ccd733ba2238d4a7ccee2361936e0..54544cf595472ce941544a334770d2b304cbbfc5 100644 GIT binary patch delta 57221 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 Ar~m)} delta 54513 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.getX() && x<=bounds.getX()+bounds.getWidth() && + y>=(int)bounds.getY()-Module.IMG_DRAGBAR.getHeight() && + y<=(int)bounds.getY(); + } + public void mousePressed(MouseEvent ev) { } + + public void mouseReleased(MouseEvent ev) { + if (dragging) { + dragging=false; + } + } + + protected void moduleRun() { + dragWindow(); + run(); + } + + private void dragWindow() { + if (dragging) { + sigIRC.panel.repaint(getDrawBounds().getBounds()); + int mouseX = sigIRC.panel.lastMouseX+(int)dragOffset.getX(); + int mouseY = sigIRC.panel.lastMouseY+(int)dragOffset.getY(); + int oldX = (int)bounds.getX(); + int oldY = (int)bounds.getY(); + bounds = new Rectangle(mouseX, mouseY,(int)bounds.getWidth(),(int)bounds.getHeight()); + //System.out.println(sigIRC.panel.lastMouseX+","+sigIRC.panel.lastMouseY); + ModuleDragEvent(oldX,oldY,mouseX,mouseY); + } + if (inDragBounds(sigIRC.panel.lastMouseX,sigIRC.panel.lastMouseY)) { + sigIRC.panel.setCursor(new Cursor(Cursor.MOVE_CURSOR)); + } else + if (sigIRC.panel.getCursor().getType()==Cursor.MOVE_CURSOR) { + sigIRC.panel.setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); + } + } public void run() { } public void draw(Graphics g) { + drawModuleHeader(g); SwingUtilities.invokeLater(new Runnable() { public void run() { - sigIRC.panel.repaint(bounds.getBounds()); + sigIRC.panel.repaint(getDrawBounds().getBounds()); } }); } + private void drawModuleHeader(Graphics g) { + g.drawImage(Module.IMG_DRAGBAR, + (int)bounds.getX()+2, + (int)bounds.getY()-Module.IMG_DRAGBAR.getHeight(), + (int)bounds.getWidth()-4, + Module.IMG_DRAGBAR.getHeight(), + sigIRC.panel); + DrawUtils.drawTextFont(g, sigIRC.panel.smallFont, (int)bounds.getX(), (int)bounds.getY()-titleHeight/2+4, Color.BLACK, this.name); + } + + private Rectangle2D getDrawBounds() { + Rectangle2D drawBounds = new Rectangle((int)bounds.getX(),(int)bounds.getY()-titleHeight+3,(int)bounds.getWidth(),(int)bounds.getHeight()+titleHeight); + return drawBounds; + } + + public void ModuleDragEvent(int oldX, int oldY, int newX, int newY) { + + } + public void mouseWheel(MouseWheelEvent ev) { } diff --git a/src/sig/MyPanel.java b/src/sig/MyPanel.java index ecf345a..7e49495 100644 --- a/src/sig/MyPanel.java +++ b/src/sig/MyPanel.java @@ -95,7 +95,11 @@ public class MyPanel extends JPanel implements MouseListener, ActionListener, Mo } public void addMessage(String message) { - ScrollingText text = new ScrollingText(message,this.getWidth(),(int)(Math.random()*128)); + addMessage(message,true); + } + + public void addMessage(String message, boolean playSound) { + ScrollingText text = new ScrollingText(message,this.getWidth(),(int)(Math.random()*128),playSound); TextRow row = TextRow.PickRandomTextRow(text.getUsername()); sigIRC.textobj.add(text); row.updateRow(text); @@ -108,13 +112,16 @@ public class MyPanel extends JPanel implements MouseListener, ActionListener, Mo @Override public void mousePressed(MouseEvent ev) { for (Module m : sigIRC.modules) { - m.mousePressed(ev); + m.mouseModuleMousePress(ev); } sigIRC.button.onClickEvent(ev); } @Override public void mouseReleased(MouseEvent ev) { + for (Module m : sigIRC.modules) { + m.mouseReleased(ev); + } } @Override diff --git a/src/sig/ScrollingText.java b/src/sig/ScrollingText.java index ee9a0bd..2925ec6 100644 --- a/src/sig/ScrollingText.java +++ b/src/sig/ScrollingText.java @@ -20,6 +20,11 @@ import javax.sound.sampled.LineUnavailableException; import javax.sound.sampled.UnsupportedAudioFileException; import javax.swing.SwingUtilities; +import sig.utils.DrawUtils; +import sig.utils.FileUtils; +import sig.utils.SoundUtils; +import sig.utils.TextUtils; + public class ScrollingText { private String username; private String message; @@ -86,8 +91,14 @@ public class ScrollingText { this.stringWidth = (int)TextUtils.calculateStringBoundsFont(this.message,MyPanel.programFont).getWidth(); this.stringHeight = (int)TextUtils.calculateStringBoundsFont(this.message,MyPanel.programFont).getHeight(); this.userstringWidth = (int)TextUtils.calculateStringBoundsFont(this.username,MyPanel.userFont).getWidth(); + } + + public ScrollingText(String msg, double x, double y, boolean playSound) { + this(msg,x,y); - playMessageSound(username); + if (playSound) { + playMessageSound(username); + } } private void playMessageSound(String user) { diff --git a/src/sig/UpdateEvent.java b/src/sig/UpdateEvent.java index 201227e..3eec234 100644 --- a/src/sig/UpdateEvent.java +++ b/src/sig/UpdateEvent.java @@ -24,7 +24,10 @@ public class UpdateEvent implements ActionListener{ } else if (!sigIRC.authenticated && last_authentication_msg>=MSGTIMER) { last_authentication_msg=0; - sigIRC.panel.addMessage("SYSTEM: Your oauthToken was not successful. Please go to the sigIRC folder and make sure your oauthToken.txt file is correct!!! SwiftRage"); + sigIRC.panel.addMessage("SYSTEM: Your oauthToken was not successful. Please go to the sigIRC folder and make sure your oauthToken.txt file is correct!!! SwiftRage",!sigIRC.playedoAuthSoundOnce); + if (!sigIRC.playedoAuthSoundOnce) { + sigIRC.playedoAuthSoundOnce=true; + } } if (last_autosave0) { DrawUtils.drawOutlineText(g, MyPanel.smallFont, x+buttonimg.getWidth()+4, y+buttonimg.getHeight(), 2, Color.WHITE, new Color(60,0,150), message); } diff --git a/src/sig/modules/TouhouMother/TimeRecord.java b/src/sig/modules/TouhouMother/TimeRecord.java index 15a90dd..529f08a 100644 --- a/src/sig/modules/TouhouMother/TimeRecord.java +++ b/src/sig/modules/TouhouMother/TimeRecord.java @@ -1,8 +1,8 @@ package sig.modules.TouhouMother; -import sig.FileUtils; import sig.sigIRC; import sig.modules.TouhouMotherModule; +import sig.utils.FileUtils; public class TimeRecord { final public static int ERROR_VALUE = Integer.MAX_VALUE; diff --git a/src/sig/modules/TouhouMother/TouhouMotherButton.java b/src/sig/modules/TouhouMother/TouhouMotherButton.java new file mode 100644 index 0000000..914b0ec --- /dev/null +++ b/src/sig/modules/TouhouMother/TouhouMotherButton.java @@ -0,0 +1,66 @@ +package sig.modules.TouhouMother; + +import java.awt.Graphics; +import java.awt.event.KeyEvent; +import java.awt.event.MouseEvent; +import java.awt.event.MouseWheelEvent; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +import javax.imageio.ImageIO; + +import sig.sigIRC; +import sig.modules.TouhouMotherModule; + +public class TouhouMotherButton { + protected BufferedImage buttonimg; + protected int x=0; + protected int y=0; + protected TouhouMotherModule module; + + public TouhouMotherButton(TouhouMotherModule parentmodule, File filename, int x, int y) { + this.x=x; + this.y=y; + this.module=parentmodule; + try { + buttonimg = ImageIO.read(filename); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public void run() { + + } + + public void draw(Graphics g) { + g.drawImage(buttonimg, x, y, sigIRC.panel); + } + + public void onClickEvent(MouseEvent ev) { + + } + + public void keyPressEvent(KeyEvent ev) { + + } + + public void keyReleaseEvent(KeyEvent ev) { + + } + + public void onMouseWheelEvent(MouseWheelEvent ev) { + + } + + public void updatePosition(int oldX, int oldY, int newX, int newY) { + int diffx = x - oldX; + int diffy = y - oldY; + x = newX + diffx; + y = newY + diffy; + /*System.out.println("Old: "+oldX+","+oldY); + System.out.println("New: "+newX+","+newY); + System.out.println("Diffs: "+diffx+","+diffy);*/ + } +} diff --git a/src/sig/modules/TouhouMother/Button.java b/src/sig/modules/TouhouMother/UpdateButton.java similarity index 84% rename from src/sig/modules/TouhouMother/Button.java rename to src/sig/modules/TouhouMother/UpdateButton.java index 160ef69..509b3e2 100644 --- a/src/sig/modules/TouhouMother/Button.java +++ b/src/sig/modules/TouhouMother/UpdateButton.java @@ -11,41 +11,30 @@ import java.util.Arrays; import javax.imageio.ImageIO; -import sig.DrawUtils; -import sig.FileUtils; -import sig.TextUtils; import sig.sigIRC; import sig.modules.TouhouMotherModule; +import sig.utils.DrawUtils; +import sig.utils.FileUtils; +import sig.utils.TextUtils; -public class Button { - BufferedImage buttonimg; - int x=0; - int y=0; +public class UpdateButton extends TouhouMotherButton{ String[] data; int currentselection=4; - TouhouMotherModule module; boolean buttonEnabled = false; - public Button(TouhouMotherModule parentmodule, File filename, int x, int y) { - this.x=x; - this.y=y; + public UpdateButton(TouhouMotherModule parentmodule, File filename, int x, int y) { + super(parentmodule,filename,x,y); data = FileUtils.readFromFile(sigIRC.BASEDIR+"WSplits"); if (data.length>4) { buttonEnabled=true; } - this.module=parentmodule; - try { - buttonimg = ImageIO.read(filename); - } catch (IOException e) { - e.printStackTrace(); - } } public void draw(Graphics g) { if (buttonEnabled) { DrawUtils.drawOutlineText(g, sigIRC.panel.smallFont, x-TextUtils.calculateStringBoundsFont(data[currentselection].split(",")[0], sigIRC.panel.smallFont).getWidth(), (int)module.getBounds().getY()+(int)module.getBounds().getHeight()-8, 1, Color.WHITE, new Color(30,0,86,255), data[currentselection].split(",")[0]); - g.drawImage(buttonimg, x, y, sigIRC.panel); + super.draw(g); } } diff --git a/src/sig/modules/TouhouMotherModule.java b/src/sig/modules/TouhouMotherModule.java index 47f04e1..483479c 100644 --- a/src/sig/modules/TouhouMotherModule.java +++ b/src/sig/modules/TouhouMotherModule.java @@ -19,22 +19,23 @@ import java.util.List; import javax.imageio.ImageIO; import javax.swing.Timer; -import sig.DrawUtils; -import sig.FileUtils; import sig.Module; -import sig.TextUtils; import sig.sigIRC; -import sig.modules.TouhouMother.Button; -import sig.modules.TouhouMother.Button2; -import sig.modules.TouhouMother.Button3; import sig.modules.TouhouMother.DataProperty; import sig.modules.TouhouMother.IncreaseTouhouMotherClockCount; +import sig.modules.TouhouMother.KillButton; +import sig.modules.TouhouMother.SwapButton; import sig.modules.TouhouMother.TimeRecord; import sig.modules.TouhouMother.TouhouMotherBossData; +import sig.modules.TouhouMother.TouhouMotherButton; import sig.modules.TouhouMother.TouhouMotherCharacterData; import sig.modules.TouhouMother.TouhouPlayerCharacter; +import sig.modules.TouhouMother.UpdateButton; import sig.modules.utils.SemiValidInteger; import sig.modules.utils.SemiValidString; +import sig.utils.DrawUtils; +import sig.utils.FileUtils; +import sig.utils.TextUtils; public class TouhouMotherModule extends Module implements ActionListener{ Timer filereadClock = new Timer(200,this); @@ -66,9 +67,11 @@ public class TouhouMotherModule extends Module implements ActionListener{ boolean diamondSparkyMsg = false; - Button updateButton; - Button2 killButton; - Button3 swapButton; + List moduleButtons = new ArrayList(); + + UpdateButton updateButton; + KillButton killButton; + SwapButton swapButton; public TouhouMotherModule(Rectangle2D bounds, String moduleName) { super(bounds, moduleName); @@ -109,6 +112,12 @@ public class TouhouMotherModule extends Module implements ActionListener{ EnableAndDisableTimer(); } + public void ModuleDragEvent(int oldX, int oldY, int newX, int newY) { + for (TouhouMotherButton tmb : moduleButtons) { + tmb.updatePosition(oldX,oldY,newX,newY); + } + } + public void draw(Graphics g) { if (enabled) { super.draw(g); @@ -487,15 +496,18 @@ public class TouhouMotherModule extends Module implements ActionListener{ } private void DefineButton() { - updateButton = new Button(this, //56x20 pixels + updateButton = new UpdateButton(this, //56x20 pixels new File(sigIRC.BASEDIR+"update.png"), (int)bounds.getX()+320-56,(int)bounds.getY()+sigIRC.panel.getHeight()/2-20); - killButton = new Button2(this, + killButton = new KillButton(this, new File(sigIRC.BASEDIR+"kill.png"), (int)bounds.getX(),(int)bounds.getY()+sigIRC.panel.getHeight()/2-20); - swapButton = new Button3(this, + swapButton = new SwapButton(this, new File(sigIRC.BASEDIR+"swap.png"), (int)bounds.getX(),(int)bounds.getY()+sigIRC.panel.getHeight()/2-40); + moduleButtons.add(updateButton); + moduleButtons.add(killButton); + moduleButtons.add(swapButton); } public Rectangle2D getBounds() { diff --git a/src/sig/modules/utils/SemiValidInteger.java b/src/sig/modules/utils/SemiValidInteger.java index fe82b91..6445c40 100644 --- a/src/sig/modules/utils/SemiValidInteger.java +++ b/src/sig/modules/utils/SemiValidInteger.java @@ -2,7 +2,7 @@ package sig.modules.utils; import java.util.Arrays; -import sig.TextUtils; +import sig.utils.TextUtils; public class SemiValidInteger { final public static int ERROR_VALUE = Integer.MIN_VALUE; diff --git a/src/sig/modules/utils/SemiValidString.java b/src/sig/modules/utils/SemiValidString.java index ba2977d..09ac4f8 100644 --- a/src/sig/modules/utils/SemiValidString.java +++ b/src/sig/modules/utils/SemiValidString.java @@ -2,7 +2,7 @@ package sig.modules.utils; import java.util.Arrays; -import sig.TextUtils; +import sig.utils.TextUtils; public class SemiValidString { final public static String ERROR_VALUE = "nil"; diff --git a/src/sig/sigIRC.java b/src/sig/sigIRC.java index 23055c6..f74c95e 100644 --- a/src/sig/sigIRC.java +++ b/src/sig/sigIRC.java @@ -7,6 +7,7 @@ import org.json.JSONException; import org.json.JSONObject; import sig.modules.TouhouMotherModule; +import sig.utils.FileUtils; import java.awt.Color; import java.awt.Dimension; @@ -70,11 +71,12 @@ public class sigIRC{ static int chatScrollSpd=4; static int rowSpacing=64; static String messageFont="Gill Sans Ultra Bold Condensed"; - static String usernameFont="Gill Sans"; + static String usernameFont="GillSansMTStd-Book"; static String touhoumotherConsoleFont="Agency FB Bold"; static boolean touhoumothermodule_enabled=true; static boolean downloadsComplete=false; static boolean hardwareAcceleration=true; + static boolean playedoAuthSoundOnce=false; public static void main(String[] args) { @@ -148,10 +150,16 @@ public class sigIRC{ manager = new FileManager("swap.png"); manager.verifyAndFetchFileFromServer(); manager = new FileManager("update.png"); manager.verifyAndFetchFileFromServer(); manager = new FileManager("backcolor.png"); manager.verifyAndFetchFileFromServer(); + manager = new FileManager("drag_bar.png"); manager.verifyAndFetchFileFromServer(); manager = new FileManager("WSplits"); manager.verifyAndFetchFileFromServer(); } private static void InitializeModules() { + try { + Module.IMG_DRAGBAR = ImageIO.read(new File(sigIRC.BASEDIR+"drag_bar.png")); + } catch (IOException e) { + e.printStackTrace(); + } if (touhoumothermodule_enabled) { modules.add(new TouhouMotherModule( new Rectangle(0,panel.getHeight()/2,320,panel.getHeight()/2), diff --git a/src/sig/DrawUtils.java b/src/sig/utils/DrawUtils.java similarity index 95% rename from src/sig/DrawUtils.java rename to src/sig/utils/DrawUtils.java index 2720a35..a54f700 100644 --- a/src/sig/DrawUtils.java +++ b/src/sig/utils/DrawUtils.java @@ -1,4 +1,4 @@ -package sig; +package sig.utils; import java.awt.BasicStroke; import java.awt.Color; import java.awt.Font; @@ -13,6 +13,8 @@ import java.awt.font.TextAttribute; import java.awt.geom.Rectangle2D; import java.text.AttributedString; +import sig.MyPanel; + public class DrawUtils { public static void drawOutlineText(Graphics g, Font font, double x, double y, int outline_size, Color text_color, Color shadow_color, String message) { AttributedString as = new AttributedString(message); diff --git a/src/sig/FileUtils.java b/src/sig/utils/FileUtils.java similarity index 95% rename from src/sig/FileUtils.java rename to src/sig/utils/FileUtils.java index 230c6c2..ae64ef8 100644 --- a/src/sig/FileUtils.java +++ b/src/sig/utils/FileUtils.java @@ -1,4 +1,4 @@ -package sig; +package sig.utils; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; diff --git a/src/sig/SoundUtils.java b/src/sig/utils/SoundUtils.java similarity index 94% rename from src/sig/SoundUtils.java rename to src/sig/utils/SoundUtils.java index feaa154..b1ec024 100644 --- a/src/sig/SoundUtils.java +++ b/src/sig/utils/SoundUtils.java @@ -1,4 +1,4 @@ -package sig; +package sig.utils; import java.io.File; import java.io.IOException; diff --git a/src/sig/TextUtils.java b/src/sig/utils/TextUtils.java similarity index 94% rename from src/sig/TextUtils.java rename to src/sig/utils/TextUtils.java index cedc461..12b4bff 100644 --- a/src/sig/TextUtils.java +++ b/src/sig/utils/TextUtils.java @@ -1,8 +1,10 @@ -package sig; +package sig.utils; import java.awt.Font; import java.awt.font.FontRenderContext; import java.awt.geom.Rectangle2D; +import sig.sigIRC; + public class TextUtils { public static Rectangle2D calculateStringBoundsFont(String msg, Font font) {