Erb1tux

Background changer main window

Sep 13th, 2014
404
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.47 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using Microsoft.Win32;
  11. using System;
  12. using System.Collections.Generic;
  13. using System.IO;
  14. using System.Linq;
  15. using System.Runtime.InteropServices;
  16. using System.Text;
  17. using System.Threading.Tasks;
  18.  
  19.  
  20. namespace Background_Changer
  21. {
  22.     public partial class BGChangerWindowMain : Form
  23.     {
  24.         public BGChangerWindowMain()
  25.         {
  26.             InitializeComponent();
  27.         }
  28.  
  29.         #region Hotkey DLL
  30.         [DllImport("user32.dll")]
  31.         private static extern bool RegisterHotKey(IntPtr hWnd, int id, int fsModifiers, int vk);
  32.  
  33.         [DllImport("user32.dll")]
  34.         private static extern bool UnregisterHotKey(IntPtr hWnd, int id);
  35.  
  36.         const int MOD_CONTROL = 0x0002;
  37.         const int MOD_SHIFT = 0x0004;
  38.         const int WM_HOTKEY = 0x0312;
  39.         #endregion
  40.  
  41.  
  42.  
  43.         bool safeBg = false;
  44.         bool closepls = false;
  45.  
  46.  
  47.         private void Form1_Load(object sender, EventArgs e)
  48.         {
  49.             if (!Directory.Exists(@"bg\")) Directory.CreateDirectory(@"bg\");
  50.  
  51.  
  52.             if (!Existant())
  53.                 MessageBox.Show("At least one Image is missing!\nPlease add each Image before continuing.", "Fatalaty", MessageBoxButtons.OK, MessageBoxIcon.Stop);
  54.             else if (Existant() && Properties.Settings.Default.setSafe)
  55.                 changeBg(false);
  56.  
  57.             checkBoxSetSafe.Checked = Properties.Settings.Default.setSafe;
  58.             //
  59.             //Registering Hotkey
  60.             //
  61.            
  62.             RegisterHotKey(this.Handle, 1, MOD_CONTROL + MOD_SHIFT, (int)Keys.D);
  63.            
  64.             //
  65.             //Hide yo kids, hide yo wife, hide yo program
  66.             //
  67.             this.Hide();
  68.         }
  69.  
  70.         private bool Existant()
  71.         {
  72.             if (File.Exists(@"bg\safe.png"))
  73.                 using (System.IO.Stream s = new System.Net.WebClient().OpenRead(@"bg\safe.png"))
  74.                 {
  75.                     System.Drawing.Image img = System.Drawing.Image.FromStream(s);
  76.                     pictureBoxSafe.BackgroundImage = img;
  77.                 }
  78.             else
  79.                 return false;
  80.             if (File.Exists(@"bg\lewd.png"))
  81.                 using (System.IO.Stream s = new System.Net.WebClient().OpenRead(@"bg\lewd.png"))
  82.                 {
  83.                     System.Drawing.Image img = System.Drawing.Image.FromStream(s);
  84.                     pictureBoxLewd.BackgroundImage = img;
  85.                 }
  86.             else
  87.                 return false;
  88.  
  89.             return true;
  90.         }
  91.  
  92.  
  93.        protected override void WndProc(ref Message m)
  94.         {
  95.             if (m.Msg == WM_HOTKEY)
  96.                 changeBg(false);
  97.             base.WndProc(ref m);
  98.         }
  99.  
  100.        private void changeBg(bool changeAlways)
  101.        {
  102.            if (!Existant())
  103.                return;
  104.            
  105.            Uri safe = new System.Uri(Application.StartupPath + @"\bg\safe.png");
  106.            Uri lewd = new System.Uri(Application.StartupPath +@"\bg\lewd.png");
  107.  
  108.            if (safeBg && (!checkBoxSafeChange.Checked || changeAlways))
  109.            {
  110.                Wallpaper.Set(lewd, Wallpaper.Style.Tiled);
  111.                safeBg = false;
  112.                labelLewdActive.Visible = true;
  113.                labelSafeActive.Visible = false;
  114.            }
  115.            else
  116.            {
  117.                Wallpaper.Set(safe, Wallpaper.Style.Tiled);
  118.                safeBg = true;
  119.                labelLewdActive.Visible = false;
  120.                labelSafeActive.Visible = true;
  121.            }
  122.                
  123.        }
  124.  
  125.  
  126.         private void closeToolStripMenuItem_Click(object sender, EventArgs e)
  127.         {
  128.             closepls = true;
  129.             this.Close();
  130.         }
  131.  
  132.         private void changeBackgroundToolStripMenuItem_Click(object sender, EventArgs e)
  133.         {
  134.             changeBg(true);  
  135.         }
  136.  
  137.         private void settingsToolStripMenuItem_Click(object sender, EventArgs e)
  138.         {
  139.             this.Show();
  140.         }
  141.  
  142.         private void Form1_FormClosing_1(object sender, FormClosingEventArgs e)
  143.         {
  144.             if (!closepls)
  145.                 e.Cancel = true;
  146.             else
  147.                 UnregisterHotKey(this.Handle, 1);
  148.             this.Hide();
  149.            
  150.         }
  151.  
  152.         private void button1_Click(object sender, EventArgs e)
  153.         {
  154.             this.Hide();
  155.         }
  156.  
  157.         private void buttonCloseProgram_Click(object sender, System.EventArgs e)
  158.         {
  159.             closepls = true;
  160.             this.Close();
  161.         }
  162.  
  163.         private void buttonChangeSafe_Click(object sender, System.EventArgs e)
  164.         {
  165.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  166.                 using (System.IO.Stream s = new System.Net.WebClient().OpenRead(openFileDialog1.FileName))
  167.                 {
  168.                     System.Drawing.Image img = System.Drawing.Image.FromStream(s);
  169.                     pictureBoxSafe.BackgroundImage = img;
  170.                     if (File.Exists(@"bg\safe.png")) File.Delete(@"bg\safe.png");
  171.                     File.Copy(openFileDialog1.FileName, @"bg\safe.png");
  172.                 }
  173.             else
  174.                 return;
  175.         }
  176.  
  177.         private void buttonChangeLewd_Click(object sender, System.EventArgs e)
  178.         {
  179.             if (openFileDialog1.ShowDialog() == DialogResult.OK)
  180.                 using (System.IO.Stream s = new System.Net.WebClient().OpenRead(openFileDialog1.FileName))
  181.                 {
  182.                     System.Drawing.Image img = System.Drawing.Image.FromStream(s);
  183.                     pictureBoxLewd.BackgroundImage = img;
  184.                     if (File.Exists(@"bg\lewd.png")) File.Delete(@"bg\lewd.png");
  185.                     File.Copy(openFileDialog1.FileName, @"bg\lewd.png");
  186.                 }
  187.             else
  188.                 return;
  189.         }
  190.  
  191.         private void buttonChangeBG_Click(object sender, System.EventArgs e)
  192.         {
  193.             changeBg(true);
  194.         }
  195.  
  196.         private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
  197.         {
  198.             this.Show();
  199.         }
  200.  
  201.  
  202.         private void checkBox1_CheckedChanged(object sender, System.EventArgs e)
  203.         {
  204.             Properties.Settings.Default.setSafe = checkBoxSetSafe.Checked;
  205.             Properties.Settings.Default.Save();
  206.         }
  207.  
  208.     }
  209. }
Advertisement
Add Comment
Please, Sign In to add comment