Advertisement
deww1

FuserSkeletonGUI.java

Jul 22nd, 2011
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 18.94 KB | None | 0 0
  1. /*
  2.  * FuserSkeletonGUI.java
  3.  *
  4.  * Created on Jul 22, 2011, 7:10:58 PM
  5.  */
  6.  
  7. /**
  8.  *
  9.  * @author Dew
  10.  */
  11.  
  12. /**
  13.  * Editting the GUI:
  14.  *
  15.  * Only edit what comes after //EDIT and before //ENDEDIT
  16.  * Those two tags indicate what will be edited/can be edited to stay within
  17.  * the official GUI Regulations
  18.  */
  19. public class FuserSkeletonGUI extends javax.swing.JFrame {
  20.    
  21.     final String AVATAR = "http://i.imgur.com/sl7UG.png"; //link to your avatar (ONLY 65x65px)
  22.    
  23.     final String SCRIPT_NAME = "SCRIPT NAME HERE";  //the scripts name
  24.     final String SCRIPT_VERSION = "1.0";            //the script's version
  25.     final String SCRIPTER = "YOURNAMEHERE";         //the script writer's name
  26.    
  27.     final String CHANGE_LOG = //use \n for line breaks
  28.             "V 1.0:\n"
  29.             + "Initial Release\n\n"
  30.            
  31.             + "V 1.1:\n"
  32.             + "Updated GUI\n\n"
  33.            
  34.             + "V 2.0:\n"
  35.             + "Complete Revision\n"
  36.             + "New GUI";
  37.    
  38.     final String CREDITS = //use \n for line breaks
  39.             "Script Credits:\n"
  40.             + "Main Script Writer: SCRIPTER\n\n"
  41.            
  42.             + "Script Helpers:\n"
  43.             + "Johnny: Gave me inspiration\n"
  44.             + "Ubuntu4Life: Helped me with my coding :)";
  45.  
  46.     public FuserSkeletonGUI() {
  47.         initComponents();
  48.     }
  49.     @SuppressWarnings("unchecked")
  50.     // <editor-fold defaultstate="collapsed" desc="Generated Code">
  51.     private void initComponents() {
  52.  
  53.         headerImg = new javax.swing.JLabel();
  54.         jLabel2 = new javax.swing.JLabel();
  55.         tabbed_MainPanel = new javax.swing.JTabbedPane();
  56.         tabbed_FuserScripts = new javax.swing.JPanel();
  57.         jScrollPane1 = new javax.swing.JScrollPane();
  58.         jTextArea1 = new javax.swing.JTextArea();
  59.         jLabel4 = new javax.swing.JLabel();
  60.         tabbed_Settings = new javax.swing.JPanel();
  61.         tabbed_credits = new javax.swing.JPanel();
  62.         jScrollPane2 = new javax.swing.JScrollPane();
  63.         creds_agreement = new javax.swing.JTextArea();
  64.         jLabel5 = new javax.swing.JLabel();
  65.         jScrollPane3 = new javax.swing.JScrollPane();
  66.         creds_credits = new javax.swing.JTextArea();
  67.         version = new javax.swing.JPanel();
  68.         log_version = new javax.swing.JLabel();
  69.         jScrollPane4 = new javax.swing.JScrollPane();
  70.         ChangeLog = new javax.swing.JTextArea();
  71.         startbutton = new javax.swing.JButton();
  72.         scriptthread = new javax.swing.JButton();
  73.         scripterprofile = new javax.swing.JButton();
  74.         fuserscripts = new javax.swing.JButton();
  75.         jLabel3 = new javax.swing.JLabel();
  76.         jLabel1 = new javax.swing.JLabel();
  77.  
  78.         setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
  79.         setTitle("Demo FuserGUI");
  80.         setAlwaysOnTop(true);
  81.         setName("Demo FuserGUI"); // NOI18N
  82.         setResizable(false);
  83.  
  84.         headerImg.setIcon(new javax.swing.JLabel() {
  85.             public javax.swing.Icon getIcon() {
  86.                 try {
  87.                     return new javax.swing.ImageIcon(
  88.                         new java.net.URL("http://i.imgur.com/hrpyE.png")
  89.                     );
  90.                 } catch (java.net.MalformedURLException e) {
  91.                 }
  92.                 return null;
  93.             }
  94.         }.getIcon());
  95.         headerImg.setVerticalAlignment(javax.swing.SwingConstants.TOP);
  96.  
  97.         jLabel2.setFont(new java.awt.Font("Calibri", 2, 12)); // NOI18N
  98.         jLabel2.setText("The Scripting Revolution has commenced!");
  99.  
  100.         tabbed_MainPanel.setTabPlacement(javax.swing.JTabbedPane.BOTTOM);
  101.         tabbed_MainPanel.setAutoscrolls(true);
  102.         tabbed_MainPanel.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
  103.         tabbed_MainPanel.setDebugGraphicsOptions(javax.swing.DebugGraphics.NONE_OPTION);
  104.         tabbed_MainPanel.setFont(new java.awt.Font("Calibri", 0, 11)); // NOI18N
  105.  
  106.         jTextArea1.setColumns(20);
  107.         jTextArea1.setEditable(false);
  108.         jTextArea1.setLineWrap(true);
  109.         jTextArea1.setRows(5);
  110.         jTextArea1.setText("We started the Fuser scripts line because we missed something over at PowerBot. We missed a certain amount of minimum quality and overview on scripts. It is hard for normal users to find good scripts. We understand users just want a script to \"just work\". No Nullpointer errors, 100 error lines when compiling, scripts getting stuck within an hour and poorly updated scripts, to name a few common irritations.\n\nWe also missed some crucial interaction between script writers and script users. Because PowerBot is such an enormous success, it tends to become in-personal. Because of the massive ammounts of people making use of RSBot, many so called \"leechers\" emerged. People who copied a script, compiled it and we script writers never heard from anymore. To tell you a secret, the only reason we script writers write scripts is because we like to receive feedback. We hope that because this site has an unique script-writing model and because we are small, we will receive feedback more closely.");
  111.         jTextArea1.setWrapStyleWord(true);
  112.         jScrollPane1.setViewportView(jTextArea1);
  113.  
  114.         jLabel4.setFont(new java.awt.Font("Calibri", 1, 14)); // NOI18N
  115.         jLabel4.setText("Here is our story..");
  116.  
  117.         javax.swing.GroupLayout tabbed_FuserScriptsLayout = new javax.swing.GroupLayout(tabbed_FuserScripts);
  118.         tabbed_FuserScripts.setLayout(tabbed_FuserScriptsLayout);
  119.         tabbed_FuserScriptsLayout.setHorizontalGroup(
  120.             tabbed_FuserScriptsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  121.             .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE)
  122.             .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE)
  123.         );
  124.         tabbed_FuserScriptsLayout.setVerticalGroup(
  125.             tabbed_FuserScriptsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  126.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, tabbed_FuserScriptsLayout.createSequentialGroup()
  127.                 .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, 31, Short.MAX_VALUE)
  128.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  129.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 222, javax.swing.GroupLayout.PREFERRED_SIZE))
  130.         );
  131.  
  132.         tabbed_MainPanel.addTab("FuserScripts", tabbed_FuserScripts);
  133.  
  134.         javax.swing.GroupLayout tabbed_SettingsLayout = new javax.swing.GroupLayout(tabbed_Settings);
  135.         tabbed_Settings.setLayout(tabbed_SettingsLayout);
  136.         tabbed_SettingsLayout.setHorizontalGroup(
  137.             tabbed_SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  138.             .addGap(0, 580, Short.MAX_VALUE)
  139.         );
  140.         tabbed_SettingsLayout.setVerticalGroup(
  141.             tabbed_SettingsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  142.             .addGap(0, 259, Short.MAX_VALUE)
  143.         );
  144.  
  145.         tabbed_MainPanel.addTab("Settings", tabbed_Settings);
  146.  
  147.         creds_agreement.setColumns(20);
  148.         creds_agreement.setEditable(false);
  149.         creds_agreement.setLineWrap(true);
  150.         creds_agreement.setRows(5);
  151.         creds_agreement.setText("I, "+SCRIPTER+", hereby take full responsibility of this script. By having this script officially approved, I hereby must update this script, when see fit. If I shall choose not to, I acknowledge my Script Team rank will stripped from my possession, and my script be removed.");
  152.         creds_agreement.setWrapStyleWord(true);
  153.         jScrollPane2.setViewportView(creds_agreement);
  154.  
  155.         jLabel5.setText("This script was Written by: "+SCRIPTER);
  156.  
  157.         creds_credits.setColumns(20);
  158.         creds_credits.setEditable(false);
  159.         creds_credits.setRows(5);
  160.         creds_credits.setText(CREDITS);
  161.         jScrollPane3.setViewportView(creds_credits);
  162.  
  163.         javax.swing.GroupLayout tabbed_creditsLayout = new javax.swing.GroupLayout(tabbed_credits);
  164.         tabbed_credits.setLayout(tabbed_creditsLayout);
  165.         tabbed_creditsLayout.setHorizontalGroup(
  166.             tabbed_creditsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  167.             .addGroup(tabbed_creditsLayout.createSequentialGroup()
  168.                 .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 261, javax.swing.GroupLayout.PREFERRED_SIZE)
  169.                 .addContainerGap(319, Short.MAX_VALUE))
  170.             .addGroup(tabbed_creditsLayout.createSequentialGroup()
  171.                 .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 570, Short.MAX_VALUE)
  172.                 .addContainerGap())
  173.             .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE)
  174.         );
  175.         tabbed_creditsLayout.setVerticalGroup(
  176.             tabbed_creditsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  177.             .addGroup(tabbed_creditsLayout.createSequentialGroup()
  178.                 .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
  179.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  180.                 .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  181.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  182.                 .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 127, javax.swing.GroupLayout.PREFERRED_SIZE)
  183.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  184.         );
  185.  
  186.         tabbed_MainPanel.addTab("Credits/Extras", tabbed_credits);
  187.  
  188.         log_version.setFont(new java.awt.Font("Calibri", 0, 11)); // NOI18N
  189.         log_version.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
  190.         log_version.setText("Current Script Version: "+SCRIPT_VERSION);
  191.  
  192.         ChangeLog.setColumns(20);
  193.         ChangeLog.setEditable(false);
  194.         ChangeLog.setRows(5);
  195.         ChangeLog.setText(CHANGE_LOG);
  196.         jScrollPane4.setViewportView(ChangeLog);
  197.  
  198.         javax.swing.GroupLayout versionLayout = new javax.swing.GroupLayout(version);
  199.         version.setLayout(versionLayout);
  200.         versionLayout.setHorizontalGroup(
  201.             versionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  202.             .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE)
  203.             .addComponent(log_version, javax.swing.GroupLayout.DEFAULT_SIZE, 580, Short.MAX_VALUE)
  204.         );
  205.         versionLayout.setVerticalGroup(
  206.             versionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  207.             .addGroup(versionLayout.createSequentialGroup()
  208.                 .addComponent(log_version, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE)
  209.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  210.                 .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 239, Short.MAX_VALUE))
  211.         );
  212.  
  213.         tabbed_MainPanel.addTab("Complete Change Log", version);
  214.  
  215.         startbutton.setFont(new java.awt.Font("Calibri", 0, 12)); // NOI18N
  216.         startbutton.setText("Start Script");
  217.  
  218.         scriptthread.setFont(new java.awt.Font("Calibri", 0, 12)); // NOI18N
  219.         scriptthread.setText("View Script Thread");
  220.         scriptthread.addActionListener(new java.awt.event.ActionListener() {
  221.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  222.                 scriptthreadActionPerformed(evt);
  223.             }
  224.         });
  225.  
  226.         scripterprofile.setFont(new java.awt.Font("Calibri", 0, 12)); // NOI18N
  227.         scripterprofile.setText("View "+SCRIPTER+"'s Profile");
  228.         scripterprofile.addActionListener(new java.awt.event.ActionListener() {
  229.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  230.                 scripterprofileActionPerformed(evt);
  231.             }
  232.         });
  233.  
  234.         fuserscripts.setFont(new java.awt.Font("Calibri", 0, 12)); // NOI18N
  235.         fuserscripts.setText("View FuserScripts");
  236.         fuserscripts.addActionListener(new java.awt.event.ActionListener() {
  237.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  238.                 fuserscriptsActionPerformed(evt);
  239.             }
  240.         });
  241.  
  242.         jLabel3.setIcon(new javax.swing.JLabel() {
  243.             public javax.swing.Icon getIcon() {
  244.                 try {
  245.                     return new javax.swing.ImageIcon(
  246.                         new java.net.URL(AVATAR)
  247.                     );
  248.                 } catch (java.net.MalformedURLException e) {
  249.                 }
  250.                 return null;
  251.             }
  252.         }.getIcon());
  253.  
  254.         jLabel1.setFont(new java.awt.Font("Calibri", 1, 24)); // NOI18N
  255.         jLabel1.setText(SCRIPT_NAME);
  256.  
  257.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  258.         getContentPane().setLayout(layout);
  259.         layout.setHorizontalGroup(
  260.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  261.             .addGroup(layout.createSequentialGroup()
  262.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  263.                     .addGroup(layout.createSequentialGroup()
  264.                         .addComponent(headerImg, javax.swing.GroupLayout.PREFERRED_SIZE, 179, javax.swing.GroupLayout.PREFERRED_SIZE)
  265.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  266.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  267.                             .addGroup(layout.createSequentialGroup()
  268.                                 .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 341, Short.MAX_VALUE)
  269.                                 .addGap(59, 59, 59))
  270.                             .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 213, javax.swing.GroupLayout.PREFERRED_SIZE))
  271.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  272.                         .addComponent(jLabel3))
  273.                     .addComponent(tabbed_MainPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 585, javax.swing.GroupLayout.PREFERRED_SIZE)
  274.                     .addComponent(startbutton, javax.swing.GroupLayout.DEFAULT_SIZE, 585, Short.MAX_VALUE)
  275.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  276.                         .addComponent(scriptthread, javax.swing.GroupLayout.PREFERRED_SIZE, 164, javax.swing.GroupLayout.PREFERRED_SIZE)
  277.                         .addGap(18, 18, 18)
  278.                         .addComponent(fuserscripts, javax.swing.GroupLayout.DEFAULT_SIZE, 229, Short.MAX_VALUE)
  279.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  280.                         .addComponent(scripterprofile, javax.swing.GroupLayout.PREFERRED_SIZE, 164, javax.swing.GroupLayout.PREFERRED_SIZE)))
  281.                 .addContainerGap())
  282.         );
  283.         layout.setVerticalGroup(
  284.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  285.             .addGroup(layout.createSequentialGroup()
  286.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  287.                     .addComponent(headerImg)
  288.                     .addGroup(layout.createSequentialGroup()
  289.                         .addComponent(jLabel2)
  290.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  291.                         .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 51, javax.swing.GroupLayout.PREFERRED_SIZE))
  292.                     .addComponent(jLabel3))
  293.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  294.                 .addComponent(tabbed_MainPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 287, javax.swing.GroupLayout.PREFERRED_SIZE)
  295.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  296.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  297.                     .addComponent(scripterprofile, javax.swing.GroupLayout.DEFAULT_SIZE, 43, Short.MAX_VALUE)
  298.                     .addComponent(scriptthread, javax.swing.GroupLayout.DEFAULT_SIZE, 43, Short.MAX_VALUE)
  299.                     .addComponent(fuserscripts, javax.swing.GroupLayout.DEFAULT_SIZE, 43, Short.MAX_VALUE))
  300.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  301.                 .addComponent(startbutton, javax.swing.GroupLayout.PREFERRED_SIZE, 34, javax.swing.GroupLayout.PREFERRED_SIZE))
  302.         );
  303.  
  304.         pack();
  305.     }// </editor-fold>
  306.  
  307.     public static void main(String args[]) {
  308.         java.awt.EventQueue.invokeLater(new Runnable() {
  309.             public void run() {
  310.                 new FuserSkeletonGUI().setVisible(true);
  311.             }
  312.         });
  313.     }
  314.     private void scriptthreadActionPerformed(java.awt.event.ActionEvent evt) {
  315.         sendToURL("http://fuserscripts.cz.cc/community/");
  316.     }
  317.  
  318.     private void fuserscriptsActionPerformed(java.awt.event.ActionEvent evt) {
  319.         sendToURL("http://fuserscripts.cz.cc/community/");
  320.     }
  321.  
  322.     private void scripterprofileActionPerformed(java.awt.event.ActionEvent evt) {
  323.         sendToURL("http://fuserscripts.cz.cc/community/index.php?/user/19-dew/");
  324.     }
  325.  
  326.     // Variables declaration - do not modify
  327.     private javax.swing.JTextArea ChangeLog;
  328.     private javax.swing.JTextArea creds_agreement;
  329.     private javax.swing.JTextArea creds_credits;
  330.     private javax.swing.JButton fuserscripts;
  331.     private javax.swing.JLabel headerImg;
  332.     private javax.swing.JLabel jLabel1;
  333.     private javax.swing.JLabel jLabel2;
  334.     private javax.swing.JLabel jLabel3;
  335.     private javax.swing.JLabel jLabel4;
  336.     private javax.swing.JLabel jLabel5;
  337.     private javax.swing.JScrollPane jScrollPane1;
  338.     private javax.swing.JScrollPane jScrollPane2;
  339.     private javax.swing.JScrollPane jScrollPane3;
  340.     private javax.swing.JScrollPane jScrollPane4;
  341.     private javax.swing.JTextArea jTextArea1;
  342.     private javax.swing.JLabel log_version;
  343.     private javax.swing.JButton scripterprofile;
  344.     private javax.swing.JButton scriptthread;
  345.     private javax.swing.JButton startbutton;
  346.     private javax.swing.JPanel tabbed_FuserScripts;
  347.     private javax.swing.JTabbedPane tabbed_MainPanel;
  348.     private javax.swing.JPanel tabbed_Settings;
  349.     private javax.swing.JPanel tabbed_credits;
  350.     private javax.swing.JPanel version;
  351.     // End of variables declaration
  352.  
  353.     public void sendToURL(String url) {
  354.         try {
  355.             java.awt.Desktop.getDesktop().browse(java.net.URI.create(url));
  356.         } catch (Exception exception) {
  357.             //log("[ERROR]SendToURL: " + exception.getLocalizedMessage());
  358.         }
  359.     }
  360. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement