Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<string>
- using namespace std;
- class chord
- {
- public:
- string Name;
- string Chart;
- char chordBase;
- void ShowObject();
- };
- class fav : private chord
- {
- public:
- void ShowFav();
- void CopyChord(int id);
- };
- #include "chordtab.h"
- fav* faves[148];
- int favcount=0;
- void chord::ShowObject()
- {
- cout<<"\t"<<Name<<endl<<Chart<<endl;
- }
- void fav::ShowFav()
- {
- ShowObject();
- }
- void fav::CopyChord(int id)
- {
- Name=chords[id].Name;
- Chart=chords[id].Chart;
- chordBase=chords[id].chordBase;
- }
- void MainMenu();
- void SelectMenu();
- void SearchMenu();
- void Favorite(int id);
- void ShowFaves();
- void Info();
- //////////////////////////////////////////////
- int main()
- {
- MainMenu();
- return 0;
- }
- ///////////////////////////////////////////////
- void MainMenu()
- {
- cout << string(50, '\n');
- cout<<"Chwytak v0.15\n\nMenu glowne:\n1. Wyswietl chwyty\n2. Wyszukaj/dodaj do ulubionych\n3. Wyswietl ulubione\n4. Informacje\n5. Wyjscie\n\n";
- //fflush(stdin);
- char x;
- cin.get(x);
- if(x>='1'&&x<='5')
- {
- switch(x)
- {
- case '1':
- SelectMenu();
- break;
- case '2':
- SearchMenu();
- break;
- case '3':
- ShowFaves();
- break;
- case '4':
- Info();
- case '5':
- return;
- }
- }
- else MainMenu();
- }
- ///////////////////////////////////////////////
- void SelectMenu()
- {
- cout << string(50, '\n');
- cout<<"Wybierz ktore chwyty pokazac:\n1. C\n2. D\n3. E\n4. F\n5. G\n6. A\n7. B\n8. H\n9. Powrot\n\n";
- //fflush(stdin);
- char x;
- cin.get(x);
- if(x>='1'&&x<='9')
- {
- switch(x)
- {
- case '1':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='C')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '2':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='D')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '3':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='E')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '4':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='F')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '5':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='G')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '6':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='A')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '7':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='B')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '8':
- {
- for(int y=0;y<=148;y++)
- {
- if(chords[y].chordBase=='H')
- chords[y].ShowObject();
- }
- cout<<"q by wyjsc, dowolny klawisz by powrocic."<<endl;
- //fflush(stdin);
- char z;
- cin>>z;
- if(z=='q')return;
- else SelectMenu();
- break;
- }
- case '9':
- MainMenu();
- break;
- }
- }
- else SelectMenu();
- }
- ///////////////////////////////////////////////
- void SearchMenu()
- {
- cout << string(50, '\n');
- cout<<"Prosze wpisac nazwe chwytu"<<endl;
- string x;
- int count=0;
- int save=0;
- cin>>x;
- for(int y=0;y<=147;y++)
- {
- if(chords[y].Name==x)
- {
- chords[y].ShowObject();
- count++;
- save=y;
- }
- }
- if(count==0)cout<<"\n\nNic nie znaleziono.\n\nq by wyjsc, dowolny klawisz by wyszukac ponownie.\n";
- else cout<<"\nf by dodac do ulubionych, q by wyjsc, dowolny klawisz by wyszukac ponownie\n";
- char z;
- cin>>z;
- switch(z)
- {
- case 'f':
- Favorite(save);
- case 'q':
- MainMenu();
- break;
- default:
- SearchMenu();
- break;
- }
- }
- //////////////////////////////////////
- void Favorite(int id)
- {
- faves[favcount]= new fav();
- faves[favcount]->CopyChord(id);
- favcount++;
- }
- //////////////////////////////////////
- void ShowFaves()
- {
- cout << string(50, '\n');
- cout<<"Chwyty dodane do ulubionych:\n\n\n";
- if(favcount==0)
- {
- cout<<"Brak chwytow w ulubionych. Dodaj jakies przez modul wyszukiwania.";
- }
- else
- {
- for(int i=0;i<favcount;i++)
- {
- faves[i]->ShowFav();
- }
- }
- cout<<"\n\nq by wyjsc, dowolny klawisz by powrocic.";
- char z;
- cin>>z;
- switch(z)
- {
- case 'q':
- return;
- default:
- MainMenu();
- break;
- }
- }
- //////////////////////////////////
- void Info()
- {
- cout << string(50, '\n');
- cout<<"\tChwytak - podreczny wyswietlacz chwytow gitarowych.\n\n2012 Jedrzej Borowski - 195588\n\nPoitechnika Wroclawska\nProgramowanie Obiektowe, dr inz. Ryszard Jagielnicki\n\n\n\n\n\n\n\nCredits:\nJedrzej Borowski - projekt, kod\nDominika Oles - konwersja schematow, wsparcie moralne\n\nWszystkie uzyte schematy chwytow sa wlasnoscia serwisu chords.pl i zostaly wykorzystane wylacznie w celach edukacyjnych.\n\nq by wyjsc, dowolny klawisz by powrocic.";
- char z;
- cin>>z;
- switch(z)
- {
- case 'q':
- return;
- default:
- MainMenu();
- break;
- }
- }
Add Comment
Please, Sign In to add comment