--- a/middleware/Debug/DebugWindow.xaml.cs Tue Jul 24 11:14:52 2012 +0200
+++ b/middleware/Debug/DebugWindow.xaml.cs Tue Jul 24 16:35:10 2012 +0200
@@ -38,6 +38,12 @@
{
public partial class DebugWindow : Window
{
+ //Nom du projet, afin de savoir quel menu charger et quel fichier de configuration utiliser (TraKERS ou BBM).
+ private String projectName = "BBM";
+ //Chemins du fichier de config.
+ private String configPath;
+ //private String projectName = "BBM";
+
//Gestionnaire de ressources.
private ResourceManager rm;
@@ -65,7 +71,7 @@
* classe KinectMain.
* Au départ, la kinect est éteinte.
*/
- public DebugWindow()//KinectMain main)
+ public DebugWindow()
{
InitializeComponent();
@@ -75,6 +81,19 @@
//On fait appel au gestionnaire de ressources.
rm = new ResourceManager("Trakers.Debug.Properties.Resources", Assembly.GetExecutingAssembly());
+
+ //On charge les éléments relatifs au projet.
+ if (projectName.Equals("TraKERS"))
+ {
+ configPath = ".\\TraKERS - config.txt";
+ loadTraKERSMenu();
+ }
+ else if (projectName.Equals("BBM"))
+ {
+ configPath = ".\\BBM - config.txt";
+ loadBBMMenu();
+ }
+
//On tente de charger les paramètres du fichier params.ini.
//Si on n'y arrive pas, on affiche une erreur et on charge les paramètres par défaut.
if (!loadParameters())
@@ -97,47 +116,96 @@
config.Add("takenPoints", 10);
config.Add("directionChangeTresholdXY", 10);
config.Add("directionChangeTresholdZ", 0.01f);
- //Chemins des readme et doc.
- config.Add("readmeMiddleware", "..\\readme - Middleware.txt");
- config.Add("readmeFrontProcessing", "..\\readme - Front Processing.txt");
- config.Add("docFrontProcessing", "..\\tutorial front processing.html");
- config.Add("readmeFrontJS", "..\\readme - Front Web.txt");
- config.Add("docFrontJS", "..\\tutorial front js et wamp.html");
- //Chemins des exemples processing.
- config.Add("exPFMPS", "..\\Front Processing\\src\\Fluid_manipulation\\Fluid_manipulation.pde");
- config.Add("exPFMExe", "..\\Front Processing\\src\\Fluid_manipulation\\application.windows\\Fluid_manipulation.exe");
- config.Add("exPSMPS", "..\\Front Processing\\src\\Smoke_manipulation\\Smoke_manipulation.pde");
- config.Add("exPSMExe", "..\\Front Processing\\src\\Smoke_manipulation\\application.windows\\Smoke_manipulation.exe");
- config.Add("exPTPS", "..\\Front Processing\\src\\Trakers\\Trakers.pde");
- config.Add("exPTExe", "..\\Front Processing\\src\\Trakers\\application.windows\\Trakers.exe");
- config.Add("exPTGPS", "..\\Front Processing\\src\\Trakers_gestures\\Trakers_gestures.pde");
- config.Add("exPTGExe", "..\\Front Processing\\src\\Trakers_gestures\\application.windows\\Trakers_gestures.exe");
- config.Add("exPIEHand1DPS", "..\\Front Processing\\src\\Interaction_examples\\Hands_1D\\Hands_1D.pde");
- config.Add("exPIEHand1DExe", "..\\Front Processing\\src\\Interaction_examples\\Hands_1D\\application.windows\\Hands_1D.exe");
- config.Add("exPIEHand2DPS", "..\\Front Processing\\src\\Interaction_examples\\Hands_2D\\Hands_2D.pde");
- config.Add("exPIEHand2DExe", "..\\Front Processing\\src\\Interaction_examples\\Hands_2D\\application.windows\\Hands_2D.exe");
- config.Add("exPIEHandPressPS", "..\\Front Processing\\src\\Interaction_examples\\Hand_press\\Hand_press.pde");
- config.Add("exPIEHandPressExe", "..\\Front Processing\\src\\Interaction_examples\\Hand_press\\application.windows\\Hand_press.exe");
- config.Add("exPIEHandSignalPS", "..\\Front Processing\\src\\Interaction_examples\\Hand_signal\\Hand_signal.pde");
- config.Add("exPIEHandSignalExe", "..\\Front Processing\\src\\Interaction_examples\\Hand_signal\\application.windows\\Hand_signal.exe");
- //Chemins des exemples web.
- config.Add("exWPointersPS", "C:\\wamp\\www\\Front JS\\pointers\\");
- config.Add("exWPointersExe", "http://localhost/Front%20JS/pointers/");
- config.Add("exWGesturesPS", "C:\\wamp\\www\\Front JS\\pointers\\");
- config.Add("exWGesturesExe", "http://localhost/Front%20JS/gestures/");
+
+ if (projectName.Equals("TraKERS"))
+ {
+ //On charge les paramètres relatifs à TraKERS.
+ //Chemins des readme et doc pour TraKERS.
+ config.Add("readmeTraKERSMiddleware", "..\\readme - TraKERS Middleware.txt");
+ config.Add("readmeTraKERSFrontProcessing", "..\\readme - TraKERS Front Processing.txt");
+ config.Add("docTraKERSFrontProcessing", "..\\tutorial - TraKERS Front Processing.html");
+ config.Add("readmeTraKERSFrontJS", "..\\readme - TraKERS Front Web.txt");
+ config.Add("docTraKERSFrontJS", "..\\tutorial - TraKERS Front JS et Wamp.html");
+ //Chemins des exemples processing.
+ config.Add("exPFMPS", "..\\Front Processing\\src\\Fluid_manipulation\\Fluid_manipulation.pde");
+ config.Add("exPFMExe", "..\\Front Processing\\src\\Fluid_manipulation\\application.windows\\Fluid_manipulation.exe");
+ config.Add("exPSMPS", "..\\Front Processing\\src\\Smoke_manipulation\\Smoke_manipulation.pde");
+ config.Add("exPSMExe", "..\\Front Processing\\src\\Smoke_manipulation\\application.windows\\Smoke_manipulation.exe");
+ config.Add("exPTPS", "..\\Front Processing\\src\\Trakers\\Trakers.pde");
+ config.Add("exPTExe", "..\\Front Processing\\src\\Trakers\\application.windows\\Trakers.exe");
+ config.Add("exPTGPS", "..\\Front Processing\\src\\Trakers_gestures\\Trakers_gestures.pde");
+ config.Add("exPTGExe", "..\\Front Processing\\src\\Trakers_gestures\\application.windows\\Trakers_gestures.exe");
+ config.Add("exPIEHand1DPS", "..\\Front Processing\\src\\Interaction_examples\\Hands_1D\\Hands_1D.pde");
+ config.Add("exPIEHand1DExe", "..\\Front Processing\\src\\Interaction_examples\\Hands_1D\\application.windows\\Hands_1D.exe");
+ config.Add("exPIEHand2DPS", "..\\Front Processing\\src\\Interaction_examples\\Hands_2D\\Hands_2D.pde");
+ config.Add("exPIEHand2DExe", "..\\Front Processing\\src\\Interaction_examples\\Hands_2D\\application.windows\\Hands_2D.exe");
+ config.Add("exPIEHandPressPS", "..\\Front Processing\\src\\Interaction_examples\\Hand_press\\Hand_press.pde");
+ config.Add("exPIEHandPressExe", "..\\Front Processing\\src\\Interaction_examples\\Hand_press\\application.windows\\Hand_press.exe");
+ config.Add("exPIEHandSignalPS", "..\\Front Processing\\src\\Interaction_examples\\Hand_signal\\Hand_signal.pde");
+ config.Add("exPIEHandSignalExe", "..\\Front Processing\\src\\Interaction_examples\\Hand_signal\\application.windows\\Hand_signal.exe");
+ //Chemins des exemples web.
+ config.Add("exWPointersPS", "C:\\wamp\\www\\Front JS\\pointers\\");
+ config.Add("exWPointersExe", "http://localhost/Front%20JS/pointers/");
+ config.Add("exWGesturesPS", "C:\\wamp\\www\\Front JS\\pointers\\");
+ config.Add("exWGesturesExe", "http://localhost/Front%20JS/gestures/");
+ }
+ else if (projectName.Equals("BBM"))
+ {
+ //On charge les paramètres relatifs à BBM.
+ //Chemins des readme et doc pour BBM.
+ config.Add("readmeBBMMiddleware", "..\\readme - BBM Middleware.txt");
+ config.Add("docBBMFrontIDILL", "..\\Front IDILL\\Documentation - Front IDILL.html");
+ //Chemins du Front IDILL pour BBM.
+ config.Add("frontIDILLS", "C:\\wamp\\www\\Front IDILL\\");
+ config.Add("frontIDILLExe", "http://localhost/Front%20IDILL/");
+ }
}
//On donne les noms des éléments du menu.
FileMenu.Header = rm.GetString("menuFile");
ReadmeMiddlewareMenu.Header = rm.GetString("menuReadmeMiddleware");
+
+ QuitMenu.Header = rm.GetString("menuQuit");
+ ConfigMenu.Header = rm.GetString("menuConfig");
+ ParamMenu.Header = rm.GetString("menuParam");
+ ParamMenuReboot.Header = rm.GetString("menuParamReboot");
+
+ //kinectMain = main;
+ on = true;
+ closing = false;
+ refreshImage = true;
+ try
+ {
+ //On instancie les timers à N ms.
+ _timer = new System.Timers.Timer((int)config["tuioTimerElapsing"]);
+ //Dès que le timer est expiré, on appelle _timer_Elapsed.
+ _timer.Elapsed += new ElapsedEventHandler(_timer_Elapsed);
+ }
+ catch (Exception){}
+ }
+
+ /*
+ Charge la partie du menu de TraKERS.
+ */
+ public void loadTraKERSMenu()
+ {
+ //On rend visible la partie du menu des readme et doc de TraKERS.
+ ReadmeFrontProcessingMenu.Visibility = Visibility.Visible;
+ DocumentationFrontProcessingMenu.Visibility = Visibility.Visible;
+ ReadmeFrontJSMenu.Visibility = Visibility.Visible;
+ DocumentationFrontJSMenu.Visibility = Visibility.Visible;
+ //On rend visible la partie du menu des exemples Processing et Web de TraKERS.
+ ExamplesMenu.Visibility = Visibility.Visible;
+
+ //On cache la partie du menu des readme et doc de BBM.
+ DocumentationFrontIDILLMenu.Visibility = Visibility.Collapsed;
+
+ //Readme et doc de TraKERS.
ReadmeFrontProcessingMenu.Header = rm.GetString("menuReadmeFrontProcessing");
DocumentationFrontProcessingMenu.Header = rm.GetString("menuDocFrontP");
ReadmeFrontJSMenu.Header = rm.GetString("menuReadmeFrontJS");
DocumentationFrontJSMenu.Header = rm.GetString("menuDocFrontJS");
- QuitMenu.Header = rm.GetString("menuQuit");
- ConfigMenu.Header = rm.GetString("menuConfig");
- ParamMenu.Header = rm.GetString("menuParam");
- ParamMenuReboot.Header = rm.GetString("menuParamReboot");
+ //Exemples de TraKERS.
ExamplesMenu.Header = rm.GetString("menuEx");
ProcessingMenu.Header = rm.GetString("menuExP");
ProcessingMenuFM.Header = rm.GetString("menuExPFluid");
@@ -172,19 +240,32 @@
WebMenuGestures.Header = rm.GetString("menuExWGestures");
WebMenuGesturesPS.Header = rm.GetString("menuExSource");
WebMenuGesturesExe.Header = rm.GetString("menuExExe");
+ }
- //kinectMain = main;
- on = true;
- closing = false;
- refreshImage = true;
- try
- {
- //On instancie les timers à N ms.
- _timer = new System.Timers.Timer((int)config["tuioTimerElapsing"]);
- //Dès que le timer est expiré, on appelle _timer_Elapsed.
- _timer.Elapsed += new ElapsedEventHandler(_timer_Elapsed);
- }
- catch (Exception){}
+ /*
+ Charge la partie du menu de BBM.
+ */
+ public void loadBBMMenu()
+ {
+ //On rend visible la partie du menu des readme et doc de BBM.
+ DocumentationFrontIDILLMenu.Visibility = Visibility.Visible;
+ //On rend visible la partie du menu du Front IDILL pour BBM.
+ FrontIDILLMenu.Visibility = Visibility.Visible;
+
+ //On cache la partie du menu des readme et doc de TraKERS.
+ ReadmeFrontProcessingMenu.Visibility = Visibility.Collapsed;
+ DocumentationFrontProcessingMenu.Visibility = Visibility.Collapsed;
+ ReadmeFrontJSMenu.Visibility = Visibility.Collapsed;
+ DocumentationFrontJSMenu.Visibility = Visibility.Collapsed;
+ //On cache la partie du menu des exemples Processing et Web de TraKERS.
+ menu.Items.Remove(ExamplesMenu);
+
+ //Readme et doc de BBM.
+ DocumentationFrontIDILLMenu.Header = rm.GetString("menuDocFrontIDILL");
+ //Exemples de BBM.
+ FrontIDILLMenu.Header = rm.GetString("menuFrontIDILL");
+ FrontIDILLMenuS.Header = rm.GetString("menuFrontIDILLS");
+ FrontIDILLMenuExe.Header = rm.GetString("menuFrontIDILLExe");
}
/*
@@ -766,7 +847,8 @@
try
{
//On lit le fichier de config.
- String[] lines = System.IO.File.ReadAllLines("config.txt");
+
+ String[] lines = System.IO.File.ReadAllLines(configPath);
//On repère les paramètres supposés être des int ou float de manière à les parser.
String[] ints = { "tuioConnexionPort", "wsConnexionPort", "takenPoints", "tuioTimerElapsing", "wsTimerElapsing", "directionChangeTresholdXY", "imagesToShow" };
@@ -1129,7 +1211,14 @@
*/
private void MiddlewareReadmeMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile((String)config["readmeMiddleware"]);
+ if (projectName.Equals("TraKERS"))
+ {
+ OpenFile((String)config["readmeTraKERSMiddleware"]);
+ }
+ else if (projectName.Equals("BBM"))
+ {
+ OpenFile((String)config["readmeBBMMiddleware"]);
+ }
}
/*
@@ -1137,7 +1226,7 @@
*/
private void FrontProcessingReadmeMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile((String)config["readmeFrontProcessing"]);
+ OpenFile((String)config["readmeTraKERSFrontProcessing"]);
}
/*
@@ -1145,7 +1234,7 @@
*/
private void FrontProcessingDocumentationMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile((String)config["docFrontProcessing"]);
+ OpenFile((String)config["docTraKERSFrontProcessing"]);
}
/*
@@ -1153,7 +1242,7 @@
*/
private void FrontJSReadmeMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile((String)config["readmeFrontJS"]);
+ OpenFile((String)config["readmeTraKERSFrontJS"]);
}
/*
@@ -1161,7 +1250,15 @@
*/
private void FrontJSDocumentationMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile((String)config["docFrontJS"]);
+ OpenFile((String)config["docTraKERSFrontJS"]);
+ }
+
+ /*
+ * Ouvre la documentation du Front IDILL.
+ */
+ private void FrontIDILLDocumentationMenu_Click(object sender, RoutedEventArgs e)
+ {
+ OpenFile((String)config["docBBMFrontIDILL"]);
}
/*
@@ -1169,7 +1266,7 @@
*/
private void ParamMenu_Click(object sender, RoutedEventArgs e)
{
- OpenFile(".\\config.txt");
+ OpenFile(configPath);
}
/*
@@ -1329,5 +1426,21 @@
{
OpenFile((String)config["exWGesturesExe"]);
}
+
+ /*
+ * Ouvre la source du Front IDILL.
+ */
+ private void FrontIDILLMenuS_Click(object sender, RoutedEventArgs e)
+ {
+ OpenFile((String)config["frontIDILLS"]);
+ }
+
+ /*
+ * Ouvre le Front IDILL.
+ */
+ private void FrontIDILLMenuExe_Click(object sender, RoutedEventArgs e)
+ {
+ OpenFile((String)config["frontIDILLExe"]);
+ }
}
}