Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pasek narzedzi, w ktorym dodatki moga sie rejestrowac
q.michal
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 1
Dołączył: 24.12.2013

Ostrzeżenie: (0%)
-----


Czesc wszystkim


Chcialbym stworzyc pasek narzedzi, ktory wyswietlalby sie na okreslonych stronach. Mialby mozliwosc dodawania w nim tabow, a w tych zakladkach przyciskow, pod ktore bylyby podlaczone okreslone akcje. Chcialbym takze dac mozliwosc dodatkom rejestrowania swoich kart i przyciskow. Dzieki temu, na takim pasku mozna byloby znalezc chociazby przycisk do edycji artykulu, jezeli dana podstrona bylaby wlasnie zaladowana.

Zastanawiam sie jak to rozwiazac. Z jednej strony wyobrazam sobie, ze najpierw tworzylbym pasek i z niego tworzyl karte:

  1. $toolbar = new Toolbar();
  2. $tab1 = $toolbar->addTab('Tab1 name');
  3. $tab2 = $toolbar->addTab('Tab2 name');


Nastepnie na jednej z takich zakladek moglbym dodawac przyciski i separatory:

  1. $tab1->addButton('icon1.png', 'Button1', 'http://wp.pl/');
  2. $tab1->addSeparator();
  3. $tab1->addButton('icon2.png', 'Button2', 'http://onet.pl/');


Zapis wydaje sie byc czytelny i zrozumialy. A moze jednak, powinienem uznac ze kazdy element takiego toolbara jest obiektem i podejsc do problemu od 2 strony, tj najpierw stworzyc, przyciski, pozniej umiescic je na tabie, ktory ostatecznie zaalokowac na pasku narzedzi?

  1. $tab1 = new Toolbar\Tab();
  2. $tab2 = new Toolbar\Tab();
  3.  
  4. $tab1->addElement(new Toolbar\Button('icon1.png', 'Button1', 'http://wp.pl/'));
  5. $tab1->addElement(new Toolbar\Separator());
  6. $tab1->addElement(new Toolbar\Button('icon2.png', 'Button2', 'http://onet.pl/'));
  7.  
  8. $toolbar = new Toolbar();
  9. $toolbar->addTab($tab1);
  10. $toolbar->addTab($tab2);



Ktora opcja jest wg Was lepsza i dlaczego? A moze polecicie jeszcze inne rozwiazanie?
Docelowo, chcialbym aby na pasku narzedzi mogly znalezc sie tylko zakladki, a na kazdej zakladce mogly byc umieszczone:
* przyciski,
* listy rozwijane
* przyciski z rozwijanymi menu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
gitbejbe
post
Post #2





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

Ostrzeżenie: (0%)
-----


to przede wszystkim zastanów się na podstawie czego będzie go generował. Jeśli użytkownik sobie skonfiguruje jakieś tam przyciski, to rozumiem, że będzie miał możliwość zapisania tej konfiguracji. Skoro pojawia się zapis, to siłą rzeczy musisz wrzucić do bazy tą konfiguracje. Zrobisz to zapewne w ten sposób , że użytkownik o ID jakiś tam, ma np

  1. ['buttons' =>
  2. [ 1 => [ 'img' => 'costam.png',
  3. 'url' => 'www.costam.pl',
  4. 'action' => 'redirect',
  5. ....
  6. ],
  7. 2 -> [...]
  8.  
  9. ]
  10. ]


jeśli użytkownik ponownie wejdzie na stronę, na której powinien zobaczyć swoją konfiguracje, to wybierasz z bazy zapis, w php'ie go obrabiasz dla widoku i tyle. Tak więc Twoja klasę - jeśli uważasz ją za konieczną, napisałbym w kierunku obróbki dla gotowego zestawu danych. Wrzucasz całą konfiguracje przy tworzeniu obiektu, a klasa sama wszystko obrabia wg Twoich założeń i zwraca Ci gotowe dane dla widoku, które wyświetlisz sobie gdzie i jak chcesz. Proponuje rozbić klasę na abstrakcyjną - główną, oraz klasy po niej dziedziczące - czyli wszystkie elementy, które toolbar będzie posiadał. Klasa główna będzie rozpoznawać po wprowadzonych danych, jakie klasy dziedziczące wywołać. W ten sposób łatwo będziesz mógł dodawać nowe elementy jak i modyfikować już istniejące.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 06:53