Skip to content

Commit

Permalink
tinkering with pechakucha directive
Browse files Browse the repository at this point in the history
  • Loading branch information
isaacgbaba committed Jan 31, 2024
1 parent 25b3323 commit 2d8f7c4
Show file tree
Hide file tree
Showing 12 changed files with 198 additions and 308 deletions.
23 changes: 2 additions & 21 deletions _ext/Pechakucha/__init__.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,4 @@
from docutils import nodes
from docutils.parsers.rst import Directive
from sphinx.util.docutils import SphinxDirective
from .pechakucha_directive import PechaKuchaDirective

class SlideshowDirective(SphinxDirective):
has_content = True

def run(self):
container = nodes.container('', classes=['slideshow'])
self.set_source_info(container)

for image_path in self.content:
image_node = nodes.image(uri=image_path)
container += nodes.figure('', image_node)

return [container]

def setup(app):
app.add_directive("slideshow", SlideshowDirective)
app.add_css_file('slideshow.css')
app.add_js_file('slideshow.js')

return {'version': '0.1', 'parallel_read_safe': True, 'parallel_write_safe': True}
__all__ = ['PechaKuchaDirective']
27 changes: 21 additions & 6 deletions _ext/Pechakucha/pechakucha_directive.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,38 @@ class PechaKuchaDirective(SphinxDirective):
}

def run(self):
transition_time = self.options.get('transition_time', 3) # Default to 3 seconds
transition_time = self.options.get('transition_time', 3000)

container = nodes.container('', classes=['pechakucha-slideshow'])
container['data-transition-time'] = str(transition_time)

self.set_source_info(container)

for image_path in self.content:
image_node = nodes.image(uri=image_path)
figure_node = nodes.figure('', image_node)
image_node = nodes.image(uri=image_path, classes=['pechakucha-slide'])
figure_node = nodes.figure('', image_node, classes=['align-default'])
container += figure_node

# Add navigation buttons
nav_container = nodes.container('', classes=['pechakucha-controls'])
prev_button = nodes.raw('', '<button id="prev-slide">Previous</button>', format='html')
next_button = nodes.raw('', '<button id="next-slide">Next</button>', format='html')
nav_container.extend([prev_button, next_button])
container += nav_container

# Add progress indicator container
progress_container = nodes.container('', classes=['pechakucha-progress'])
container += progress_container

script_node = nodes.raw('', "<script src='_static/pechakucha.js'></script>", format='html')
container += script_node

return [container]



def setup(app):
app.add_directive("pechakucha", PechaKuchaDirective)
app.add_css_file('pechakucha/static/slideshow.css')
app.add_js_file('pechakucha/static/slideshow.js')
app.add_css_file('_static/pechakucha.css')
app.add_js_file('_static/pechakucha.js')

return {'version': '0.1', 'parallel_read_safe': True, 'parallel_write_safe': True}
13 changes: 0 additions & 13 deletions _ext/Pechakucha/static/slideshow.css

This file was deleted.

24 changes: 0 additions & 24 deletions _ext/Pechakucha/static/slideshow.js

This file was deleted.

236 changes: 0 additions & 236 deletions _static/custom.css

This file was deleted.

Loading

0 comments on commit 2d8f7c4

Please sign in to comment.