31#include <wx/aui/aui.h>
37#ifndef _WXMAXIMA_TOOLBAR_H
38#define _WXMAXIMA_TOOLBAR_H
43 explicit ToolBar(wxWindow *parent);
71 if (!m_needsInformation)
73 SetToolBitmap(tb_follow, m_needsInformationIcon);
74 m_needsInformation =
true;
81 if (m_needsInformation)
83 SetToolBitmap(tb_follow, m_followIcon);
84 m_needsInformation =
false;
94 plot_slider_id = 5500,
101 tb_animation_startStop,
114 wxBitmap m_followIcon;
115 wxBitmap m_needsInformationIcon;
116 wxBitmap m_PlayButton;
117 wxBitmap m_StopButton;
119 void CanUndo(
bool value)
121 if (value != m_canUndo_old)
123 EnableTool(wxID_UNDO, value);
124 m_canUndo_old = value;
128 void CanRedo(
bool value)
130 if (value != m_canRedo_old)
132 EnableTool(wxID_UNDO, value);
133 m_canRedo_old = value;
137 void CanCopy(
bool value)
139 if (value != m_canCopy_old)
141 EnableTool(wxID_COPY, value);
142 m_canCopy_old = value;
146 void CanCut(
bool value)
148 if (value != m_canCut_old)
150 EnableTool(wxID_CUT, value);
151 m_canCut_old = value;
155 void CanSave(
bool value)
157 if (value != m_canSave_old)
159 EnableTool(wxID_SAVE, value);
160 m_canSave_old = value;
164 void CanPrint(
bool value)
166 if (value != m_canPrint_old)
168 EnableTool(wxID_PRINT, value);
169 m_canPrint_old = value;
173 void CanEvalTillHere(
bool value)
175 if (value != m_canEvalTillHere_old)
177 EnableTool(tb_evaltillhere, value);
178 EnableTool(tb_evaluate_rest, value);
179 m_canEvalTillHere_old = value;
183 void CanEvalThisCell(
bool value)
185 if (value != m_canEvalThisCell_old)
187 EnableTool(tb_eval, value);
188 m_canEvalThisCell_old = value;
192 void WorksheetEmpty(
bool value)
194 if (value != m_worksheetEmpty_old)
196 EnableTool(tb_eval_all, !value);
197 m_worksheetEmpty_old = value;
204 int GetIdealHeight(){
205 return m_needsInformationIcon.GetSize().y;
225 wxBitmap GetEvalAllBitmap(wxSize siz);
226 wxBitmap GetEvalBitmap(wxSize siz);
227 wxBitmap GetPreferencesBitmap(wxSize siz);
228 wxBitmap GetSelectAllBitmap(wxSize siz);
229 wxBitmap GetRestartBitmap(wxSize siz);
230 wxBitmap GetInterruptBitmap(wxSize siz);
231 wxBitmap GetEvalTillHereBitmap(wxSize siz);
232 wxBitmap GetEvalRestBitmap(wxSize siz);
233 wxBitmap GetHideCodeBitmap(wxSize siz);
235 wxSize GetOptimalBitmapSize();
237 bool ShowUndoRedo(){
bool show =
false; wxConfig::Get()->Read(
"Toolbar/showUndoRedo", &show);
239 void ShowUndoRedo(
bool show){wxConfig::Get()->Write(
"Toolbar/showUndoRedo", show);}
241 bool ShowCopyPaste(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showCopyPaste", &show);
243 void ShowCopyPaste(
bool show){wxConfig::Get()->Write(
"Toolbar/showCopyPaste", show);}
245 bool ShowOpenSave(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showOpenSave", &show);
247 void ShowOpenSave(
bool show){wxConfig::Get()->Write(
"Toolbar/showOpenSave", show);}
249 bool ShowNew(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showNew", &show);
251 void ShowNew(
bool show){wxConfig::Get()->Write(
"Toolbar/showNew", show);}
253 bool ShowSearch(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showSearch", &show);
255 void ShowSearch(
bool show){wxConfig::Get()->Write(
"Toolbar/showSearch", show);}
257 bool ShowHelp(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showHelp", &show);
259 void ShowHelp(
bool show){wxConfig::Get()->Write(
"Toolbar/showHelp", show);}
261 bool ShowPrint(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showPrint", &show);
263 void ShowPrint(
bool show){wxConfig::Get()->Write(
"Toolbar/showPrint", show);}
265 bool ShowOptions(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showOptions", &show);
267 void ShowOptions(
bool show){wxConfig::Get()->Write(
"Toolbar/showOptions", show);}
269 bool ShowSelectAll(){
bool show =
true; wxConfig::Get()->Read(
"Toolbar/showSelectAll", &show);
271 void ShowSelectAll(
bool show){wxConfig::Get()->Write(
"Toolbar/showSelectAll", show);}
274 void OnSize(wxSizeEvent &event);
275 void OnMouseRightDown(wxMouseEvent &event);
276 void OnMenu(wxMenuEvent &event);
281 GroupType m_defaultCellStyle = GC_TYPE_CODE;
283 wxChoice *m_textStyle = NULL;
285 std::size_t m_animationDisplayedIndex = 0;
287 std::size_t m_animationMaxIndex;
288 bool m_canRedo_old =
true;
289 bool m_canUndo_old =
true;
290 bool m_canCopy_old =
true;
291 bool m_canCut_old =
true;
292 bool m_canSave_old =
true;
293 bool m_canPrint_old =
true;
294 bool m_canEvalTillHere_old =
true;
295 bool m_canEvalThisCell_old =
true;
296 std::unique_ptr<
struct wxm_NSVGrasterizer, decltype(std::free)*> m_svgRast{
nullptr, std::free};
297 bool m_worksheetEmpty_old =
false;
300 bool m_needsInformation =
false;
This file declares the class AnimationCell.
This file defines the class GroupCell that bundles input and output in the worksheet.
GroupType
All types a GroupCell can be of.
Definition: GroupCell.h:42
Definition: AnimationCell.h:46