It is currently Wed Jul 24, 2019 9:54 am

All times are UTC + 1 hour




Post new topic Reply to topic  [ 20 posts ]  Go to page Previous  1, 2
Author Message
 Post subject: Re: [IDE Tool] ChangeTheme color switcher
PostPosted: Tue Jun 11, 2019 1:32 pm 
Offline
Addict
Addict
User avatar

Joined: Thu Feb 09, 2006 11:27 pm
Posts: 2430
I've enabled the "bolding" option in the preferences, so keywords like procedure, if, for, next, etc. are shown bold. As soon I attach the new theme colors (just using the -a option), no words are shown bold anymore.


Top
 Profile  
Reply with quote  
 Post subject: Re: [IDE Tool] ChangeTheme color switcher
PostPosted: Tue Jun 11, 2019 5:51 pm 
Offline
Addict
Addict
User avatar

Joined: Tue Dec 23, 2003 3:54 am
Posts: 1627
Fixed, please download and try again!


Top
 Profile  
Reply with quote  
 Post subject: Re: [IDE Tool] ChangeTheme color switcher
PostPosted: Tue Jun 18, 2019 3:45 pm 
Offline
Addict
Addict
User avatar

Joined: Thu Feb 09, 2006 11:27 pm
Posts: 2430
kenmo wrote:
Fixed, please download and try again!

Thanks again, looks even better...
...the only thing which is a bit weird that some tabs in the IDE are changed as wanted but others only change the theme for the cursor line only. The update is only done after resizing the purebasic window.

I've added a RedrawWindow_(*Window,#Null,#Null,#RDW_ERASE|#RDW_INVALIDATE) now at the end which seems to work.

