diff --git a/bin/View/GUIMainFrame.class b/bin/View/GUIMainFrame.class index 5e66113..70c3fea 100644 Binary files a/bin/View/GUIMainFrame.class and b/bin/View/GUIMainFrame.class differ diff --git a/bin/View/GUIMenuBar.class b/bin/View/GUIMenuBar.class index cdd493d..2953cd3 100644 Binary files a/bin/View/GUIMenuBar.class and b/bin/View/GUIMenuBar.class differ diff --git a/bin/View/IMyView.class b/bin/View/IMyView.class index 7e11211..da06a6b 100644 Binary files a/bin/View/IMyView.class and b/bin/View/IMyView.class differ diff --git a/bin/View/MyView.class b/bin/View/MyView.class index f73f877..df1e688 100644 Binary files a/bin/View/MyView.class and b/bin/View/MyView.class differ diff --git a/src/View/GUIMainFrame.java b/src/View/GUIMainFrame.java index 0be29fb..bce45c9 100755 --- a/src/View/GUIMainFrame.java +++ b/src/View/GUIMainFrame.java @@ -49,6 +49,8 @@ public class GUIMainFrame extends JFrame { JPanel oPanel2 = new JPanel(); JPanel oPanel3 = new JPanel(); + MyView oMyView = new MyView(this, oGUIMCMenu, oGUIMenuBar, oGUIPorts, oGUIRamTable, oGUIRegister, oGUIRegistersDetailed, oGUIStack, oGUITestFileTable, oGUITime, oMainPanel); + ArrayList oPanels = new ArrayList(); /** * Constructor @@ -137,7 +139,7 @@ public class GUIMainFrame extends JFrame { this.setIconImage(guiLogo.getImage()); // change icon of frame //Set menubar - oGUIMenuBar = new GUIMenuBar(env, this, oGUITestFileTable, oGUIRegister, oGUIRegistersDetailed); + oGUIMenuBar = new GUIMenuBar(oMyView, env, this, oGUITestFileTable, oGUIRegister, oGUIRegistersDetailed); this.setJMenuBar(oGUIMenuBar); //Build this frame diff --git a/src/View/GUIMenuBar.java b/src/View/GUIMenuBar.java index eafc371..674c81a 100644 --- a/src/View/GUIMenuBar.java +++ b/src/View/GUIMenuBar.java @@ -25,6 +25,8 @@ public class GUIMenuBar extends JMenuBar implements ActionListener { GUIRegister oGUIRegister; GUIRegistersDetailed oGUIRegistersDetailed; + MyView oMyView; + ArrayList oBreakpoints; ReadEepromFile oRef; boolean[] bBreakpointSet; @@ -96,7 +98,7 @@ public class GUIMenuBar extends JMenuBar implements ActionListener { * Constructor initializes menubar. * @param frame */ - public GUIMenuBar(Environment env, GUIMainFrame mainframe, GUITestFileTable guitft, GUIRegister guiregs, GUIRegistersDetailed guiregsdet) { //TODO maybe single components, with methods, of frame to set theme + public GUIMenuBar(MyView view, Environment env, GUIMainFrame mainframe, GUITestFileTable guitft, GUIRegister guiregs, GUIRegistersDetailed guiregsdet) { //TODO maybe single components, with methods, of frame to set theme //Custom Separators since default is not able to change background. oSeparator0 = new JMenuItem(); @@ -113,6 +115,7 @@ public class GUIMenuBar extends JMenuBar implements ActionListener { oSeparator3.setPreferredSize(new Dimension(0,1)); //Referrence to change different parts of gui for theme. + oMyView = view; oEnv = env; oGUIMainFrame = mainframe; oGUITestFileTable = guitft; @@ -368,19 +371,13 @@ public class GUIMenuBar extends JMenuBar implements ActionListener { if (e.getSource() == oDarkTheme) { System.out.println("It's gettin dark brooo"); //TODO setTheme(aoDarkTheme[0], aoDarkTheme[1]); - oGUITestFileTable.setTheme(1); - oGUIRegister.setTheme(1); - oGUIMainFrame.setTheme(1); - oGUIRegistersDetailed.setTheme(1); + oMyView.setTheme(1); } //Change to light theme if (e.getSource() == oLightTheme) { System.out.println("Death to all vampires!"); //TODO setTheme(aoLightTheme[0], aoLightTheme[1]); - oGUITestFileTable.setTheme(0); - oGUIRegister.setTheme(0); - oGUIMainFrame.setTheme(0); - oGUIRegistersDetailed.setTheme(0); + oMyView.setTheme(0); } //Microcontroller diff --git a/src/View/IMyView.java b/src/View/IMyView.java index 3aaef6e..d743d1f 100644 --- a/src/View/IMyView.java +++ b/src/View/IMyView.java @@ -2,4 +2,5 @@ package View; public interface IMyView { + public void setTheme(int iThemeNr); } diff --git a/src/View/MyView.java b/src/View/MyView.java index 3d20e16..ef5cd17 100644 --- a/src/View/MyView.java +++ b/src/View/MyView.java @@ -2,18 +2,44 @@ package View; import javax.swing.JPanel; -public class MyView { +public class MyView implements IMyView { GUIMainFrame oGUIMainFrame; + GUIMCMenu oGUIMCMenu; GUIMenuBar oGUIMenuBar; GUIPorts oGUIPorts; + GUIRamTable oGUIRamTable; GUIRegister oGUIRegister; GUIRegistersDetailed oGUIRegistersDetailed; + GUIStack oGUIStack; GUITestFileTable oGUITestFileTable; + GUITime oGUITime; JPanel oGUIMainPanel; - public MyView() { - + public MyView(GUIMainFrame oGUIMainFrame, GUIMCMenu oGUIMCMenu, GUIMenuBar oGUIMenuBar, GUIPorts oGUIPorts, GUIRamTable oGUIRamTable, GUIRegister oGUIRegister, GUIRegistersDetailed oGUIRegistersDetailed, GUIStack oGUIStack, GUITestFileTable oGUITestFileTable, GUITime oGUITime, JPanel oGUIMainPanel) { + this.oGUIMainFrame = oGUIMainFrame; + this.oGUIMCMenu = oGUIMCMenu; + this.oGUIMenuBar = oGUIMenuBar; + this.oGUIPorts = oGUIPorts; + this.oGUIRamTable = oGUIRamTable; + this.oGUIRegister = oGUIRegister; + this.oGUIRegistersDetailed = oGUIRegistersDetailed; + this.oGUIStack = oGUIStack; + this.oGUITestFileTable = oGUITestFileTable; + this.oGUITime = oGUITime; + this.oGUIMainPanel = oGUIMainPanel; + } + + public void setTheme(int iThemeNr) { + oGUIMainFrame.setTheme(iThemeNr); + oGUIMCMenu.setTheme(iThemeNr); + oGUIPorts.setTheme(iThemeNr); + oGUIRamTable.setTheme(iThemeNr); + oGUIRegister.setTheme(iThemeNr); + oGUIRegistersDetailed.setTheme(iThemeNr); + oGUIStack.setTheme(iThemeNr); + oGUITestFileTable.setTheme(iThemeNr); + oGUITime.setTheme(iThemeNr); } }