Giter VIP home page Giter VIP logo

cornertools's Introduction

Corner Tools

The documentation is stored here

cornertools's People

Contributors

gferreira avatar roberto-arista avatar ryanbugden avatar typemytype avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

cornertools's Issues

UI redesign, EZUI, HIG, etc.

Here's a sketch:
image

import ezui

class CornerTools(ezui.WindowController):

    def build(self):
        content = """
        * TwoColumnForm      @mainForm
        > : Treatment:
        > (X) Break          @treatmentRadios
        > ( ) Build
        > ( ) Pit
        > : Radius:
        > ---X--- [__]       @radiusSlider
        > : Roundness:
        > ---X--- [__]       @roundnessSlider
        ---
        """
        footer = """
        No corners selected. @statusLabel
        (Apply)              @applyButton
        """
        
        descriptionData = dict(
            mainForm=dict(
                titleColumnWidth=72,
                itemColumnWidth=200
            ),
            statusLabel=dict(
                gravity='leading',
            )
        )
        self.w = ezui.EZWindow(
            title='Corner Tools',
            content=content,
            descriptionData=descriptionData,
            footer=footer,
            controller=self
        )

    def started(self):
        self.w.open()

CornerTools()

py23 module deprecation warning

Getting this message in the output window upon every RF open.

********************
Installing 'CornerTools' report:
  /Applications/RoboFont-4_4b2.app/Contents/Resources/lib/python3.9/fontTools/misc/py23.py:13: DeprecationWarning: The py23 module has been deprecated and will be removed in a future release. Please update your code.

********************

Escaping the font overview

With this extension installed while working in single-window mode, clicking things in the font overview causes the focus to get stuck there. This happens even when the tool isn't activated.

For example, if I click a glyph in the font overview to edit a glyph, and then click somewhere in the glyph view to move the focus there, hitting a number key on my keyboard doesn't activate the corresponding tool as expected, but instead opens the glyph for that number, as though I had never clicked away from the overview.

Or, if I select a point in the glyph view and try to move it up with my arrow key, I just get taken to the glyph that is above the current glyph in the font overview grid.

Nothing shows up in the output or the log file when it happens, but installing the extension returns the behavior to normal.

Mechanic failure

I get this in RF3:
Could not download the extension zip file for: 'CornerTools'

IndexError: pop index out of range​

Using a simple shape like an /H I'm getting this error if I accidentally slide too far (in my example, when I go above 85 radius), and then the traceback wont go away and keeps printing if I change anything.

Here's the full traceback:

Traceback (most recent call last):
  File "lib/eventTools/eventManager.pyc", line 131, in callObserver_withMethod_forEvent_withInfo_
  File "cornerToolController.py", line 89, in setControls
  File "cornerToolController.py", line 121, in makePreviewGlyph
  File "cornerToolController.py", line 129, in makeCornerGlyph
  File "cornerToolController.py", line 157, in breakCorners
  File "/Users/cjdunn/Library/Application Support/RoboFont/plugins/CornerTools.roboFontExt/lib/glyphObjects.py", line 1502, in breakCorner
IndexError: pop index out of range​

Thanks!

Example image:
corner_tools_error

Example glyph:

<?xml version="1.0" encoding="UTF-8"?>
<glyph name="H" format="2">
  <advance width="450"/>
  <outline>
    <contour>
      <point x="53" y="0" type="line"/>
      <point x="136" y="0" type="line"/>
      <point x="136" y="366" type="line"/>
      <point x="314" y="366" type="line"/>
      <point x="314" y="0" type="line"/>
      <point x="397" y="0" type="line"/>
      <point x="397" y="750" type="line"/>
      <point x="314" y="750" type="line"/>
      <point x="314" y="439" type="line"/>
      <point x="136" y="439" type="line"/>
      <point x="136" y="750" type="line"/>
      <point x="53" y="750" type="line"/>
    </contour>
  </outline>
</glyph>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.