Aktywne Wpisy
wykop +40
Wykopowicze (ツ)
1. Jak mogliście już zauważyć, na górnej belce serwisu pojawiło się - dobrze Wam znane - czerwone serduszko WOŚP! Wykop, jak co roku, wspiera @fundacjawosp W tym roku również zachęcamy Was do wpłat na rzecz Fundacji. W komentarzach do wpłat możecie oczywiście pozdrawiać Michała (⌐ ͡■ ͜ʖ ͡■)
Link: https://eskarbonka.wosp.org.pl/wykop (ʘ‿ʘ)
2. Obie nasze aplikacje (Android/iOS) doczekały się kolejnych aktualizacji.
1. Jak mogliście już zauważyć, na górnej belce serwisu pojawiło się - dobrze Wam znane - czerwone serduszko WOŚP! Wykop, jak co roku, wspiera @fundacjawosp W tym roku również zachęcamy Was do wpłat na rzecz Fundacji. W komentarzach do wpłat możecie oczywiście pozdrawiać Michała (⌐ ͡■ ͜ʖ ͡■)
Link: https://eskarbonka.wosp.org.pl/wykop (ʘ‿ʘ)
2. Obie nasze aplikacje (Android/iOS) doczekały się kolejnych aktualizacji.
ish_waw +462
Mam problem z formatowaniem tekstu w JTextPane. Generalnie piszę edytor tekstu z GUI i formatowanie sprawia mi ból (tak jak korzystanie ze swinga, ale tego nie obejdę).
Otóż robię sobie przyciski do formatowania, które reagują na zaznaczony tekst i w zależności od przekazanych interfejsów, wybierają odpowiednie formatowanie.
Metody odpowiadające za aplikowanie/usuwanie formatowania:
https://github.com/Viters/TextEditor/blob/master/src/FormatTextEditor.java#L17
Konstruowanie przycisków:
https://github.com/Viters/TextEditor/blob/master/src/OptionsToolBar.java#L87
Przykładowa implementacja przycisku (pogrubienie):
https://github.com/Viters/TextEditor/blob/master/src/OptionsToolBar.java#L33
Mój problem jest taki:
Gdy zaznaczę tekst i nacisnę pogrubienie - to tekst się pogrubia. Gdy zaznaczę od nowa i kliknę pogrubienie - to jest ono usuwane. Ale gdy zaznaczę tekst i kliknę dwa razy pogrubienie - to się ono nie usunie. Problem jest taki, że jeżeli nie "odświeżę" zaznaczenia, to StyleCosntants.isBold(AttributeSet) zwraca mi niezaktualizowaną wartość. Tzn. jeżeli przed zaznaczeniem nie było pogrubione, to zwróci false i pogrubienie nastąpi. Ale potem cały czas będzie zwracać false, więc nie usunie pogrubienia, dopóki nie odświeżę zaznaczenia.
Wtf?
Ogółem rozwiązałem problem, korzystając z wbudowanego w swinga StyledEditorKit.BoldAction(). Najwyraźniej za daleko mierzyłem próbując samemu coś napisać w nim.