Here's the switcher tool for the solarized themes only:
Code:
; Define

   #UseControlKeys=   0
   #MaxThemes=      1
   #DataSize=         SizeOf(Integer)

   DataSection
      Themes:
      Data.i ?SolarizedDark
      Data.i ?SolarizedLight

      SolarizedDark:
      Data.i 60
      Data.i 2052,$20,$362B00;    BackgroundColor
      Data.i 2050,0,0;
      Data.i 2051,1,$969483;    NormalTextColor
      Data.i 2052,1,$362B00;    BackgroundColor
      Data.i 2051,2,$89B5;    BasicKeywordColor
      Data.i 2052,2,$362B00;    BackgroundColor
      Data.i 2051,3,$756E58;    CommentColor
      Data.i 2052,3,$362B00;    BackgroundColor
      Data.i 2051,4,$164BCB;    ConstantColor
      Data.i 2052,4,$362B00;    BackgroundColor
      Data.i 2051,5,$98A12A;    StringColor
      Data.i 2052,5,$362B00;    BackgroundColor
      Data.i 2051,6,$D28B26;    PureKeywordColor
      Data.i 2052,6,$362B00;    BackgroundColor
      Data.i 2051,7,$C4716C;    ASMKeywordColor
      Data.i 2052,7,$362B00;    BackgroundColor
      Data.i 2051,8,$969483;    OperatorColor
      Data.i 2052,8,$362B00;    BackgroundColor
      Data.i 2051,9,$969483;    StructureColor
      Data.i 2052,9,$362B00;    BackgroundColor
      Data.i 2051,$A,$98A12A;    NumberColor
      Data.i 2052,$A,$362B00;    BackgroundColor
      Data.i 2051,$B,$A1A193;    PointerColor
      Data.i 2052,$B,$362B00;    BackgroundColor
      Data.i 2051,$C,$969483;    SeparatorColor
      Data.i 2052,$C,$362B00;    BackgroundColor
      Data.i 2051,$D,$8236D3;    LabelColor
      Data.i 2052,$D,$362B00;    BackgroundColor
      Data.i 2051,$E,$969483;    CustomKeywordColor
      Data.i 2052,$E,$362B00;    BackgroundColor
      Data.i 2051,$F,$164BCB;    ModuleColor
      Data.i 2052,$F,$362B00;    BackgroundColor
      Data.i 2051,$10,$2F32DC;    BadBraceColor
      Data.i 2052,$10,$362B00;    BackgroundColor
      Data.i 2051,$21,$969483;    LineNumberColor
      Data.i 2052,$21,$423607;    LineNumberBackColor
      Data.i 2051,$22,$A1A193;    GoodBraceColor
      Data.i 2052,$22,$423607;    CurrentLineColor
      Data.i 2051,$23,$2F32DC;    BadBraceColor
      Data.i 2052,$23,$423607;    CurrentLineColor
      Data.i 2051,$23,$2F32DC;    BadBraceColor
      Data.i 2052,$23,$423607;    CurrentLineColor
      Data.i 2051,$25,$2F32DC;    IndentColor
      Data.i 2052,$25,$362B00;    BackgroundColor
      Data.i 2098,$423607,0;    CurrentLineColor
      Data.i 2068,1,$E3F6FD;    SelectionColor
      Data.i 2067,1,$756E58;    SelectionFrontColor
      Data.i 2082,2,$423607;    SelectionRepeatColor
      Data.i 2069,$969483,0;    CursorColor
      Data.i 2290,1,$423607;    LineNumberBackColor
      Data.i 2291,1,$423607;    LineNumberBackColor
      Data.i 2041,$19,$423607;
      Data.i 2041,$1A,$423607;
      Data.i 2041,$1B,$423607;
      Data.i 2041,$1C,$423607;
      Data.i 2041,$1D,$423607;
      Data.i 2041,$1E,$423607;
      Data.i 2041,$1F,$423607;
      Data.i 2053,2,1;    Bolding
      Data.i 2053,$E,1;    Bolding

      SolarizedLight:
      Data.i 60
      Data.i 2052,$20,$E3F6FD;    BackgroundColor
      Data.i 2050,0,0;
      Data.i 2051,1,$837B65;    NormalTextColor
      Data.i 2052,1,$E3F6FD;    BackgroundColor
      Data.i 2051,2,$89B5;    BasicKeywordColor
      Data.i 2052,2,$E3F6FD;    BackgroundColor
      Data.i 2051,3,$A1A193;    CommentColor
      Data.i 2052,3,$E3F6FD;    BackgroundColor
      Data.i 2051,4,$164BCB;    ConstantColor
      Data.i 2052,4,$E3F6FD;    BackgroundColor
      Data.i 2051,5,$98A12A;    StringColor
      Data.i 2052,5,$E3F6FD;    BackgroundColor
      Data.i 2051,6,$D28B26;    PureKeywordColor
      Data.i 2052,6,$E3F6FD;    BackgroundColor
      Data.i 2051,7,$C4716C;    ASMKeywordColor
      Data.i 2052,7,$E3F6FD;    BackgroundColor
      Data.i 2051,8,$837B65;    OperatorColor
      Data.i 2052,8,$E3F6FD;    BackgroundColor
      Data.i 2051,9,$837B65;    StructureColor
      Data.i 2052,9,$E3F6FD;    BackgroundColor
      Data.i 2051,$A,$98A12A;    NumberColor
      Data.i 2052,$A,$E3F6FD;    BackgroundColor
      Data.i 2051,$B,$756E58;    PointerColor
      Data.i 2052,$B,$E3F6FD;    BackgroundColor
      Data.i 2051,$C,$837B65;    SeparatorColor
      Data.i 2052,$C,$E3F6FD;    BackgroundColor
      Data.i 2051,$D,$8236D3;    LabelColor
      Data.i 2052,$D,$E3F6FD;    BackgroundColor
      Data.i 2051,$E,$837B65;    CustomKeywordColor
      Data.i 2052,$E,$E3F6FD;    BackgroundColor
      Data.i 2051,$F,$164BCB;    ModuleColor
      Data.i 2052,$F,$E3F6FD;    BackgroundColor
      Data.i 2051,$10,$2F32DC;    BadBraceColor
      Data.i 2052,$10,$E3F6FD;    BackgroundColor
      Data.i 2051,$21,$837B65;    LineNumberColor
      Data.i 2052,$21,$D5E8EE;    LineNumberBackColor
      Data.i 2051,$22,$756E58;    GoodBraceColor
      Data.i 2052,$22,$D5E8EE;    CurrentLineColor
      Data.i 2051,$23,$2F32DC;    BadBraceColor
      Data.i 2052,$23,$D5E8EE;    CurrentLineColor
      Data.i 2051,$23,$2F32DC;    BadBraceColor
      Data.i 2052,$23,$D5E8EE;    CurrentLineColor
      Data.i 2051,$25,$2F32DC;    IndentColor
      Data.i 2052,$25,$E3F6FD;    BackgroundColor
      Data.i 2098,$D5E8EE,0;    CurrentLineColor
      Data.i 2068,1,$362B00;    SelectionColor
      Data.i 2067,1,$A1A193;    SelectionFrontColor
      Data.i 2082,2,$D5E8EE;    SelectionRepeatColor
      Data.i 2069,$837B65,0;    CursorColor
      Data.i 2290,1,$D5E8EE;    LineNumberBackColor
      Data.i 2291,1,$D5E8EE;    LineNumberBackColor
      Data.i 2041,$19,$D5E8EE;
      Data.i 2041,$1A,$D5E8EE;
      Data.i 2041,$1B,$D5E8EE;
      Data.i 2041,$1C,$D5E8EE;
      Data.i 2041,$1D,$D5E8EE;
      Data.i 2041,$1E,$D5E8EE;
      Data.i 2041,$1F,$D5E8EE;
      Data.i 2053,2,1;    Bolding
      Data.i 2053,$E,1;    Bolding
   EndDataSection

