Advertisement
ramoncarden

Untitled

Apr 17th, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 16.37 KB | None | 0 0
  1. import sys
  2. from PyQt5.QtWidgets import QApplication, QDialog, QMainWindow, QWidget, QShortcut
  3. from PyQt5.uic import loadUi
  4. from PyQt5 import QtSql, QtGui, QtCore, QtWidgets
  5. from PyQt5.QtCore import Qt
  6. from main import Ui_MainWindow
  7. import sqlite3
  8. import os.path
  9. from pprint import pprint
  10. from PyQt5.QtGui import QColor
  11. from pygame import mixer
  12. from PyQt5.QtCore import Qt
  13. from table import Ui_Dialog
  14.  
  15.  
  16.  
  17.  
  18. class MusicApp():
  19.     """docstring for ."""
  20.     def __init__(self):
  21.         app = QApplication(sys.argv)
  22.         self.MainWindow = QMainWindow()
  23.         self.ui = Ui_MainWindow()
  24.         table = Ui_Dialog()
  25.         self.ui.setupUi(self.MainWindow)
  26.         self.ui.comboBox.currentText()
  27.         self.ui.one_chord.clicked.connect(self.play_sound_one)
  28.         self.ui.two_chord.clicked.connect(self.play_sound_two)
  29.         self.ui.three_chord.clicked.connect(self.play_sound_three)
  30.         self.ui.four_chrod.clicked.connect(self.play_sound_four)
  31.         self.ui.five_chord.clicked.connect(self.play_sound_five)
  32.         self.ui.six_chord.clicked.connect(self.play_sound_six)
  33.         self.ui.seven_chord.clicked.connect(self.play_sound_seven)
  34.         self.ui.viewChords.clicked.connect(self.open_table)
  35.         # self.btnClose.clicked.connect(print_hi)
  36.         table.btnClose.clicked.connect(self.print_hi)
  37.  
  38.         self.model = None
  39.         # self.ui.viewChords.clicked.connect(self.sql_tableview_model)
  40.         # self.ui.viewChords.clicked.connect(self.sql_add_row)
  41.         # self.ui.viewChords.clicked.connect(self.sql_delete_row)
  42.         # self.ui.viewChords.clicked.connect(self.create_key_db)
  43.         self.MainWindow.show()
  44.         sys.exit(app.exec_())
  45.  
  46.  
  47.     def open_table(self):
  48.         self.window = QtWidgets.QDialog()
  49.         self.ui = Ui_Dialog()
  50.         self.ui.setupUi(self.window)
  51.         self.window.show()
  52.  
  53.     def print_hi(self):
  54.         print("hello")
  55.  
  56.     def play_sound_one(self):
  57.         mixer.init()
  58.         combo = self.ui.comboBox.currentText()
  59.         if combo == "Gb":
  60.             mixer.music.load("sounds/soundsGb/Gb.ogg")
  61.             mixer.music.play()
  62.         elif combo == "Db":
  63.             mixer.music.load("sounds/soundsDb/Db.ogg")
  64.             mixer.music.play()
  65.         elif combo == "Ab":
  66.             mixer.music.load("sounds/soundsAb/Ab.ogg")
  67.             mixer.music.play()
  68.         elif combo == "Eb":
  69.             mixer.music.load("sounds/soundsEb/Eb.ogg")
  70.             mixer.music.play()
  71.         elif combo == "Bb":
  72.             mixer.music.load("sounds/soundsBb/Bb.ogg")
  73.             mixer.music.play()
  74.         elif combo == "F":
  75.             mixer.music.load("sounds/soundsF/F.ogg")
  76.             mixer.music.play()
  77.         elif combo == "G":
  78.             mixer.music.load("sounds/soundsG/G.ogg")
  79.             mixer.music.play()
  80.         elif combo == "D":
  81.             mixer.music.load("sounds/soundsD/D.ogg")
  82.             mixer.music.play()
  83.         elif combo == "A":
  84.             mixer.music.load("sounds/soundsA/A.ogg")
  85.             mixer.music.play()
  86.         elif combo == "E":
  87.             mixer.music.load("sounds/soundsE/E.ogg")
  88.             mixer.music.play()
  89.         elif combo == "B":
  90.             mixer.music.load("sounds/soundsB/B.ogg")
  91.             mixer.music.play()
  92.         elif combo == "F#":
  93.             mixer.music.load("sounds/soundsF#/Gb.ogg")
  94.             mixer.music.play()
  95.         else:
  96.             mixer.music.load("sounds/soundsC/C.ogg")
  97.             mixer.music.play()
  98.  
  99.     def play_sound_two(self):
  100.         mixer.init()
  101.         combo = self.ui.comboBox.currentText()
  102.         if combo == "Gb":
  103.             mixer.music.load("sounds/soundsGb/Abm.ogg")
  104.             mixer.music.play()
  105.         elif combo == "Db":
  106.             mixer.music.load("sounds/soundsDb/Ebm.ogg")
  107.             mixer.music.play()
  108.         elif combo == "Ab":
  109.             mixer.music.load("sounds/soundsAb/Bbm.ogg")
  110.             mixer.music.play()
  111.         elif combo == "Eb":
  112.             mixer.music.load("sounds/soundsEb/Fm.ogg")
  113.             mixer.music.play()
  114.         elif combo == "Bb":
  115.             mixer.music.load("sounds/soundsBb/Cm.ogg")
  116.             mixer.music.play()
  117.         elif combo == "F":
  118.             mixer.music.load("sounds/soundsF/Gm.ogg")
  119.             mixer.music.play()
  120.         elif combo == "G":
  121.             mixer.music.load("sounds/soundsG/Am.ogg")
  122.             mixer.music.play()
  123.         elif combo == "D":
  124.             mixer.music.load("sounds/soundsD/Em.ogg")
  125.             mixer.music.play()
  126.         elif combo == "A":
  127.             mixer.music.load("sounds/soundsA/Bm.ogg")
  128.             mixer.music.play()
  129.         elif combo == "E":
  130.             mixer.music.load("sounds/soundsE/F#m.ogg")
  131.             mixer.music.play()
  132.         elif combo == "B":
  133.             mixer.music.load("sounds/soundsB/C#m.ogg")
  134.             mixer.music.play()
  135.         elif combo == "F#":
  136.             mixer.music.load("sounds/soundsF#/Abm.ogg")
  137.             mixer.music.play()
  138.         else:
  139.             mixer.music.load("sounds/soundsC/Dm.ogg")
  140.             mixer.music.play()
  141.  
  142.     def play_sound_three(self):
  143.         mixer.init()
  144.         combo = self.ui.comboBox.currentText()
  145.         if combo == "Gb":
  146.             mixer.music.load("sounds/soundsGb/Bbm.ogg")
  147.             mixer.music.play()
  148.         elif combo == "Db":
  149.             mixer.music.load("sounds/soundsDb/Fm.ogg")
  150.             mixer.music.play()
  151.         elif combo == "Ab":
  152.             mixer.music.load("sounds/soundsAb/Cm.ogg")
  153.             mixer.music.play()
  154.         elif combo == "Eb":
  155.             mixer.music.load("sounds/soundsEb/Gm.ogg")
  156.             mixer.music.play()
  157.         elif combo == "Bb":
  158.             mixer.music.load("sounds/soundsBb/Dm.ogg")
  159.             mixer.music.play()
  160.         elif combo == "F":
  161.             mixer.music.load("sounds/soundsF/Am.ogg")
  162.             mixer.music.play()
  163.         elif combo == "G":
  164.             mixer.music.load("sounds/soundsG/Bm.ogg")
  165.             mixer.music.play()
  166.         elif combo == "D":
  167.             mixer.music.load("sounds/soundsD/F#m.ogg")
  168.             mixer.music.play()
  169.         elif combo == "A":
  170.             mixer.music.load("sounds/soundsA/C#m.ogg")
  171.             mixer.music.play()
  172.         elif combo == "E":
  173.             mixer.music.load("sounds/soundsE/G#m.ogg")
  174.             mixer.music.play()
  175.         elif combo == "B":
  176.             mixer.music.load("sounds/soundsB/D#m.ogg")
  177.             mixer.music.play()
  178.         elif combo == "F#":
  179.             mixer.music.load("sounds/soundsF#/Bbm.ogg")
  180.             mixer.music.play()
  181.         else:
  182.             mixer.music.load("sounds/soundsC/Em.ogg")
  183.             mixer.music.play()
  184.  
  185.     def play_sound_four(self):
  186.         mixer.init()
  187.         combo = self.ui.comboBox.currentText()
  188.         if combo == "Gb":
  189.             mixer.music.load("sounds/soundsGb/B.ogg")
  190.             mixer.music.play()
  191.         elif combo == "Db":
  192.             mixer.music.load("sounds/soundsDb/Gb.ogg")
  193.             mixer.music.play()
  194.         elif combo == "Ab":
  195.             mixer.music.load("sounds/soundsAb/Db.ogg")
  196.             mixer.music.play()
  197.         elif combo == "Eb":
  198.             mixer.music.load("sounds/soundsEb/Ab.ogg")
  199.             mixer.music.play()
  200.         elif combo == "Bb":
  201.             mixer.music.load("sounds/soundsBb/Eb.ogg")
  202.             mixer.music.play()
  203.         elif combo == "F":
  204.             mixer.music.load("sounds/soundsF/Bb.ogg")
  205.             mixer.music.play()
  206.         elif combo == "G":
  207.             mixer.music.load("sounds/soundsG/C.ogg")
  208.             mixer.music.play()
  209.         elif combo == "D":
  210.             mixer.music.load("sounds/soundsD/G.ogg")
  211.             mixer.music.play()
  212.         elif combo == "A":
  213.             mixer.music.load("sounds/soundsA/D.ogg")
  214.             mixer.music.play()
  215.         elif combo == "E":
  216.             mixer.music.load("sounds/soundsE/A.ogg")
  217.             mixer.music.play()
  218.         elif combo == "B":
  219.             mixer.music.load("sounds/soundsB/E.ogg")
  220.             mixer.music.play()
  221.         elif combo == "F#":
  222.             mixer.music.load("sounds/soundsF#/B.ogg")
  223.             mixer.music.play()
  224.         else:
  225.             mixer.music.load("sounds/soundsC/F.ogg")
  226.             mixer.music.play()
  227.  
  228.     def play_sound_five(self):
  229.         mixer.init()
  230.         combo = self.ui.comboBox.currentText()
  231.         if combo == "Gb":
  232.             mixer.music.load("sounds/soundsGb/Db.ogg")
  233.             mixer.music.play()
  234.         elif combo == "Db":
  235.             mixer.music.load("sounds/soundsDb/Ab.ogg")
  236.             mixer.music.play()
  237.         elif combo == "Ab":
  238.             mixer.music.load("sounds/soundsAb/Eb.ogg")
  239.             mixer.music.play()
  240.         elif combo == "Eb":
  241.             mixer.music.load("sounds/soundsEb/Bb.ogg")
  242.             mixer.music.play()
  243.         elif combo == "Bb":
  244.             mixer.music.load("sounds/soundsBb/F.ogg")
  245.             mixer.music.play()
  246.         elif combo == "F":
  247.             mixer.music.load("sounds/soundsF/C.ogg")
  248.             mixer.music.play()
  249.         elif combo == "G":
  250.             mixer.music.load("sounds/soundsG/D.ogg")
  251.             mixer.music.play()
  252.         elif combo == "D":
  253.             mixer.music.load("sounds/soundsD/A.ogg")
  254.             mixer.music.play()
  255.         elif combo == "A":
  256.             mixer.music.load("sounds/soundsA/E.ogg")
  257.             mixer.music.play()
  258.         elif combo == "E":
  259.             mixer.music.load("sounds/soundsE/B.ogg")
  260.             mixer.music.play()
  261.         elif combo == "B":
  262.             mixer.music.load("sounds/soundsB/F#.ogg")
  263.             mixer.music.play()
  264.         elif combo == "F#":
  265.             mixer.music.load("sounds/soundsF#/Db.ogg")
  266.             mixer.music.play()
  267.         else:
  268.             mixer.music.load("sounds/soundsC/G.ogg")
  269.             mixer.music.play()
  270.  
  271.     def play_sound_six(self):
  272.         mixer.init()
  273.         combo = self.ui.comboBox.currentText()
  274.         if combo == "Gb":
  275.             mixer.music.load("sounds/soundsGb/Ebm.ogg")
  276.             mixer.music.play()
  277.         elif combo == "Db":
  278.             mixer.music.load("sounds/soundsDb/Bbm.ogg")
  279.             mixer.music.play()
  280.         elif combo == "Ab":
  281.             mixer.music.load("sounds/soundsAb/Fm.ogg")
  282.             mixer.music.play()
  283.         elif combo == "Eb":
  284.             mixer.music.load("sounds/soundsEb/Cm.ogg")
  285.             mixer.music.play()
  286.         elif combo == "Bb":
  287.             mixer.music.load("sounds/soundsBb/Gm.ogg")
  288.             mixer.music.play()
  289.         elif combo == "F":
  290.             mixer.music.load("sounds/soundsF/Dm.ogg")
  291.             mixer.music.play()
  292.         elif combo == "G":
  293.             mixer.music.load("sounds/soundsG/Em.ogg")
  294.             mixer.music.play()
  295.         elif combo == "D":
  296.             mixer.music.load("sounds/soundsD/Bm.ogg")
  297.             mixer.music.play()
  298.         elif combo == "A":
  299.             mixer.music.load("sounds/soundsA/F#m.ogg")
  300.             mixer.music.play()
  301.         elif combo == "E":
  302.             mixer.music.load("sounds/soundsE/C#m.ogg")
  303.             mixer.music.play()
  304.         elif combo == "B":
  305.             mixer.music.load("sounds/soundsB/G#m.ogg")
  306.             mixer.music.play()
  307.         elif combo == "F#":
  308.             mixer.music.load("sounds/soundsF#/Ebm.ogg")
  309.             mixer.music.play()
  310.         else:
  311.             mixer.music.load("sounds/soundsC/Am.ogg")
  312.             mixer.music.play()
  313.  
  314.     def play_sound_seven(self):
  315.         mixer.init()
  316.         combo = self.ui.comboBox.currentText()
  317.         if combo == "Gb":
  318.             mixer.music.load("sounds/soundsGb/Fdim.ogg")
  319.             mixer.music.play()
  320.         elif combo == "Db":
  321.             mixer.music.load("sounds/soundsDb/Cdim.ogg")
  322.             mixer.music.play()
  323.         elif combo == "Ab":
  324.             mixer.music.load("sounds/soundsAb/Gdim.ogg")
  325.             mixer.music.play()
  326.         elif combo == "Eb":
  327.             mixer.music.load("sounds/soundsEb/Ddim.ogg")
  328.             mixer.music.play()
  329.         elif combo == "Bb":
  330.             mixer.music.load("sounds/soundsBb/Adim.ogg")
  331.             mixer.music.play()
  332.         elif combo == "F":
  333.             mixer.music.load("sounds/soundsF/Edim.ogg")
  334.             mixer.music.play()
  335.         elif combo == "G":
  336.             mixer.music.load("sounds/soundsG/F#dim.ogg")
  337.             mixer.music.play()
  338.         elif combo == "D":
  339.             mixer.music.load("sounds/soundsD/C#dim.ogg")
  340.             mixer.music.play()
  341.         elif combo == "A":
  342.             mixer.music.load("sounds/soundsA/G#dim.ogg")
  343.             mixer.music.play()
  344.         elif combo == "E":
  345.             mixer.music.load("sounds/soundsE/D#dim.ogg")
  346.             mixer.music.play()
  347.         elif combo == "B":
  348.             mixer.music.load("sounds/soundsB/A#dim.ogg")
  349.             mixer.music.play()
  350.         elif combo == "F#":
  351.             mixer.music.load("sounds/soundsF#/Fdim.ogg")
  352.             mixer.music.play()
  353.         else:
  354.             mixer.music.load("sounds/soundsC/Bdim.ogg")
  355.             mixer.music.play()
  356.  
  357.         #*** Database Code ***------------------------------
  358.     def sql_delete_row(self):
  359.         if self.model:
  360.             self.model.removeRow(self.tableview.currentIndex().row())
  361.         else:
  362.             self.sql_tableview_model()
  363.  
  364.     def sql_add_row(self):
  365.         if self.model:
  366.             self.model.insertRows(self.model.rowCount(), 1)
  367.         else:
  368.             self.sql_tableview_model()
  369.  
  370.     def sql_tableview_model(self):
  371.         db = QtSql.QSqlDatabase.addDatabase('QSQLITE')
  372.         db.setDatabaseName('KEYS.db')
  373.  
  374.         tableview = self.table.tableView
  375.         tableview.columnWidth(4)
  376.  
  377.         self.model = QtSql.QSqlTableModel()
  378.         tableview.setModel(self.model)
  379.  
  380.         self.model.setTable('KEYS')
  381.         self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange)
  382.         self.model.select()
  383.         self.model.setHeaderData(0, QtCore.Qt.Horizontal, "ID")
  384.         self.model.setHeaderData(1, QtCore.Qt.Horizontal, 'I')
  385.         self.model.setHeaderData(3, QtCore.Qt.Horizontal, "II")
  386.         self.model.setHeaderData(4, QtCore.Qt.Horizontal, "III")
  387.         self.model.setHeaderData(5, QtCore.Qt.Horizontal, "IV")
  388.         self.model.setHeaderData(6, QtCore.Qt.Horizontal, "V")
  389.         self.model.setHeaderData(7, QtCore.Qt.Horizontal, "VI")
  390.         self.model.setHeaderData(8, QtCore.Qt.Horizontal, "VII")
  391.         tableview.hideColumn(0)
  392.  
  393.  
  394.         #******* Initialize db winddow *********#
  395.     def print_data(self):
  396.         sqlite_file = 'KEYS.db'
  397.         conn = sqlite3.connect(sqlite_file)
  398.         cursor = conn.cursor()
  399.  
  400.         cursor.execute("SELECT * FROM KEYS ORDER BY ID")
  401.         all_rows = cursor.fetchall()
  402.         pprint(all_rows)
  403.  
  404.         conn.commit()
  405.         conn.close()
  406.  
  407.  
  408.         #******** Print db ********#
  409.     def create_key_db(self):
  410.         db = QtSql.QSqlDatabase.addDatabase('QSQLITE')
  411.         db.setDatabaseName('KEYS.db')
  412.         db.open()
  413.  
  414.         query = QtSql.QSqlQuery()
  415.  
  416.         query.exec_("create table KEYS(ID int primary key, "
  417.                     "I varchar(2),"
  418.                     "II varchar(2),"
  419.                     "III varchar(2),"
  420.                     "IV varchar(2),"
  421.                     "V varchar(2),"
  422.                     "VI varchar(2),"
  423.                     "VII varchar(2))")
  424.         query.exec_("insert into KEYS values(1, 'Gb', 'Ab', 'Bb', 'Cb', 'Db', 'Eb','F')")
  425.         query.exec_("insert into KEYS values(2, 'Db', 'Eb','F', 'Gb', 'Ab', 'Bb', 'C')")
  426.         query.exec_("insert into KEYS values(3, 'Ab', 'Bb', 'C', 'Db', 'Eb','F', 'G')")
  427.         query.exec_("insert into KEYS values(4, 'Eb','F', 'G', 'Ab', 'Bb', 'C', 'D')")
  428.         query.exec_("insert into KEYS values(5, 'Bb', 'C', 'D', 'Eb','F', 'G', 'A')")
  429.         query.exec_("insert into KEYS values(6, 'F', 'G', 'A', 'Bb', 'C', 'D', 'E')")
  430.         query.exec_("insert into KEYS values(7, 'C', 'D', 'E', 'F', 'G', 'A', 'B')")
  431.         query.exec_("insert into KEYS values(8, 'G', 'A', 'B', 'C', 'D', 'E', 'F#')")
  432.         query.exec_("insert into KEYS values(9, 'D', 'E', 'F#', 'G', 'A', 'B', 'C#')")
  433.         query.exec_("insert into KEYS values(10, 'A', 'B', 'C#', 'D', 'E', 'F#', 'G#')")
  434.         query.exec_("insert into KEYS values(11, 'E', 'F#', 'G#', 'A', 'B', 'C#', 'D#')")
  435.         query.exec_("insert into KEYS values(12, 'B', 'C#', 'D#', 'E', 'F#', 'G#', 'A#')")
  436.         query.exec_("insert into KEYS values(13, 'F#', 'G#', 'A#', 'B', 'C#', 'D#', 'E#')")
  437.  
  438.  
  439.     #********* play sound when keyboard key is pressed **********#
  440.     #Ctrl A - J will handle this feature
  441.  
  442.  
  443. if __name__=="__main__":
  444.     MusicApp()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement