Skip to content

Commit 5dbc515

Browse files
committed
Editor: dark mode button and toggle
1 parent 6f128a4 commit 5dbc515

1 file changed

Lines changed: 25 additions & 1 deletion

File tree

editor/index.html

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
<span class="pane-label">sketch.cpp</span>
6060
<span id="status"></span>
6161
<button class="btn-run" id="btn-run" onclick="runSketch()" tabindex="-1">&#9654; Run</button>
62+
<button id="btn-dark" onclick="toggleDark()" tabindex="-1" style="background:#111;color:#fff;border:none;padding:5px 12px;border-radius:4px;font-size:12px;cursor:pointer;">🌙 Dark</button>
6263
</div>
6364
<div id="code"></div>
6465
<div id="error-panel"></div>
@@ -256,6 +257,29 @@
256257
</div>
257258
</div>
258259
<footer><p>C++ Mode for Processing</p><p class="footer-contact"><a href="mailto:pep84c@gmail.com">pep84c@gmail.com</a></p></footer>
259-
<script src="../assets/nav.js"></script>
260+
<script src="../assets/nav.js">
261+
let darkMode = false;
262+
function toggleDark() {
263+
darkMode = !darkMode;
264+
const btn = document.getElementById('btn-dark');
265+
if (darkMode) {
266+
editor.setOption('theme', 'cppmode-dark');
267+
document.body.style.cssText = 'background:#1a1a2e;color:#e0e0e0';
268+
document.querySelectorAll('.pane-bar').forEach(el => { el.style.background='#16213e'; el.style.borderColor='#0f3460'; });
269+
document.querySelector('.editor-pane').style.borderColor = '#0f3460';
270+
document.querySelector('.preview-pane').style.borderColor = '#0f3460';
271+
btn.textContent = '☀️ Light';
272+
btn.style.background = '#0f3460';
273+
} else {
274+
editor.setOption('theme', 'cppmode');
275+
document.body.style.cssText = '';
276+
document.querySelectorAll('.pane-bar').forEach(el => { el.style.background=''; el.style.borderColor=''; });
277+
document.querySelector('.editor-pane').style.borderColor = '';
278+
document.querySelector('.preview-pane').style.borderColor = '';
279+
btn.textContent = '🌙 Dark';
280+
btn.style.background = '#111';
281+
}
282+
}
283+
</script>
260284
</body>
261285
</html>

0 commit comments

Comments
 (0)