You are on page 1of 6

package GUI;

import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.WindowListener;
import java.text.SimpleDateFormat;
import java.awt.LayoutManager;
import java.time.ZonedDateTime;
import java.util.Date;
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.awt.event.ActionListener;
import javax.swing.Timer;
import java.util.Calendar;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;

public class FrameOne


{
JLabel lblOne;
JLabel lblTwo;
JLabel lblHr;
JLabel lblMin;
JLabel lblSec;
JButton hrUp;
JButton hrDown;
JButton minUp;
JButton minDown;
JButton secUp;
JButton secDown;
JButton btnSet;
JFrame mainFrame;
Calendar current;
Timer pulse;
Timer alarmNow;
int hr;
int min;
int sec;
int hrSet;
int minSet;
int secSet;
String hrString;
String minString;
String secString;
String setString;
Boolean setAlarm;
int i;
Date date = new Date();
SimpleDateFormat formm = new SimpleDateFormat("EEEE");
String a = formm.format(date);

FrameOne() {
this.lblOne = new JLabel();
this.lblTwo = new JLabel();
this.lblHr = new JLabel();
this.lblMin = new JLabel();
this.lblSec = new JLabel();
this.hrUp = new JButton();
this.hrDown = new JButton();
this.minUp = new JButton();
this.minDown = new JButton();
this.secUp = new JButton();
this.secDown = new JButton();
this.btnSet = new JButton();
this.mainFrame = new JFrame();
this.current = Calendar.getInstance();
this.pulse = new Timer(1000, new pulse_Event());
this.alarmNow = new Timer(1500, new alarm_Event());
this.setAlarm = false;
this.i = 0;
this.initialize_mainFrame();
this.initialize_lblOne();
this.initialize_lblTwo();
this.initialize_Label(this.lblHr, 275, 260, 100, 240, "00");
this.initialize_Label(this.lblMin, 275, 260, 375, 240, "00");
this.initialize_Label(this.lblSec, 275, 260, 650, 240, "00");
this.initialize_Button(this.hrUp, 275, 40, 100, 200, "+");
this.initialize_Button(this.minUp, 275, 40, 375, 200, "+");
this.initialize_Button(this.secUp, 275, 40, 650, 200, "+");
this.initialize_Button(this.hrDown, 275, 40, 100, 500, "-");
this.initialize_Button(this.minDown, 275, 40, 375, 500, "-");
this.initialize_Button(this.secDown, 275, 40, 650, 500, "-");
this.initialize_Button(this.btnSet, 350, 40, 340, 580, "SET ALARM");
this.btnSet.setFont(new Font("Arial", 1, 30));
this.pulse.start();
}

public void initialize_Button(final JButton A, final int W, final int H, final


int X, final int Y, final String btnText) {
A.setBackground(Color.WHITE);
A.setForeground(Color.BLACK);
A.setVisible(true);
A.setSize(W, H);
A.setLocation(X, Y);
A.setText(btnText);
A.setFont(new Font("Arial", 0, 20));
A.addActionListener(new button_Event());
this.mainFrame.add(A);
}

public void initialize_Label(final JLabel A, final int W, final int H, final


int X, final int Y, final String lblText) {
A.setVisible(true);
A.setSize(W, H);
A.setLocation(X, Y);
A.setOpaque(true);
A.setText(lblText);
A.setBackground(Color.BLACK);
A.setForeground(Color.WHITE);
A.setHorizontalAlignment(0);
A.setVerticalAlignment(0);
A.setFont(new Font("Arial", 1, 60));
}
public void initialize_lblTwo() {
this.lblTwo.setSize(1200, 100);
this.lblTwo.setOpaque(false);
this.lblTwo.setText(a);
this.lblTwo.setBackground(Color.WHITE);
this.lblTwo.setForeground(Color.BLACK);
this.lblTwo.setLocation(-80, 60);
this.lblTwo.setVisible(true);
this.lblTwo.setHorizontalAlignment(0);
this.lblTwo.setVerticalAlignment(0);
this.lblTwo.setFont(new Font("Arial", 1, 50));
}

public void displayTime() {


this.hr = ZonedDateTime.now().getHour();
this.min = ZonedDateTime.now().getMinute();
this.sec = ZonedDateTime.now().getSecond();
this.hrString = String.format("%02d", this.hr);
this.minString = String.format("%02d", this.min);
this.secString = String.format("%02d", this.sec);
this.lblOne.setText(String.valueOf(this.hrString) + ":" + this.minString +
":" + this.secString);
this.lblOne.setLocation(65, 10);
}

public void initialize_lblOne() {


this.lblOne.setSize(900, 280);
this.lblOne.setOpaque(false);
this.displayTime();
this.lblOne.setBackground(Color.WHITE);
this.lblOne.setForeground(Color.RED);
this.lblOne.setLocation(0, 100);
this.lblOne.setVisible(true);
this.lblOne.setHorizontalAlignment(0);
this.lblOne.setVerticalAlignment(1);
this.lblOne.setFont(new Font("Arial", 1, 50));
}

public void initialize_mainFrame() {


this.mainFrame.setTitle("Alarm Clock - Peji and Contreras");
this.mainFrame.setLocation(450, 180);
this.mainFrame.setSize(1050, 700);
this.mainFrame.setVisible(true);
this.mainFrame.setResizable(false);
this.mainFrame.setLayout(null);
this.mainFrame.add(this.lblOne);
this.mainFrame.add(this.lblTwo);
this.mainFrame.add(this.lblHr);
this.mainFrame.add(this.lblMin);
this.mainFrame.add(this.lblSec);
this.mainFrame.addWindowListener(new mainFrame_Event());
}

public void setButtons(final Boolean X) {


this.hrUp.setEnabled(X);
this.hrDown.setEnabled(X);
this.minUp.setEnabled(X);
this.minDown.setEnabled(X);
this.secUp.setEnabled(X);
this.secDown.setEnabled(X);
}

public class alarm_Event implements ActionListener


{
@Override
public void actionPerformed(final ActionEvent e) {
Toolkit.getDefaultToolkit().beep();
}
}

public class pulse_Event implements ActionListener


{
@Override
public void actionPerformed(final ActionEvent arg0) {
FrameOne.this.displayTime();
if (FrameOne.this.setAlarm) {
final String CheckAlarm =
String.valueOf(FrameOne.this.lblHr.getText()) + ":" +
FrameOne.this.lblMin.getText() + ":" + FrameOne.this.lblSec.getText();
if (CheckAlarm.equals(FrameOne.this.lblOne.getText())) {
FrameOne.this.alarmNow.start();
}
}
}
}

public class mainFrame_Event extends WindowAdapter


{
@Override
public void windowClosing(final WindowEvent arg0) {
FrameOne.this.alarmNow.stop();
FrameOne.this.pulse.stop();
FrameOne.this.mainFrame.dispose();
}
}

public class button_Event implements ActionListener


{
@Override
public void actionPerformed(final ActionEvent arg0) {
if (arg0.getSource() == FrameOne.this.hrUp) {
FrameOne.this.hrSet =
Integer.parseInt(FrameOne.this.lblHr.getText());
if (FrameOne.this.hrSet >= 0 && FrameOne.this.hrSet < 23) {
final FrameOne this$0 = FrameOne.this;
++this$0.hrSet;
if (FrameOne.this.hrSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.hrSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.hrSet);
}
FrameOne.this.lblHr.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.hrDown) {
FrameOne.this.hrSet =
Integer.parseInt(FrameOne.this.lblHr.getText());
if (FrameOne.this.hrSet > 0 && FrameOne.this.hrSet <= 23) {
final FrameOne this$2 = FrameOne.this;
--this$2.hrSet;
if (FrameOne.this.hrSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.hrSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.hrSet);
}
FrameOne.this.lblHr.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.minUp) {
FrameOne.this.minSet =
Integer.parseInt(FrameOne.this.lblMin.getText());
if (FrameOne.this.minSet >= 0 && FrameOne.this.minSet < 59) {
final FrameOne this$3 = FrameOne.this;
++this$3.minSet;
if (FrameOne.this.minSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.minSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.minSet);
}
FrameOne.this.lblMin.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.minDown) {
FrameOne.this.minSet =
Integer.parseInt(FrameOne.this.lblMin.getText());
if (FrameOne.this.minSet > 0 && FrameOne.this.minSet <= 59) {
final FrameOne this$4 = FrameOne.this;
--this$4.minSet;
if (FrameOne.this.minSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.minSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.minSet);
}
FrameOne.this.lblMin.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.secUp) {
FrameOne.this.secSet =
Integer.parseInt(FrameOne.this.lblSec.getText());
if (FrameOne.this.secSet >= 0 && FrameOne.this.secSet < 59) {
final FrameOne this$5 = FrameOne.this;
++this$5.secSet;
if (FrameOne.this.secSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.secSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.secSet);
}
FrameOne.this.lblSec.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.secDown) {
FrameOne.this.secSet =
Integer.parseInt(FrameOne.this.lblSec.getText());
if (FrameOne.this.secSet > 0 && FrameOne.this.secSet <= 59) {
final FrameOne this$6 = FrameOne.this;
--this$6.secSet;
if (FrameOne.this.secSet < 10) {
FrameOne.this.setString = "0" +
String.valueOf(FrameOne.this.secSet);
}
else {
FrameOne.this.setString =
String.valueOf(FrameOne.this.secSet);
}
FrameOne.this.lblSec.setText(FrameOne.this.setString);
}
}
else if (arg0.getSource() == FrameOne.this.btnSet) {
if (!FrameOne.this.setAlarm) {
FrameOne.this.btnSet.setText("CANCEL ALARM");
FrameOne.this.setButtons(false);
FrameOne.this.setAlarm = true;
}
else {
FrameOne.this.btnSet.setText("SET ALARM");
FrameOne.this.setButtons(true);
FrameOne.this.alarmNow.stop();
FrameOne.this.setAlarm = false;
}
}
}
}
}

You might also like