Path: csiph.com!x330-a1.tempe.blueboxinc.net!feeder1.hal-mli.net!feeder.news-service.com!news.albasani.net!news.america.net!news-out.news.tds.net!newsreading01.news.tds.net!86597e80!not-for-mail From: "=?ISO-8859-1?Q?Martin_G=E" <=?iso-8859-1?q?martin_g=e@THRWHITE.remove-dii-this> Subject: Re: HTML Editor Message-ID: X-Comment-To: comp.lang.java.gui Newsgroups: comp.lang.java.gui In-Reply-To: <0T3lfmoqIvfd@uni.chka.de> References: <0T3lfmoqIvfd@uni.chka.de> Content-Type: text/plain; charset=IBM437 Content-Transfer-Encoding: 8bit X-Gateway: time.synchro.net [Synchronet 3.15a-Win32 NewsLink 1.92] Lines: 87 Date: Wed, 27 Apr 2011 15:26:22 GMT NNTP-Posting-Host: 96.60.20.240 X-Complaints-To: news@tds.net X-Trace: newsreading01.news.tds.net 1303917982 96.60.20.240 (Wed, 27 Apr 2011 10:26:22 CDT) NNTP-Posting-Date: Wed, 27 Apr 2011 10:26:22 CDT Organization: TDS.net Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.gui:237 To: comp.lang.java.gui Christian Kaufhold schrieb: > Martin G??ckler wrote: > >> void makeParagraph(HTML.Tag paragraphType) > > package access? > >> { >> if( textEditor instanceof JEditorPane ) >> { >> HTMLDocument htmlDoc = (HTMLDocument) textEditor.getDocument(); >> int position = textEditor.getSelectionStart(); >> Element elem = htmlDoc.getParagraphElement(position); > >> SimpleAttributeSet newType = new SimpleAttributeSet( > > >> elem.getAttributes() > > Note: I was confused about, this -- for an 'false' argument (add instead of > set, you don't need this). > >> ); >> newType.addAttribute( AttributeSet.NameAttribute, paragraphType ); >> htmlDoc.setParagraphAttributes(position, 0, newType, false ); > > Then you can also use > > htmlDoc.setParagraphAttributes(textEditor.getSelectionStart(), textEditor.getSelectionEnd() - textEditor.getSelectionStart(), newType, false); > > > > Christian Christian, Thank You again. That's an excellent idea. And "Yes" you are right, the wrong boolean parameter replace was a little bit confusing. Now, I can change the type of more than one paragraph at a time without loosing any other attribute: void makeParagraph(HTML.Tag paragraphType) { if( textEditor instanceof JEditorPane ) { HTMLDocument htmlDoc = (HTMLDocument) textEditor.getDocument(); int start = textEditor.getSelectionStart(); int end = textEditor.getSelectionEnd(); SimpleAttributeSet newType = new SimpleAttributeSet(); newType.addAttribute( AttributeSet.NameAttribute, paragraphType ); htmlDoc.setParagraphAttributes(start, end-start, newType, false ); } } For example I got this change from

hello world

hello world

to

hello world

hello world

Yeah, yeah, yeah. Excellent! 8-))))))) (= big smile) Have a nice day and thank you again. Martin -- Firma/Company: CRESD GmbH Phone: +49-89-65 30 95 63 Fax: +49-89-65 30 95 64 WWW: http://www.cresd.de S-Mail: Freibadstr. 14, D-81543 Mnnchen PGP-Key: http://www.cresd.de/edv/pgpkey.txt Open BC (Einladung) http://www.openbc.com/go/invita/4561755 --- * Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet! --- Synchronet 3.15a-Win32 NewsLink 1.92 Time Warp of the Future BBS - telnet://time.synchro.net:24