void Tweaks::OnColourTab(clColourEvent& e) { TWEAKS_ENABLED_EVENT_HANDLER(); IEditor* editor = FindEditorByPage(e.GetPage()); if(!editor) { if(m_settings.GetGlobalFgColour().IsOk() && m_settings.GetGlobalBgColour().IsOk()) { // Non editor tab e.SetBgColour(m_settings.GetGlobalBgColour()); e.SetFgColour(m_settings.GetGlobalFgColour()); } else { e.Skip(); } } else { const ProjectTweaks& tw = m_settings.GetProjectTweaks(editor->GetProjectName()); if(tw.IsOk()) { e.SetBgColour(tw.GetTabBgColour()); e.SetFgColour(tw.GetTabFgColour()); } else if(m_settings.GetGlobalBgColour().IsOk() && m_settings.GetGlobalFgColour().IsOk()) { e.SetBgColour(m_settings.GetGlobalBgColour()); e.SetFgColour(m_settings.GetGlobalFgColour()); } else { e.Skip(); } } }
void Tweaks::OnCustomizeProject(clColourEvent& e) { TWEAKS_ENABLED_EVENT_HANDLER(); if ( m_project2Icon.count(e.GetString()) ) { // We got a new icon for this project! e.SetInt( m_project2Icon.find(e.GetString())->second ); } else { e.Skip(); } }
void Tweaks::OnTabBorderColour(clColourEvent& e) { #ifdef __WXGTK__ #if CL_USE_NATIVEBOOK // Not supported with native notebooks e.Skip(); return; #endif #endif TWEAKS_ENABLED_EVENT_HANDLER(); if ( m_settings.IsEnableTweaks() && m_settings.GetGlobalBgColour().IsOk() ) { e.SetBorderColour( DrawingUtils::DarkColour(m_settings.GetGlobalBgColour(), 1.5) ); } else { e.Skip(); } }
void Tweaks::OnFileViewBuildTree(clCommandEvent& e) { TWEAKS_ENABLED_EVENT_HANDLER(); m_project2Icon.clear(); if ( m_settings.GetProjects().empty() ) { e.Skip(); return; } // See if we got a new image for a project wxImageList *images = new wxImageList(16, 16); wxImageList *old_images = m_mgr->GetTree(TreeFileView)->GetImageList(); // Copy the old images to the new one for(int i=0; i<old_images->GetImageCount(); ++i) { images->Add( old_images->GetIcon(i) ); } ProjectTweaks::Map_t::const_iterator iter = m_settings.GetProjects().begin(); for(; iter != m_settings.GetProjects().end(); ++iter ) { wxString bmpfile = iter->second.GetBitmapFilename(); bmpfile.Trim().Trim(false); if ( bmpfile.IsEmpty() ) { continue; } wxBitmap bmp(bmpfile, wxBITMAP_TYPE_ANY); if ( bmp.IsOk() ) { wxIcon icn; icn.CopyFromBitmap( bmp ); int index = images->Add( icn ); m_project2Icon.insert( std::make_pair(iter->first, index) ); } } if ( m_project2Icon.empty() ) { e.Skip(); wxDELETE(images); } else { // send back the new image list e.SetClientData( images ); } }
void Tweaks::OnColourTab(clColourEvent& e) { #ifdef __WXGTK__ #if CL_USE_NATIVEBOOK // Not supported with native notebooks e.Skip(); return; #endif #endif TWEAKS_ENABLED_EVENT_HANDLER(); IEditor* editor = FindEditorByPage( e.GetPage() ); if ( !editor ) { if ( m_settings.GetGlobalFgColour().IsOk() && m_settings.GetGlobalBgColour().IsOk() ) { // Non editor tab e.SetBgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewBgColour() : m_settings.GetGlobalBgColour() ); e.SetFgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewFgColour() : m_settings.GetGlobalFgColour() ); } else { e.Skip(); } } else { const ProjectTweaks& tw = m_settings.GetProjectTweaks( editor->GetProjectName() ); if ( tw.IsOk() ) { e.SetBgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewBgColour() : tw.GetTabBgColour() ); e.SetFgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewFgColour() : tw.GetTabFgColour() ); } else if ( m_settings.GetGlobalBgColour().IsOk() && m_settings.GetGlobalFgColour().IsOk() ) { e.SetBgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewBgColour() : m_settings.GetGlobalBgColour() ); e.SetFgColour( e.IsActiveTab() ? EditorConfigST::Get()->GetCurrentOutputviewFgColour() : m_settings.GetGlobalFgColour() ); } else { e.Skip(); } } }