; EndDefine

CompilerIf #UseControlKeys
   n=((GetKeyState_(#VK_SHIFT)&128)>>7)
CompilerElse
   n=Val(ProgramParameter(0))
CompilerEndIf

If n<0 Or n>#MaxThemes
   n=#MaxThemes
EndIf
*Ptr=PeekI(?Themes+n*#DataSize)

*Scintilla=Val(GetEnvironmentVariable("PB_TOOL_Scintilla"))
If (*Scintilla)

   *Window=Val(GetEnvironmentVariable("PB_TOOL_MainWindow"))
   SendMessage_(*Window,#WM_SETREDRAW,#False,#Null)

   n=PeekI(*Ptr)
   *ptr+#DataSize
   For i=1 To n
      SendMessage_(*Scintilla,PeekI(*Ptr),PeekI(*Ptr+#DataSize),PeekI(*Ptr+#DataSize<<1))
      *Ptr+#DataSize*3
   Next i

   RedrawWindow_(*Window,#Null,#Null,#RDW_ERASE|#RDW_INVALIDATE)
   SendMessage_(*Window,#WM_SETREDRAW,#True,#Null)
   InvalidateRect_(*Window,#Null,#True)

EndIf


Top
 Profile  
Reply with quote  
 Post subject: Re: [IDE Tool] ChangeTheme color switcher
PostPosted: Thu Jun 20, 2019 3:41 am 
Offline
Addict
Addict
User avatar

Joined: Tue Dec 23, 2003 3:54 am
Posts: 1627
Michael Vogel wrote:
...the only thing which is a bit weird that some tabs in the IDE are changed as wanted but others only change the theme for the cursor line only. The update is only done after resizing the purebasic window.

I've added a RedrawWindow_(*Window,#Null,#Null,#RDW_ERASE|#RDW_INVALIDATE) now at the end which seems to work.


You're right, I've updated my source and exe. Thanks!

Brushing up on my Win API, RedrawWindow() can actually force an immediate redraw whereas InvalidateRect() really just flags the area for a future redraw.
On my main computer the IDE seems to update immediately either way, but that seems unreliable on others.


Top
 Profile  
Reply with quote  
 Post subject: Re: [IDE Tool] ChangeTheme color switcher
PostPosted: Thu Jun 20, 2019 6:13 am 
Offline
Addict
Addict
User avatar

Joined: Thu Feb 09, 2006 11:27 pm
Posts: 2430
Actually, I've modified the code to do theses steps after another...

Code:
:
SendMessage_(*Window,#WM_SETREDRAW,#True,#Null)
RedrawWindow_(*Window,#Null,#Null,#RDW_ALLCHILDREN|#RDW_INVALIDATE)
; InvalidateRect_(*Window,#Null,#True)
:


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 20 posts ]  Go to page Previous  1, 2

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  

 


Powered by phpBB © 2008 phpBB Group
subSilver+ theme by Canver Software, sponsor Sanal Modifiye