Not sure how easy to resize a toolbar by mouse drag. :D
- Can the Code Completion toolbar (so handy by the way) be resized ? I never need that much width for the second dropdown box, and making it smaller could allow more toolbars to be on the same level, reducing the number of toolbar lines :
(http://babystyle.free.fr/cbcctoolbar.png)
m_Scope->SetSize(wxSize(100, -1));
m_Function->SetSize(wxSize(300,-1));
When using complicated project hierarchy, there can be a lot a wasted space in the project file list :
I have also limited screen space and use View -> Perspectives -> Code::Blocks minimal. I set shortcut Ctrl + 2 for it and Ctrl + 1 for default perspective. This gives me enough space for coding and all panels for other actions. I think it's the best way.Instead of the shortcut, you can double-click on a tab to change between actual perspective and minimal perspective.
Hi, it seems we can change it. (after reading some wx manual about wxtoolbar and wxchoice. :D)Cool :)
You can already make this easier : right click on the project in the tree, and play around with the options in Project tree submenuYes thanks, that's a good start !
I have also limited screen space and use View -> Perspectives -> Code::Blocks minimal. I set shortcut Ctrl + 2 for it and Ctrl + 1 for default perspective.That's a good idea, I'll try to see if I can get used to it. But probably not with the bare minimal perspective.
About the vertical tabs at the left or right side: that does not work with the current wxAuiNoteBokk (wxWidgets limitation).Isn't wxAuiNoteBook the text editor panel ?
Hi, it seems we can change it. (after reading some wx manual about wxtoolbar and wxchoice. :D)Cool :)
Index: ccoptionsdlg.cpp
===================================================================
--- ccoptionsdlg.cpp (revision 7639)
+++ ccoptionsdlg.cpp (working copy)
@@ -155,6 +155,11 @@
XRCCTRL(*this, "chkTreeMembers", wxCheckBox)->SetValue(m_Parser.ClassBrowserOptions().treeMembers);
XRCCTRL(*this, "chkScopeFilter", wxCheckBox)->SetValue(cfg->ReadBool(_T("/scope_filter"), true));
+
+
+ XRCCTRL(*this, "spnChoiceScopeLength", wxSpinCtrl)->SetValue(cfg->ReadInt(_T("/toolbar_scope_length"),286));
+ XRCCTRL(*this, "spnChoiceFunctionLength", wxSpinCtrl)->SetValue(cfg->ReadInt(_T("/toolbar_function_length"),660));
+
// m_Parser.ParseBuffer(g_SampleClasses, true);
// m_Parser.BuildTree(*XRCCTRL(*this, "treeClasses", wxTreeCtrl));
}
@@ -220,6 +225,9 @@
m_Parser.ClassBrowserOptions().treeMembers = XRCCTRL(*this, "chkTreeMembers", wxCheckBox)->GetValue();
cfg->Write(_T("/scope_filter"), (bool) XRCCTRL(*this, "chkScopeFilter", wxCheckBox)->GetValue());
+ cfg->Write(_T("/toolbar_scope_length"), (int) XRCCTRL(*this, "spnChoiceScopeLength", wxSpinCtrl)->GetValue());
+ cfg->Write(_T("/toolbar_function_length"), (int) XRCCTRL(*this, "spnChoiceFunctionLength", wxSpinCtrl)->GetValue());
+
// Now write the parser options and re-read them again to make sure they are up-to-date
m_Parser.WriteOptions();
m_NativeParsers->RereadParserOptions();
Index: codecompletion.cpp
===================================================================
--- codecompletion.cpp (revision 7639)
+++ codecompletion.cpp (working copy)
@@ -88,6 +88,7 @@
#endif
static wxCriticalSection s_HeadersCriticalSection;
+/** scopes choice name for global functions in CC's toolbar */
static wxString g_GlobalScope(_T("<global>"));
// this auto-registers the plugin
@@ -597,11 +598,14 @@
{
ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("code_completion"));
bool showScope = cfg->ReadBool(_T("/scope_filter"), true);
+ int choice_scope_length = cfg->ReadInt(_T("/toolbar_scope_length"), 286);
+ int choice_function_length = cfg->ReadInt(_T("/toolbar_function_length"), 660);
if (showScope && !m_Scope)
{
- m_Scope = new wxChoice(m_ToolBar, wxNewId(), wxPoint(0, 0), wxSize(280, -1), 0, 0);
+ m_Scope = new wxChoice(m_ToolBar, wxNewId(), wxPoint(0, 0), wxSize(100, -1), 0, 0);
m_ToolBar->InsertControl(0, m_Scope);
+ m_Function->SetSize(wxSize(choice_function_length,-1));
}
else if (!showScope && m_Scope)
{
@@ -609,8 +613,15 @@
m_Scope = NULL;
}
else
+ {
+ m_Scope->SetSize(wxSize(choice_scope_length,-1));
+ m_Function->SetSize(wxSize(choice_function_length,-1));
+ m_ToolBar->Realize();
+ m_ToolBar->SetInitialSize();
return;
+ }
+
m_ToolBar->Realize();
m_ToolBar->SetInitialSize();
}
@@ -1551,6 +1562,9 @@
ed->GetControl()->CallTipShow(pos, definition);
if (start != 0 && end > start)
ed->GetControl()->CallTipSetHighlight(start, end);
+ //Manager::Get()->GetLogManager()->DebugLog(F(_T("start=%d, end=%d"), start, end));
+ //Manager::Get()->GetLogManager()->DebugLog(F(_T("definition=%s"), definition.wx_str()));
+
}
int CodeCompletion::DoClassMethodDeclImpl()
Index: resources/settings.xrc
===================================================================
--- resources/settings.xrc (revision 7639)
+++ resources/settings.xrc (working copy)
@@ -530,6 +530,56 @@
<border>5</border>
<option>1</option>
</object>
+ <object class="sizeritem">
+ <object class="wxBoxSizer">
+ <object class="sizeritem">
+ <object class="wxStaticText" name="ID_STATICTEXT8">
+ <label>Scope choice length</label>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
+ <object class="sizeritem">
+ <object class="wxSpinCtrl" name="spnChoiceScopeLength">
+ <value>286</value>
+ <min>100</min>
+ <max>600</max>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
+ <object class="sizeritem">
+ <object class="wxBoxSizer">
+ <object class="sizeritem">
+ <object class="wxStaticText" name="ID_STATICTEXT9">
+ <label>Function choice length</label>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
+ <object class="sizeritem">
+ <object class="wxSpinCtrl" name="spnChoiceFunctionLength">
+ <value>660</value>
+ <min>1</min>
+ <max>800</max>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
+ </object>
+ <flag>wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
+ <border>5</border>
+ <option>1</option>
+ </object>
</object>
<flag>wxTOP|wxLEFT|wxRIGHT|wxEXPAND|wxALIGN_LEFT|wxALIGN_BOTTOM</flag>
<border>8</border>
Be careful here - you probably introduced a crash candidate. The else - clause is entered in case:Codeif (showScope && !m_Scope)
[...]
else if (!showScope && m_Scope)
[...]
else
+ {
+ m_Scope->SetSize(wxSize(choice_scope_length,-1));
void CodeCompletion::UpdateToolBar()
{
ConfigManager* cfg = Manager::Get()->GetConfigManager(_T("code_completion"));
bool showScope = cfg->ReadBool(_T("/scope_filter"), true);
int choice_scope_length = cfg->ReadInt(_T("/toolbar_scope_length"), 286);
int choice_function_length = cfg->ReadInt(_T("/toolbar_function_length"), 660);
if (showScope)
{
if(m_Scope)
m_Scope->SetSize(wxSize(choice_scope_length,-1));
else
{
m_Scope = new wxChoice(m_ToolBar, wxNewId(), wxPoint(0, 0), wxSize(choice_scope_length, -1), 0, 0);
m_ToolBar->InsertControl(0, m_Scope);
}
}
else
{
if(m_Scope)
{
m_ToolBar->DeleteTool(m_Scope->GetId());
m_Scope = NULL;
}
}
m_Function->SetSize(wxSize(choice_function_length,-1));
m_ToolBar->Realize();
m_ToolBar->SetInitialSize();
}
What about this logic:Note sure where this portion did go:
+ m_Scope->SetSize(wxSize(choice_scope_length,-1));
+ m_Function->SetSize(wxSize(choice_function_length,-1));
+ m_ToolBar->Realize();
+ m_ToolBar->SetInitialSize();
You typo "Not" -> "Note" made me think more than 5 minutes to guess your meaning. ;DWhat about this logic:Note sure where this portion did go:Code+ m_Scope->SetSize(wxSize(choice_scope_length,-1));
+ m_Function->SetSize(wxSize(choice_function_length,-1));
+ m_ToolBar->Realize();
+ m_ToolBar->SetInitialSize();
You typo "Not" -> "Note" made me think more than 5 minutes to guess your meaning. ;DOooops. ;D
I'd also apreciate a toggle that hides/show file tabs, as I never use these : too many files to cycle through, I prefer the project hierarchy on the left.Is there a way to remove that tab bar ? I never used it too, too many files, I use the worskpace view, really more usefull __for me__ !
I hadn't see that :QuoteI'd also apreciate a toggle that hides/show file tabs, as I never use these : too many files to cycle through, I prefer the project hierarchy on the left.Is there a way to remove that tab bar ? I never used it too, too many files, I use the worskpace view, really more usefull __for me__ !
I doubt it is possible. But you can try to hack it and then post the patch.
If I find the time, I create a patch and post it here.