Bugfixes and Keysets
[pierogi] / forms / pirmacroform.cpp
index b62f0b4..e0f5426 100644 (file)
@@ -1,39 +1,72 @@
 #include "pirmacroform.h"
 #include "ui_pirmacroform.h"
 
+//#include "mainwindow.h"
+#include "macros/pirmacro.h"
+
+class QTreeWidgetItem;
+class MainWindow;
+
+/*
 PIRMacroForm::PIRMacroForm(QWidget *parent) :
   QWidget(parent),
   ui(new Ui::PIRMacroForm)
 {
   ui->setupUi(this);
 }
+*/
+
+PIRMacroForm::PIRMacroForm(
+  MainWindow *mw)
+  : QWidget(0),
+    ui(new Ui::PIRMacroForm),
+    smd(mw),
+    ccd(mw),
+    currentMacro(0)
+{
+  ui->setupUi(this);
+
+  connect(
+    &smd,
+    SIGNAL(macroChosen(QTreeWidgetItem *)),
+    this,
+    SLOT(displayMacro(QTreeWidgetItem *)));
+}
 
 PIRMacroForm::~PIRMacroForm()
 {
   delete ui;
 }
 
-void PIRMacroForm::on_cycleCheckBox_stateChanged(int arg1)
-{
 
+void PIRMacroForm::on_chooseMacroButton_clicked()
+{
+  smd.exec();
 }
 
-void PIRMacroForm::on_spinBox_valueChanged(int arg1)
-{
 
+void PIRMacroForm::on_runButton_clicked()
+{
+  currentMacro->executeMacro();
 }
 
-void PIRMacroForm::on_prevMacroButton_clicked()
+
+void PIRMacroForm::displayMacro(
+  QTreeWidgetItem *item)
 {
+  if (!item) return;
 
-}
+  PIRMacro *m = dynamic_cast<PIRMacro *> (item);
 
-void PIRMacroForm::on_nextMacroButton_clicked()
-{
+  if (!m) return;
+
+  currentMacro = m;
 
+  currentMacro->populateList(ui->macroListWidget);
 }
 
-void PIRMacroForm::on_newMacroButton_clicked()
-{
 
+void PIRMacroForm::on_addButton_clicked()
+{
+  ccd.exec();
 }