1. 08 Sep, 2016 1 commit
    • Werner Lemberg's avatar
      * Version 2.7 released. · a465e3fc
      Werner Lemberg authored
      =======================
      
      Tag sources with `VER-2-7'.
      
      * README: Updated.
      * src/*.1: Updated.
      * src/ftinspect.pro: Updated.
      a465e3fc
  2. 01 Sep, 2016 1 commit
  3. 21 Aug, 2016 1 commit
  4. 19 Aug, 2016 3 commits
  5. 18 Aug, 2016 1 commit
    • Alexei Podtelezhnikov's avatar
      [ftdump] Implement hexdump of TrueType instructions. · d27f2659
      Alexei Podtelezhnikov authored
      This is useful when searching for interesting instructions. Pushed
      values come with underscore prefix to distinguish them from actual
      opcodes.
      
      * src/ftdump.c (Print_Bytecode, Print_Programs): Implement this.
      (usage): New option `-p' described.
      (main): Updated.
      * src/ftdump.1: Updated.
      d27f2659
  6. 06 Aug, 2016 1 commit
    • Werner Lemberg's avatar
      Move Mark Leisher's `getopt' implementation to a separate file. · 0fb06cf1
      Werner Lemberg authored
      We need this since `ftbench.c' now includes `unistd.h', which in
      turn declares `getopt'.
      
      * src/common.c, src/common.h: Move `getopt' stuff to...
      * src/mlgetopt.c, src/mlgetopt.h: ... these new files.
      Update all callers.
      
      * src/common.c, src/common.h: Use standard C only.
      Replace `CONST' with `const'.
      
      * Makefile (COMMON_OBJ): Add `mlgetopt'.
      0fb06cf1
  7. 03 Aug, 2016 1 commit
  8. 02 Aug, 2016 1 commit
  9. 14 Jul, 2016 3 commits
    • Werner Lemberg's avatar
      [ftgrid] New option `-d' to give start-up design coordinates. · 240a8a2f
      Werner Lemberg authored
      This code is similar to the one from `ftmulti'.
      
      * src/ftgrid.c: Include `stdlib.h'.
      (GridStatusRec): Add `requested_pos' and `reqested_cnt' to hold the
      design coordinate data from the command line.
      (event_font_change): Handle them.
      (parse_cmdline): Handle option `-d'.
      (usage): Document `-d'.
      (main): Don't load named instances if we have start-up design
      coordinates.
      
      * src/ftgrid.1: Updated.
      240a8a2f
    • Werner Lemberg's avatar
      Prepare suppression of named instances. · 6204daab
      Werner Lemberg authored
      No functional change.
      
      * src/ftcommon.c (FTDemo_Install_Font): Add boolean parameter to
      avoid loading of instances.
      * src/ftcommon.h: Updated.
      * src/ftgrid.c (main), src/ftstring.c (main), src/ftview.c (main):
      Updated.
      6204daab
    • Werner Lemberg's avatar
      [ftgrid] Properly handle named instances. · 5d5f9de6
      Werner Lemberg authored
      * src/ftgrid.c (event_font_change): Properly initialize the design
      positions with the named instance's value, if appropriate.
      5d5f9de6
  10. 12 Jul, 2016 1 commit
    • Werner Lemberg's avatar
      * Version 2.6.5 released. · 936f3305
      Werner Lemberg authored
      =========================
      
      Tag sources with `VER-2-6-5'.
      
      * README: Updated.
      * src/*.1: Updated.
      * src/ftinspect.pro: Updated.
      936f3305
  11. 05 Jul, 2016 1 commit
    • Werner Lemberg's avatar
      * Version 2.6.4 released. · e56e993d
      Werner Lemberg authored
      =========================
      
      Tag sources with `VER-2-6-4'.
      
      * README: Updated.
      * src/*.1: Updated.
      * src/ftinspect.pro: Updated.
      e56e993d
  12. 06 Jun, 2016 2 commits
    • Werner Lemberg's avatar
      [ftinspect] Fix pixel box drawing. · 1a369399
      Werner Lemberg authored
      This commit circumvents a problem with Qt's `QPainter::drawImage'
      function; it seems that the alignment of the output becomes
      imprecise at high magnification values.
      
      * src/ftinspect.c (GlyphBitmap::paint): Manually draw pixel boxes
      with `fillRect'.
      1a369399
    • Alexei Podtelezhnikov's avatar
      ChangeLog fixes. · 6317297d
      Alexei Podtelezhnikov authored
      6317297d
  13. 29 May, 2016 4 commits
  14. 26 May, 2016 3 commits
    • Werner Lemberg's avatar
      [ftbench] Add support for third TrueType interpreter version. · 9ab49218
      Werner Lemberg authored
      Option `-H' now takes an argument to select the CFF hinting engine,
      and new option `-I' selects the TT interpreter version.
      
      * src/ftbench.c (default_hinting_engine,
      default_interpreter_version): Replaced with...
      (tt_interpreter_versions, num_tt_interpreter_versions,
      dflt_tt_interpreter_version, cff_hinting_engines,
      num_cff_hinting_engines, dflt_cff_hinting_engine,
      cff_hinting_engine_names): ...  these new global variables.
      (main): Expand check for alternative TrueType interpreter versions
      and CFF hinting engines.
      Add argument to option `-H'.
      Add new option `-I'.
      (usage): Updated.
      
      * src/ftbench.1: Updated.
      9ab49218
    • Werner Lemberg's avatar
      [ttdebug] Rename option `-H' to `-I'. · 791c7a6e
      Werner Lemberg authored
      This is for consistency with a forthcoming change to `ftbench'.
      
      * src/ttdebug.c (main): Implement it.
      (Usage): Updated.
      
      * src/ttdebug.1: Updated.
      791c7a6e
    • Werner Lemberg's avatar
      [ttdebug] Add support for third TrueType interpreter version. · 08f5b859
      Werner Lemberg authored
      Option `-H' now takes an argument.
      
      * src/ttdebug.c (default_version, alternative_version): Replaced
      with...
      (tt_interpreter_versions, num_tt_interpreter_versions,
      dflt_tt_interpreter_version): ... these new global variables.
      (main): Expand check for alternative TrueType interpreter versions.
      Add argument to option `-H'.
      (Usage): Updated.
      
      * src/ttdebug.1: Updated.
      08f5b859
  15. 22 May, 2016 1 commit
  16. 21 May, 2016 4 commits
    • Werner Lemberg's avatar
      [ftgrid] Add support for third TrueType interpreter version. · 28cce34d
      Werner Lemberg authored
      * src/ftgrid.c (GridStatusRec): Replace `tt_interpreter_version'
      with `tt_interpreter_versions' array.
      Add `num_tt_interpreter_versions' and `tt_interpreter_version_idx'.
      (event_tt_interpreter_version_change): Updated.
      (main): Expand check for alternative TrueType interpreter versions.
      28cce34d
    • Werner Lemberg's avatar
      [ftdiff] Add support for third TrueType interpreter version. · 180741c7
      Werner Lemberg authored
      * src/ftdiff.c (ColumnStateRec):  Replace `tt_interpreter_version'
      with `tt_interpreter_versions' array.
      Add `num_tt_interpreter_versions' and `tt_interpreter_version_idx'.
      (render_state_init): Expand check for alternative TrueType
      interpreter versions.
      (render_state_draw): Updated.
      (process_event) <'H'>: Updated.
      180741c7
    • Werner Lemberg's avatar
      [ftview] Add support for third TrueType interpreter version. · 88183f98
      Werner Lemberg authored
      * src/ftview.c (status): Replace `tt_interpreter_version' with
      `tt_interpreter_versions' array.
      Add `num_tt_interpreter_versions' and `tt_interpreter_version_idx'.
      (event_tt_interpreter_version_change, write_header): Updated.
      (main): Expand check for alternative TrueType interpreter versions.
      88183f98
    • Werner Lemberg's avatar
      Make compilation work with clang++. · 7cd4e1b8
      Werner Lemberg authored
      Also fix some warning messages.
      
      * src/ftcommon.c (FTDemo_Display_Clear): Use proper cast.
      (string_load): Replace shifts with multiplication.
      
      * src/ftgamma.c: (bit1, bit2): Complete initializer.
      (do_ptrn, do_fill): Use proper casts.
      (Render_Bitmap): s/bitmap/out/, s/bit/in/, to avoid shadowing global
      variable `bit'.
      
      * src/ftgrid.c (GridStatus): Make `lcd_filter' of type
      `FT_LcdFilter'.
      (bitmap_scale): Use proper casts.
      (grid_status_draw_outline): Fix int vs. short warnings.
      (event_cff_hinting_engine_change): Add initializer.
      (event_lcd_filter_change): Properly handle `status.lcd_filter'.
      
      * src/ftmulti.c (requested_cnt, used_num_axis): Make them `unsigned
      int'.
      (Process_Event, main): Updated.
      
      * src/ftstring.c (status): Complete initializer.
      
      * src/ftvalid.c (ValidatorType): Fix enum syntax.
      
      * src/ftview.c (event_cff_hinting_engine_change): Add initializer.
      (Process_Event) <'L'>: Fix call to FT_Library_SetLcdFilter.
      
      * src/output.c (put_ascii_string, put_unicode_be16_string): Add
      casts.
      7cd4e1b8
  17. 19 May, 2016 1 commit
    • Werner Lemberg's avatar
      [ftinspect] Use bottom left as the viewport anchor for resizing. · 5e3fbc25
      Werner Lemberg authored
      We store the last bottom left corner point of the viewport rectangle
      and adjust the verticalScrollBar value by the delta relative to the
      current bottom left corner position.
      
      * src/ftinspect.h (QGraphicsViewx): New class, derived from
      `QGraphicsView'.
      (MainGUI): Updated.
      
      * src/ftinspect.cpp (MainGUI::createLayout): Updated.
      (QGraphicsViewx::QGraphicsViewx, QGraphicsViewx::scrollContentsBy,
      QGraphicsView::resizeEvent): New methods.
      5e3fbc25
  18. 18 May, 2016 1 commit
    • Werner Lemberg's avatar
      [ftinspect] Re-implement file watching. · 9733a16b
      Werner Lemberg authored
      * src/ftinspect.cpp (MainGUI::MainGUI): Initialize file watcher and
      timer.
      (MainGUI::closeFont): Updated.
      (MainGUI::watchCurrentFont): New method.
      (MainGUI::showFont): Handle file watching for both real files and
      softlinks.
      Diplsy a softlink name as italic font.
      (MainGUI::createConnections): Updated.
      
      * src/ftinspect.h (MainGUI): Updated.
      9733a16b
  19. 15 May, 2016 4 commits
    • Werner Lemberg's avatar
      [ftinspect] Redesign file/face/instance navigation. · 6196d455
      Werner Lemberg authored
      Instead no longer peek into a font with a negative argument to
      `FT_Face_New', we now directly load appropriate (font, face,
      instance) triplets.
      
      The new code also tries a bit harder to separate the font stuff in
      the `Engine' class from the GUI navigation control in `MainGUI'.
      
      * src/ftinspect.h (Font): Removed.
      (MainGUI): Make `fontList' a `QStringList'.
      New members `currentNumberOfFaces' and
      `currentNumberOfNamedInstances'.
      Move `faceCounter' and `faceIDMap' members to...
      (Engine): ...this class.
      Make `faceRequester' a friend.
      
      * src/ftinspect.cpp (faceRequester): Check font index.
      Updated.
      (Engine::Engine): Updated.
      (Engine::numberOfFaces, Engine::numberOfNamedInstances,
      Engine::loadFont, Engine::removeFont): Rewritten.
      (MainGUI::loadFonts, MainGUI::closeFont, MainGUI::showFont,
      MainGUI::adjustGlyphIndex, MainGUI::checkCurrentFaceIndex,
      MainGUI::checkCurrentNamedInstanceIndex):
      Simplified.
      (MainGUI::nextFace, MainGUI::nextNamedInstance, MainGUI::drawGlyph,
      MainGUI::setDefaults): Updated.
      6196d455
    • Werner Lemberg's avatar
      [ftinspect] Minor issues. · 31e81a98
      Werner Lemberg authored
      * src/ftinspect.cpp (Engine::loadFont): More readable code.
      (MainGUI::showFont): Remove no longer needed argument.
      Updated.
      (MainGUI::checkCurrentFontIndex, MainGUI::checkCurrentFaceIndex,
      MainGUI::checkCurrentNamedInstanceIndex): Minor generalization.
      
      * src/ftinspect.h (MainGUI): Updated.
      31e81a98
    • Werner Lemberg's avatar
      [ftinspect] Replace face ID hash with a map. · 3d7b276e
      Werner Lemberg authored
      We need this for later changes that will rely on ordered data.
      
      * src/ftinspect.cpp (FaceID::operator==): Replace with...
      (FaceID::operator<): ... this method.
      (qHash): Removed.
      (faceRequester, Engine::loadFont, Engine::removeFont,
      MainGUI::closeFont, MainGUI::showFont): Updated.
      
      * src/ftinspect.h (FaceID): Updated.
      (Main): Rename member `faceIDHash' to `faceIDMap'.
      3d7b276e
    • Werner Lemberg's avatar
      [ftinspect] More variable and function renamings. · 7010262f
      Werner Lemberg authored
      Mainly for consistency.
      
      * src/ftinspect.cpp (faceRequester): s/faceID/ftcFaceID/,
      s/id/faceID/.
      (Engine::numberOfFaces): s/result/numFaces/.
      (Engine::numberOfNamedInstances): s/result/numNamedInstances/.
      (Engine::loadFont): s/instanceIndex/namedInstanceIndex/.
      (Engine::removeFont): s/face_id/ftcFaceID/,
      s/instanceIndex/namedInstanceIndex/.
      (MainGUI::showFont): s/numberOfFaces/currentNumberOfFaces/,
      s/numberOfNamedInstances/currentNumberOfNamedInstances/.
      Updated.
      (MainGUI::checkCurrentFaceIndex):
      s/numberOfFaces/currentNumberOfFaces/.
      (MainGUI::checkCurrentInstanceIndex): Renamed to...
      (MainGUI::checkCurrentNamedInstanceIndex): ...this.
      s/numberOfNamedInstances/currentNumberOfNamedInstances/.
      Updated.
      (MainGUI::nextFace): s/numberOfFaces/currentNumberOfFaces/.
      (MainGUI::nextInstance): Renamed to...
      (MainGUI::nextNamedInstance): ... this.
      s/numberOfNamedInstances/currentNumberOfNamedInstances/.
      (MainGUI::previousInstance): Renamed to...
      (MainGUI::previousNamedInstance): ...this.
      (MainGUI::createLayout, MainGUI::createConnections,
      MainGUI::setDefaults): Updated.
      
      * src/ftinspect.h (Engine): Updated.
      (MainGUI): s/nextInstanceButton/nextNamedInstanceButton/
      s/previousInstanceButton/previousNamedInstanceButton/.
      7010262f
  20. 14 May, 2016 2 commits
    • Werner Lemberg's avatar
      [ftinspect] Remove file watching. · 6fb6a0bd
      Werner Lemberg authored
      This approach doesn't work well.  A new, improved implementation
      will follow.
      
      * src/ftinspect.h (Engine): Remove `currentFontFileInfo',
      `currentFontFileDate', `maxRetries', and `currentRetry'.
      Updated.
      (MainGUI): Remove `timer'.
      Updated.
      
      * src/ftinspect.cpp (Engine::watchCurrentFont): Removed.
      (Engine::loadFont, Engine::update): Updated.
      (MainGUI::MainGUI): Updated.
      (MainGUI::watchCurrentFont): Removed.
      (MainGUI::createConnections): Updated.
      6fb6a0bd
    • Werner Lemberg's avatar
      [ftinspect] Variable renaming. · 12e8abcc
      Werner Lemberg authored
      * src/ftinspect.cpp, src/ftinspect.h (FaceID):
      s/instanceIndex/namedInstanceIndex/.
      12e8abcc
  21. 12 May, 2016 3 commits
    • Werner Lemberg's avatar
      [ftinspect] Variable renamings. · 6e8a8f85
      Werner Lemberg authored
      For consistency.
      
      * src/ftinspect.cpp, src/ftinspect.h: s/numFaces/numberOfFaces/,
      s/numNamedInstancesList/numberOfNamedInstancesList/,
      s/numNamedInstances/numberOfNamedInstances/,
      s/currentInstanceIndex/currentNamedInstanceIndex/.
      s/currentNumGlyphs/currentNumberOfGlyphs/.
      6e8a8f85
    • Werner Lemberg's avatar
      [ftinspect] Display more glyph and font information. · bcf46fd2
      Werner Lemberg authored
      * src/ftinspect.cpp (Engine::loadFont): Update `curFamilyName' and
      `curStyleName'.
      (Engine::currentFamilyName, Engine::currentStyleName,
      Engine::glyphName): New methods.
      
      (MainGUI::closeFont, MainGUI::showFont, MainGUI::adjustGlyphIndex,
      MainGUI::createLayout): Updated.
      
      * src/ftinspect.h (Engine): New members `curFamilyName' and
      `curStyleName'.
      Updated.
      (MainGUI): New `fontFilenameLabel', `fontNameLabel', and
      `glyphNameLabel' members.
      Use `QGridLayout' for `infoRightLayout'.
      bcf46fd2
    • Werner Lemberg's avatar
      [ftinspect] Fix logical mistakes in font navigation. · 4f5e1c4c
      Werner Lemberg authored
      * src/ftinspect.cpp (Engine::Engine): Initialize `ftSize'.
      (MainGUI::showFont): Don't let exceed indices the number of
      available index values if `preserveIndices' is active.
      Always call `engine->loadFont' even for invalid fonts so that
      various font-global variables are set correctly.
      4f5e1c4c