Imam dosta iskustva sa C#-om, ovo sto sada radim je prvi ozbiljniji program koji pisem u Javi i naisao sam na jednu dilemu. Voleo bih da cujem Vase misljenje jer ne zelim da posle lupam glavom o zid zbog lose odluke :)
Imam jedan program, koji na nekom glavnom panelu drzi nekoliko mojih, custom, kontrola. Sve te moje kontrole su izvedene iz klase jPanel, i svaka od njih u sebi sadrzi jos nekoliko, takodje mojih, custom, jLabel-a. Pokusavajuci da serijalizujem program, shvatio sam da mi ta "genetska" povezanost mojih klasa sa swingom otezava stvari. Resio sam da potpuno razdvojim svoj kod od tih swingovih nadklasa jer od celog tog panela koji nasledjujem, ja koristim samo njegovo "componentPopupMenu" svojstvo, "Location" i "Dimension" svojstva, i mouse listenere (ne racunam to sto taj jPanel ima i kontejnersko svojstvo za drzanje onih manjih kontrola).
Moj problem je to sto, ako svoju klasu pretvorim iz fizicke kontrole (prakticno jPanela koja se dodaje na glavni panel pomocu "add()", a uklanja pomocu "remove()") u kontrolu koja ce se na panel ISCRTAVATI, kako bih ja onda ucinio da moja kontrola generise MOUSE dogadjaje kada se kursor prevlaci, klikne i sl?
U sustini, pitanje je da li ja neku obicnu klasu mogu bezbolno da osposobim da generise iste MOUSE dogadjaje kao sto to rade ostale kontrole?
Da li se meni isplati (sto se truda i vremena tice) da zbog principa serijalizacije svoje klase, izvedene iz jPanela, pretvorim u obicne klase a da im omogucim generisanje dogadjaja onako kako to rade obicne kontrole? Kada korisnik misem udje u pravougaonik koji definise dimenzije mog objekta, da on pokrene "mouseEntered" dogadjaj na koji drugi objekti mogu da se "nakace"?