You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
(23) |
Apr
(254) |
May
(252) |
Jun
(209) |
Jul
(198) |
Aug
(192) |
Sep
(207) |
Oct
(120) |
Nov
(179) |
Dec
(52) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(48) |
Feb
(69) |
Mar
(129) |
Apr
(250) |
May
(113) |
Jun
(177) |
Jul
(228) |
Aug
(155) |
Sep
(218) |
Oct
(185) |
Nov
(109) |
Dec
(88) |
2009 |
Jan
(83) |
Feb
(39) |
Mar
(70) |
Apr
(47) |
May
(48) |
Jun
(67) |
Jul
(61) |
Aug
(97) |
Sep
(221) |
Oct
(141) |
Nov
(70) |
Dec
(61) |
2010 |
Jan
(45) |
Feb
(76) |
Mar
(178) |
Apr
(106) |
May
(57) |
Jun
(32) |
Jul
(64) |
Aug
(98) |
Sep
(96) |
Oct
(19) |
Nov
(34) |
Dec
(117) |
2011 |
Jan
(55) |
Feb
(48) |
Mar
(64) |
Apr
(21) |
May
(39) |
Jun
(53) |
Jul
(99) |
Aug
(56) |
Sep
(39) |
Oct
(26) |
Nov
(19) |
Dec
(69) |
2012 |
Jan
(17) |
Feb
(40) |
Mar
(17) |
Apr
|
May
(2) |
Jun
(8) |
Jul
(2) |
Aug
(10) |
Sep
(10) |
Oct
(38) |
Nov
(48) |
Dec
(70) |
2013 |
Jan
(43) |
Feb
(47) |
Mar
(39) |
Apr
(37) |
May
(25) |
Jun
(6) |
Jul
(20) |
Aug
(49) |
Sep
(33) |
Oct
(34) |
Nov
(75) |
Dec
(6) |
2014 |
Jan
(32) |
Feb
(10) |
Mar
(17) |
Apr
|
May
|
Jun
(26) |
Jul
(5) |
Aug
|
Sep
(4) |
Oct
(23) |
Nov
(80) |
Dec
(48) |
2015 |
Jan
(80) |
Feb
(50) |
Mar
(58) |
Apr
(20) |
May
(11) |
Jun
(16) |
Jul
(24) |
Aug
(27) |
Sep
(56) |
Oct
(30) |
Nov
(16) |
Dec
(6) |
2016 |
Jan
(31) |
Feb
(14) |
Mar
(23) |
Apr
(17) |
May
(40) |
Jun
(12) |
Jul
(17) |
Aug
(9) |
Sep
(32) |
Oct
(36) |
Nov
(23) |
Dec
(9) |
2017 |
Jan
(37) |
Feb
(23) |
Mar
(65) |
Apr
(22) |
May
(6) |
Jun
(3) |
Jul
|
Aug
|
Sep
(3) |
Oct
(22) |
Nov
(63) |
Dec
(71) |
2018 |
Jan
(83) |
Feb
(21) |
Mar
(35) |
Apr
(44) |
May
(14) |
Jun
(12) |
Jul
(8) |
Aug
(18) |
Sep
(10) |
Oct
(145) |
Nov
(144) |
Dec
(76) |
2019 |
Jan
(18) |
Feb
(28) |
Mar
(5) |
Apr
(208) |
May
(291) |
Jun
(158) |
Jul
(27) |
Aug
(8) |
Sep
(10) |
Oct
(83) |
Nov
(41) |
Dec
(31) |
2020 |
Jan
(16) |
Feb
(46) |
Mar
(100) |
Apr
(78) |
May
(69) |
Jun
(71) |
Jul
(28) |
Aug
(131) |
Sep
(176) |
Oct
(89) |
Nov
(147) |
Dec
(19) |
2021 |
Jan
(19) |
Feb
(25) |
Mar
(91) |
Apr
(98) |
May
(14) |
Jun
(44) |
Jul
(8) |
Aug
(3) |
Sep
(38) |
Oct
(57) |
Nov
(97) |
Dec
(74) |
2022 |
Jan
(89) |
Feb
(47) |
Mar
(15) |
Apr
(50) |
May
(54) |
Jun
(56) |
Jul
(80) |
Aug
(12) |
Sep
(11) |
Oct
(60) |
Nov
(48) |
Dec
(4) |
2023 |
Jan
(75) |
Feb
(49) |
Mar
(84) |
Apr
(24) |
May
(13) |
Jun
(74) |
Jul
(32) |
Aug
(66) |
Sep
(50) |
Oct
(38) |
Nov
(105) |
Dec
(181) |
2024 |
Jan
(21) |
Feb
(49) |
Mar
(77) |
Apr
(84) |
May
(20) |
Jun
(71) |
Jul
(53) |
Aug
(33) |
Sep
(54) |
Oct
(124) |
Nov
(151) |
Dec
(73) |
2025 |
Jan
(61) |
Feb
(17) |
Mar
(136) |
Apr
(72) |
May
(200) |
Jun
(238) |
Jul
(91) |
Aug
(8) |
Sep
|
Oct
|
Nov
|
Dec
|
From: <ho...@us...> - 2007-09-02 18:47:56
|
Revision: 2807 http://skim-app.svn.sourceforge.net/skim-app/?rev=2807&view=rev Author: hofman Date: 2007-09-02 11:47:52 -0700 (Sun, 02 Sep 2007) Log Message: ----------- Update release notes. Modified Paths: -------------- trunk/ReleaseNotes.rtf Modified: trunk/ReleaseNotes.rtf =================================================================== --- trunk/ReleaseNotes.rtf 2007-09-01 23:37:36 UTC (rev 2806) +++ trunk/ReleaseNotes.rtf 2007-09-02 18:47:52 UTC (rev 2807) @@ -104,20 +104,65 @@ {\list\listtemplateid99\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid99} {\list\listtemplateid100\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid100} {\list\listtemplateid101\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid101} -{\list\listtemplateid102\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid102}} -{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}{\listoverride\listid7\listoverridecount0\ls7}{\listoverride\listid8\listoverridecount0\ls8}{\listoverride\listid9\listoverridecount0\ls9}{\listoverride\listid10\listoverridecount0\ls10}{\listoverride\listid11\listoverridecount0\ls11}{\listoverride\listid12\listoverridecount0\ls12}{\listoverride\listid13\listoverridecount0\ls13}{\listoverride\listid14\listoverridecount0\ls14}{\listoverride\listid15\listoverridecount0\ls15}{\listoverride\listid16\listoverridecount0\ls16}{\listoverride\listid17\listoverridecount0\ls17}{\listoverride\listid18\listoverridecount0\ls18}{\listoverride\listid19\listoverridecount0\ls19}{\listoverride\listid20\listoverridecount0\ls20}{\listoverride\listid21\listoverridecount0\ls21}{\listoverride\listid22\listoverridecount0\ls22}{\listoverride\listid23\listoverridecount0\ls23}{\listoverride\listid24\listoverridecount0\ls24}{\listoverride\listid25\listoverridecount0\ls25}{\listoverride\listid26\listoverridecount0\ls26}{\listoverride\listid27\listoverridecount0\ls27}{\listoverride\listid28\listoverridecount0\ls28}{\listoverride\listid29\listoverridecount0\ls29}{\listoverride\listid30\listoverridecount0\ls30}{\listoverride\listid31\listoverridecount0\ls31}{\listoverride\listid32\listoverridecount0\ls32}{\listoverride\listid33\listoverridecount0\ls33}{\listoverride\listid34\listoverridecount0\ls34}{\listoverride\listid35\listoverridecount0\ls35}{\listoverride\listid36\listoverridecount0\ls36}{\listoverride\listid37\listoverridecount0\ls37}{\listoverride\listid38\listoverridecount0\ls38}{\listoverride\listid39\listoverridecount0\ls39}{\listoverride\listid40\listoverridecount0\ls40}{\listoverride\listid41\listoverridecount0\ls41}{\listoverride\listid42\listoverridecount0\ls42}{\listoverride\listid43\listoverridecount0\ls43}{\listoverride\listid44\listoverridecount0\ls44}{\listoverride\listid45\listoverridecount0\ls45}{\listoverride\listid46\listoverridecount0\ls46}{\listoverride\listid47\listoverridecount0\ls47}{\listoverride\listid48\listoverridecount0\ls48}{\listoverride\listid49\listoverridecount0\ls49}{\listoverride\listid50\listoverridecount0\ls50}{\listoverride\listid51\listoverridecount0\ls51}{\listoverride\listid52\listoverridecount0\ls52}{\listoverride\listid53\listoverridecount0\ls53}{\listoverride\listid54\listoverridecount0\ls54}{\listoverride\listid55\listoverridecount0\ls55}{\listoverride\listid56\listoverridecount0\ls56}{\listoverride\listid57\listoverridecount0\ls57}{\listoverride\listid58\listoverridecount0\ls58}{\listoverride\listid59\listoverridecount0\ls59}{\listoverride\listid60\listoverridecount0\ls60}{\listoverride\listid61\listoverridecount0\ls61}{\listoverride\listid62\listoverridecount0\ls62}{\listoverride\listid63\listoverridecount0\ls63}{\listoverride\listid64\listoverridecount0\ls64}{\listoverride\listid65\listoverridecount0\ls65}{\listoverride\listid66\listoverridecount0\ls66}{\listoverride\listid67\listoverridecount0\ls67}{\listoverride\listid68\listoverridecount0\ls68}{\listoverride\listid69\listoverridecount0\ls69}{\listoverride\listid70\listoverridecount0\ls70}{\listoverride\listid71\listoverridecount0\ls71}{\listoverride\listid72\listoverridecount0\ls72}{\listoverride\listid73\listoverridecount0\ls73}{\listoverride\listid74\listoverridecount0\ls74}{\listoverride\listid75\listoverridecount0\ls75}{\listoverride\listid76\listoverridecount0\ls76}{\listoverride\listid77\listoverridecount0\ls77}{\listoverride\listid78\listoverridecount0\ls78}{\listoverride\listid79\listoverridecount0\ls79}{\listoverride\listid80\listoverridecount0\ls80}{\listoverride\listid81\listoverridecount0\ls81}{\listoverride\listid82\listoverridecount0\ls82}{\listoverride\listid83\listoverridecount0\ls83}{\listoverride\listid84\listoverridecount0\ls84}{\listoverride\listid85\listoverridecount0\ls85}{\listoverride\listid86\listoverridecount0\ls86}{\listoverride\listid87\listoverridecount0\ls87}{\listoverride\listid88\listoverridecount0\ls88}{\listoverride\listid89\listoverridecount0\ls89}{\listoverride\listid90\listoverridecount0\ls90}{\listoverride\listid91\listoverridecount0\ls91}{\listoverride\listid92\listoverridecount0\ls92}{\listoverride\listid93\listoverridecount0\ls93}{\listoverride\listid94\listoverridecount0\ls94}{\listoverride\listid95\listoverridecount0\ls95}{\listoverride\listid96\listoverridecount0\ls96}{\listoverride\listid97\listoverridecount0\ls97}{\listoverride\listid98\listoverridecount0\ls98}{\listoverride\listid99\listoverridecount0\ls99}{\listoverride\listid100\listoverridecount0\ls100}{\listoverride\listid101\listoverridecount0\ls101}{\listoverride\listid102\listoverridecount0\ls102}} +{\list\listtemplateid102\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid102} +{\list\listtemplateid103\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid103} +{\list\listtemplateid104\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace360\levelindent0{\*\levelmarker \{disc\}}{\leveltext\leveltemplateid0\'02\'05.;}{\levelnumbers\'01;}}{\listname ;}\listid104}} +{\*\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}{\listoverride\listid2\listoverridecount0\ls2}{\listoverride\listid3\listoverridecount0\ls3}{\listoverride\listid4\listoverridecount0\ls4}{\listoverride\listid5\listoverridecount0\ls5}{\listoverride\listid6\listoverridecount0\ls6}{\listoverride\listid7\listoverridecount0\ls7}{\listoverride\listid8\listoverridecount0\ls8}{\listoverride\listid9\listoverridecount0\ls9}{\listoverride\listid10\listoverridecount0\ls10}{\listoverride\listid11\listoverridecount0\ls11}{\listoverride\listid12\listoverridecount0\ls12}{\listoverride\listid13\listoverridecount0\ls13}{\listoverride\listid14\listoverridecount0\ls14}{\listoverride\listid15\listoverridecount0\ls15}{\listoverride\listid16\listoverridecount0\ls16}{\listoverride\listid17\listoverridecount0\ls17}{\listoverride\listid18\listoverridecount0\ls18}{\listoverride\listid19\listoverridecount0\ls19}{\listoverride\listid20\listoverridecount0\ls20}{\listoverride\listid21\listoverridecount0\ls21}{\listoverride\listid22\listoverridecount0\ls22}{\listoverride\listid23\listoverridecount0\ls23}{\listoverride\listid24\listoverridecount0\ls24}{\listoverride\listid25\listoverridecount0\ls25}{\listoverride\listid26\listoverridecount0\ls26}{\listoverride\listid27\listoverridecount0\ls27}{\listoverride\listid28\listoverridecount0\ls28}{\listoverride\listid29\listoverridecount0\ls29}{\listoverride\listid30\listoverridecount0\ls30}{\listoverride\listid31\listoverridecount0\ls31}{\listoverride\listid32\listoverridecount0\ls32}{\listoverride\listid33\listoverridecount0\ls33}{\listoverride\listid34\listoverridecount0\ls34}{\listoverride\listid35\listoverridecount0\ls35}{\listoverride\listid36\listoverridecount0\ls36}{\listoverride\listid37\listoverridecount0\ls37}{\listoverride\listid38\listoverridecount0\ls38}{\listoverride\listid39\listoverridecount0\ls39}{\listoverride\listid40\listoverridecount0\ls40}{\listoverride\listid41\listoverridecount0\ls41}{\listoverride\listid42\listoverridecount0\ls42}{\listoverride\listid43\listoverridecount0\ls43}{\listoverride\listid44\listoverridecount0\ls44}{\listoverride\listid45\listoverridecount0\ls45}{\listoverride\listid46\listoverridecount0\ls46}{\listoverride\listid47\listoverridecount0\ls47}{\listoverride\listid48\listoverridecount0\ls48}{\listoverride\listid49\listoverridecount0\ls49}{\listoverride\listid50\listoverridecount0\ls50}{\listoverride\listid51\listoverridecount0\ls51}{\listoverride\listid52\listoverridecount0\ls52}{\listoverride\listid53\listoverridecount0\ls53}{\listoverride\listid54\listoverridecount0\ls54}{\listoverride\listid55\listoverridecount0\ls55}{\listoverride\listid56\listoverridecount0\ls56}{\listoverride\listid57\listoverridecount0\ls57}{\listoverride\listid58\listoverridecount0\ls58}{\listoverride\listid59\listoverridecount0\ls59}{\listoverride\listid60\listoverridecount0\ls60}{\listoverride\listid61\listoverridecount0\ls61}{\listoverride\listid62\listoverridecount0\ls62}{\listoverride\listid63\listoverridecount0\ls63}{\listoverride\listid64\listoverridecount0\ls64}{\listoverride\listid65\listoverridecount0\ls65}{\listoverride\listid66\listoverridecount0\ls66}{\listoverride\listid67\listoverridecount0\ls67}{\listoverride\listid68\listoverridecount0\ls68}{\listoverride\listid69\listoverridecount0\ls69}{\listoverride\listid70\listoverridecount0\ls70}{\listoverride\listid71\listoverridecount0\ls71}{\listoverride\listid72\listoverridecount0\ls72}{\listoverride\listid73\listoverridecount0\ls73}{\listoverride\listid74\listoverridecount0\ls74}{\listoverride\listid75\listoverridecount0\ls75}{\listoverride\listid76\listoverridecount0\ls76}{\listoverride\listid77\listoverridecount0\ls77}{\listoverride\listid78\listoverridecount0\ls78}{\listoverride\listid79\listoverridecount0\ls79}{\listoverride\listid80\listoverridecount0\ls80}{\listoverride\listid81\listoverridecount0\ls81}{\listoverride\listid82\listoverridecount0\ls82}{\listoverride\listid83\listoverridecount0\ls83}{\listoverride\listid84\listoverridecount0\ls84}{\listoverride\listid85\listoverridecount0\ls85}{\listoverride\listid86\listoverridecount0\ls86}{\listoverride\listid87\listoverridecount0\ls87}{\listoverride\listid88\listoverridecount0\ls88}{\listoverride\listid89\listoverridecount0\ls89}{\listoverride\listid90\listoverridecount0\ls90}{\listoverride\listid91\listoverridecount0\ls91}{\listoverride\listid92\listoverridecount0\ls92}{\listoverride\listid93\listoverridecount0\ls93}{\listoverride\listid94\listoverridecount0\ls94}{\listoverride\listid95\listoverridecount0\ls95}{\listoverride\listid96\listoverridecount0\ls96}{\listoverride\listid97\listoverridecount0\ls97}{\listoverride\listid98\listoverridecount0\ls98}{\listoverride\listid99\listoverridecount0\ls99}{\listoverride\listid100\listoverridecount0\ls100}{\listoverride\listid101\listoverridecount0\ls101}{\listoverride\listid102\listoverridecount0\ls102}{\listoverride\listid103\listoverridecount0\ls103}{\listoverride\listid104\listoverridecount0\ls104}} \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural \f0\fs60 \cf0 Skim Release Notes\ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \f1\fs22 \cf0 \ -Last update: 19 August 2007 (rev -\f2\fs20 2685) +Last update: 2 September 2007 (rev +\f2\fs20 2806) \f1\fs22 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \f3\b\fs28 \cf0 \ +Changes since 0.7\ +\pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural +\cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f4\i\fs26 \cf0 New Features\ +\pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural +\ls1\ilvl0 +\f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Hold down Shift key while moving the end points of a line to restrict the angle of a line to multiples of 45 degrees.\ +{\listtext \'a5 }You can now save the PDF and notes together in a bundle. This format is safe for email and version control.\ +{\listtext \'a5 }Notes in PDF bundles can be searched through Spotlight.\ +{\listtext \'a5 }The skimnotes command line tool can now use the standard input or standard output.\ +{\listtext \'a5 }The skimnotes command line tool now won't write empty notes.\ +{\listtext \'a5 }New preferences for default fontto use for anchored notes.\ +{\listtext \'a5 }New hidden default to keep notes on top by defaul.\ +{\listtext \'a5 }You can now double-click in the table of search results or the table of contents to force going back to the link.\ +{\listtext \'a5 }New "Select None" menu item in the Edit menu.\ +{\listtext \'a5 }Added tool-tips in the note table.\ +{\listtext \'a5 }Added a link to the Wiki in the Help menu.\ +{\listtext \'a5 }New hidden default to add the Skim creator code to files it saves. Setting this can cause PDFs saved by Skim to be opened by Skim.\ +\pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural + +\f3\b\fs28 \cf0 \ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f4\i\fs26 \cf0 Bugs Fixed\ +\pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural +\ls2\ilvl0 +\f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Add white outline to magnify cursors so they are visible on a dark background.\ +{\listtext \'a5 }Adjust the size of page columns so they use as little space as possible.\ +{\listtext \'a5 }Periodically save current documents, so the last open files can be opened after a crash.\ +{\listtext \'a5 }Fix editing of lines.\ +{\listtext \'a5 }Show the snapshot cursor only when pressing the mouse.\ +{\listtext \'a5 }Unarchive notes as text in skimnotes command line tool.\ +{\listtext \'a5 }Fix a crasher with search highlighting when reloading the document.\ +{\listtext \'a5 }Update French localization.\ +{\listtext \'a5 }Scale page thumbnails proportionally to avoid a PDFKit bug.\ +{\listtext \'a5 }Fix of a leak in the note window. This should also improve stickyness of the note window position and size.\ +{\listtext \'a5 }Change the creator code for Skim, as the one we used was already registered.\ +{\listtext \'a5 }The toolbar items to add notes now can be clicked using the spacebar when selected.\ +\pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural + +\f3\b\fs28 \cf0 \ Changes since 0.6.1\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural \cf0 \ @@ -125,7 +170,7 @@ \f4\i\fs26 \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls1\ilvl0 +\ls3\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }You can now resize all rows of the notes table to view the full text.\ {\listtext \'a5 }PDFSync from the editor now shows an indication of the target location.\ {\listtext \'a5 }The tool tip of the table of contents and the table of search results now shows a preview of the target location.\ @@ -149,7 +194,7 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls2\ilvl0 +\ls4\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Fix spell checking freeze for single page PDFs.\ {\listtext \'a5 }Selecting text is now completely disabled in presentation mode.\ {\listtext \'a5 }Changed shortcuts of Search PDF and Presentation to be consistent with other application.\ @@ -180,12 +225,12 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls3\ilvl0 +\ls5\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Fix updater.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls4\ilvl0\cf0 {\listtext \'a5 }Make sure side panes are opened at the saved widths.\ +\ls6\ilvl0\cf0 {\listtext \'a5 }Make sure side panes are opened at the saved widths.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls5\ilvl0\cf0 {\listtext \'a5 }Fix a typo in the scripting dictionary.\ +\ls7\ilvl0\cf0 {\listtext \'a5 }Fix a typo in the scripting dictionary.\ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural @@ -197,7 +242,7 @@ \f4\i\fs26 \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls6\ilvl0 +\ls8\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Default print settings automatically choose landscape for wide pages.\ {\listtext \'a5 }Hidden preference for custom dvi conversion utilitiesto read DVI (e.g. dvips).\ {\listtext \'a5 }You can now spell-check a PDF.\ @@ -207,7 +252,7 @@ {\listtext \'a5 }New View menu item to show the file at the real size at which it would be printed.\ {\listtext \'a5 }Added a Speech menu to Edit menu.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls7\ilvl0\cf0 {\listtext \'a5 }Added keyboard shortcuts 'p' and 'a' to toggle pages and auto-resize in presentation mode.\ +\ls9\ilvl0\cf0 {\listtext \'a5 }Added keyboard shortcuts 'p' and 'a' to toggle pages and auto-resize in presentation mode.\ {\listtext \'a5 }Added French localization. (Thanks Corentin Cras-M\'8eneur!)\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural @@ -216,7 +261,7 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls8\ilvl0 +\ls10\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Correct display of zero line width in Line inspector panel.\ {\listtext \'a5 }Fix broken Note preferences in Italian localization.\ {\listtext \'a5 }Improved security for PDFSync, escape special shell characters.\ @@ -229,7 +274,7 @@ {\listtext \'a5 }Fix layout issues in main window.\ {\listtext \'a5 }Reopen snapshots after a reload at the correct zoom factor.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls9\ilvl0\cf0 {\listtext \'a5 }Notes sorted by contents ignores case and uses numeric compare.\ +\ls11\ilvl0\cf0 {\listtext \'a5 }Notes sorted by contents ignores case and uses numeric compare.\ {\listtext \'a5 }Ignore empty Spotlight search text.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural @@ -242,7 +287,7 @@ \f4\i\fs26 \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls10\ilvl0 +\ls12\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Added some more sorting keys for use in text export templates.\ {\listtext \'a5 }Reorganized document info window, with some new properties.\ {\listtext \'a5 }You can now navigate through a presentation using mouse clicks.\ @@ -250,9 +295,9 @@ {\listtext \'a5 }Added an optional status bar, displaying the page number, number and pages, as well as informatino about the tool mode, if it applies.\ {\listtext \'a5 }You can now print documents from AppleScript.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls11\ilvl0\cf0 {\listtext \'a5 }Pdfsync from AppleScript now goes separately through the go command instead of the open command.\ +\ls13\ilvl0\cf0 {\listtext \'a5 }Pdfsync from AppleScript now goes separately through the go command instead of the open command.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls12\ilvl0\cf0 {\listtext \'a5 }You can now quickly rotate through tool modes using Shift-modified arrow keys.\ +\ls14\ilvl0\cf0 {\listtext \'a5 }You can now quickly rotate through tool modes using Shift-modified arrow keys.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural \f3\b\fs28 \cf0 \ @@ -260,7 +305,7 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls13\ilvl0 +\ls15\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Prevent chaching of update info for updater.\ {\listtext \'a5 }Fix the default text export templates.\ {\listtext \'a5 }Allow other active application windows in front of Skim in presentation mode.\ @@ -283,7 +328,7 @@ \f4\i\fs26 \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls14\ilvl0 +\ls16\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }You can now hide all notes and highlights.\ {\listtext \'a5 }Remember last exported type.\ {\listtext \'a5 }Keyboard shortcut for Export.\ @@ -301,13 +346,13 @@ {\listtext \'a5 }You can now change the icon type of anchored notes from the note's window to some standard proofreader marks.\ {\listtext \'a5 }Hidden default for icon type of anchored notes (SKAnchoredNoteiconType).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls15\ilvl0\cf0 {\listtext \'a5 }Skim now saves the file type and creator code.\ +\ls17\ilvl0\cf0 {\listtext \'a5 }Skim now saves the file type and creator code.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls16\ilvl0\cf0 {\listtext \'a5 }The reading bar is now shown on the thumbnails.\ +\ls18\ilvl0\cf0 {\listtext \'a5 }The reading bar is now shown on the thumbnails.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls17\ilvl0\cf0 {\listtext \'a5 }Add border/line properties to circle, box, text and line notes. Accessible through a new inspector panel and AppleScript.\ +\ls19\ilvl0\cf0 {\listtext \'a5 }Add border/line properties to circle, box, text and line notes. Accessible through a new inspector panel and AppleScript.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls18\ilvl0\cf0 {\listtext \'a5 }Allow setting the interior (fill) color for circles and boxes. Select the check button at the bottom of the color panel.\ +\ls20\ilvl0\cf0 {\listtext \'a5 }Allow setting the interior (fill) color for circles and boxes. Select the check button at the bottom of the color panel.\ {\listtext \'a5 }Add a TeX editor perset for LyX.\ {\listtext \'a5 }You can now reopen snapshots from a previous run.\ {\listtext \'a5 }New preferences for line styles and interior colors.\ @@ -322,7 +367,7 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls19\ilvl0 +\ls21\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Use old-style check for network availability for the updater, as the newer API is not reliable for dial-up connections.\ {\listtext \'a5 }Never add a new note on a click in note tool mode, because undoing such an addition can also remove a text edit in progress.\ {\listtext \'a5 }Update the window title when the document is reloaded; the number of pages can change. \ @@ -332,7 +377,7 @@ {\listtext \'a5 }Add help about cropping pages.\ {\listtext \'a5 }Start and end points for arrow notes in AppleScript are now relative to the page, and changing them automatically changes the bounds.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls20\ilvl0\cf0 {\listtext \'a5 }The side panels in full screen mode are now hidden when you switch to another application.\ +\ls22\ilvl0\cf0 {\listtext \'a5 }The side panels in full screen mode are now hidden when you switch to another application.\ {\listtext \'a5 }Renamed "Arrow" to "Line", as it now allows more general line styles. Also change some keyboard shortcuts.\ {\listtext \'a5 }Enable Password menu item for encrypted files that are flagged as unlocked, as the latter is unreliable in PDFKit.\ {\listtext \'a5 }Fix tab-loop for PDFs with fiallable forms. Also add some help about fillable forms.\ @@ -355,7 +400,7 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls21\ilvl0 +\ls23\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Fixed installation of new versions by updater.\ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural @@ -367,50 +412,50 @@ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls22\ilvl0 +\ls24\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Add a menu item in the Help menu to visit the web site.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls23\ilvl0\cf0 {\listtext \'a5 }Add single-character shortcuts to change the note style in note mode (t, n, c, b, h, u, s, a).\ +\ls25\ilvl0\cf0 {\listtext \'a5 }Add single-character shortcuts to change the note style in note mode (t, n, c, b, h, u, s, a).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls24\ilvl0\cf0 {\listtext \'a5 }Fix PDFSync support to work with file names containing spaces.\ +\ls26\ilvl0\cf0 {\listtext \'a5 }Fix PDFSync support to work with file names containing spaces.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls25\ilvl0\cf0 {\listtext \'a5 }Add hidden default for activation of navigation buttons in presentation mode (SKActivatePresentationNavigationAtBottom).\ +\ls27\ilvl0\cf0 {\listtext \'a5 }Add hidden default for activation of navigation buttons in presentation mode (SKActivatePresentationNavigationAtBottom).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls26\ilvl0\cf0 {\listtext \'a5 }Start search using the find panel at the current page when there is no selection.\ +\ls28\ilvl0\cf0 {\listtext \'a5 }Start search using the find panel at the current page when there is no selection.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls27\ilvl0\cf0 {\listtext \'a5 }Wrap selection using the find panel.\ +\ls29\ilvl0\cf0 {\listtext \'a5 }Wrap selection using the find panel.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls28\ilvl0\cf0 {\listtext \'a5 }Add support for apple remote control. It can be disabled through the hidden default SKEnableAppleRemote.\ +\ls30\ilvl0\cf0 {\listtext \'a5 }Add support for apple remote control. It can be disabled through the hidden default SKEnableAppleRemote.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls29\ilvl0\cf0 {\listtext \'a5 }Hidden defaults for line ending style of arrows (SKLineNoteStartLineStyle, SKLineNoteEndLineStyle).\ +\ls31\ilvl0\cf0 {\listtext \'a5 }Hidden defaults for line ending style of arrows (SKLineNoteStartLineStyle, SKLineNoteEndLineStyle).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls30\ilvl0\cf0 {\listtext \'a5 }Hidden pref option for reading missing notes from separate .skim file (SKReadMissingNotesFromSkimFileOption). \ +\ls32\ilvl0\cf0 {\listtext \'a5 }Hidden pref option for reading missing notes from separate .skim file (SKReadMissingNotesFromSkimFileOption). \ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls31\ilvl0\cf0 {\listtext \'a5 }You can now open the corresponding PDF from a Skim Notes document.\ +\ls33\ilvl0\cf0 {\listtext \'a5 }You can now open the corresponding PDF from a Skim Notes document.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls32\ilvl0\cf0 {\listtext \'a5 }Skim can now read TIFF images from the clipboard.\ +\ls34\ilvl0\cf0 {\listtext \'a5 }Skim can now read TIFF images from the clipboard.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls33\ilvl0\cf0 {\listtext \'a5 }New select tool. Allows you to copy PDF and TIFF images from a section of a page.\ +\ls35\ilvl0\cf0 {\listtext \'a5 }New select tool. Allows you to copy PDF and TIFF images from a section of a page.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls34\ilvl0\cf0 {\listtext \'a5 }You can now search Skim note files from Spotlight.\ +\ls36\ilvl0\cf0 {\listtext \'a5 }You can now search Skim note files from Spotlight.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls35\ilvl0\cf0 {\listtext \'a5 }New Crop menu items and toolbar button.\ +\ls37\ilvl0\cf0 {\listtext \'a5 }New Crop menu items and toolbar button.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls36\ilvl0\cf0 {\listtext \'a5 }Cropping and page rotation are now undoable.\ +\ls38\ilvl0\cf0 {\listtext \'a5 }Cropping and page rotation are now undoable.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls37\ilvl0\cf0 {\listtext \'a5 }Allow reverting a document when it has changed on disk.\ +\ls39\ilvl0\cf0 {\listtext \'a5 }Allow reverting a document when it has changed on disk.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls38\ilvl0\cf0 {\listtext \'a5 }New menu item to set the selection from the content of the page.\ +\ls40\ilvl0\cf0 {\listtext \'a5 }New menu item to set the selection from the content of the page.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls39\ilvl0\cf0 {\listtext \'a5 }Hidden defaults for automatic crop box margins (SKAutoCropBoxMarginWidth, SKAutoCropBoxMarginHeight).\ +\ls41\ilvl0\cf0 {\listtext \'a5 }Hidden defaults for automatic crop box margins (SKAutoCropBoxMarginWidth, SKAutoCropBoxMarginHeight).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls40\ilvl0\cf0 {\listtext \'a5 }New Zoom To Selection menu item and toolbar button.\ +\ls42\ilvl0\cf0 {\listtext \'a5 }New Zoom To Selection menu item and toolbar button.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls41\ilvl0\cf0 {\listtext \'a5 }New preference option to open files fit to the PDF.\ +\ls43\ilvl0\cf0 {\listtext \'a5 }New preference option to open files fit to the PDF.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls42\ilvl0\cf0 {\listtext \'a5 }You can now join markup highlights using shift-click, or by selecting a highlight before adding a new one.\ +\ls44\ilvl0\cf0 {\listtext \'a5 }You can now join markup highlights using shift-click, or by selecting a highlight before adding a new one.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls43\ilvl0\cf0 {\listtext \'a5 }You can now supply templates for text export of notes. See the wiki for more information.\ +\ls45\ilvl0\cf0 {\listtext \'a5 }You can now supply templates for text export of notes. See the wiki for more information.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural \f3\b\fs28 \cf0 \ @@ -418,26 +463,26 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls44\ilvl0 +\ls46\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Fix links in help.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls45\ilvl0\cf0 {\listtext \'a5 }Don't create a new note in note tool mode on mousedown outside a page.\ +\ls47\ilvl0\cf0 {\listtext \'a5 }Don't create a new note in note tool mode on mousedown outside a page.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls46\ilvl0\cf0 {\listtext \'a5 }Don't add new resizable notes in note tool mode when just clicking.\ +\ls48\ilvl0\cf0 {\listtext \'a5 }Don't add new resizable notes in note tool mode when just clicking.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls47\ilvl0\cf0 {\listtext \'a5 }You can now access links that are "hidden" by transparent highlights and arrows.\ +\ls49\ilvl0\cf0 {\listtext \'a5 }You can now access links that are "hidden" by transparent highlights and arrows.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls48\ilvl0\cf0 {\listtext \'a5 }Scroll reading bar to visible when it is shown.\ +\ls50\ilvl0\cf0 {\listtext \'a5 }Scroll reading bar to visible when it is shown.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls49\ilvl0\cf0 {\listtext \'a5 }Scroll to previous position on page when reloading PDF.\ +\ls51\ilvl0\cf0 {\listtext \'a5 }Scroll to previous position on page when reloading PDF.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls50\ilvl0\cf0 {\listtext \'a5 }Escape spaces in TeX editor command.\ +\ls52\ilvl0\cf0 {\listtext \'a5 }Escape spaces in TeX editor command.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls51\ilvl0\cf0 {\listtext \'a5 }Thumbnails now use the current display box.\ +\ls53\ilvl0\cf0 {\listtext \'a5 }Thumbnails now use the current display box.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls52\ilvl0\cf0 {\listtext \'a5 }Retry automatic reloading of files changed on disk a few times.\ +\ls54\ilvl0\cf0 {\listtext \'a5 }Retry automatic reloading of files changed on disk a few times.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls52\ilvl0 +\ls54\ilvl0 \f3\b\fs28 \cf0 \ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 Changes since 0.2\ @@ -447,74 +492,74 @@ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \cf0 New Features\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls53\ilvl0 +\ls55\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }Add shortcuts for bigger/smaller font sizes.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls54\ilvl0\cf0 {\listtext \'a5 }Command-click a snapshot.\ +\ls56\ilvl0\cf0 {\listtext \'a5 }Command-click a snapshot.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls55\ilvl0\cf0 {\listtext \'a5 }We now print notes and highlights.\ +\ls57\ilvl0\cf0 {\listtext \'a5 }We now print notes and highlights.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls56\ilvl0\cf0 {\listtext \'a5 }Add copy/cut/paste items to the contextual menu, when they apply.\ +\ls58\ilvl0\cf0 {\listtext \'a5 }Add copy/cut/paste items to the contextual menu, when they apply.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls57\ilvl0\cf0 {\listtext \'a5 }You can now make a snapshot of a page by Command-clicking a thumbnail.\ +\ls59\ilvl0\cf0 {\listtext \'a5 }You can now make a snapshot of a page by Command-clicking a thumbnail.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls58\ilvl0\cf0 {\listtext \'a5 }Added Dutch localization.\ +\ls60\ilvl0\cf0 {\listtext \'a5 }Added Dutch localization.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls59\ilvl0\cf0 {\listtext \'a5 }We now do not leave Full Screen when switching to another application.\ +\ls61\ilvl0\cf0 {\listtext \'a5 }We now do not leave Full Screen when switching to another application.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls60\ilvl0\cf0 {\listtext \'a5 }Export notes as RTF.\ +\ls62\ilvl0\cf0 {\listtext \'a5 }Export notes as RTF.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls61\ilvl0\cf0 {\listtext \'a5 }Add preference options for default note/highlight colors and text note font.\ +\ls63\ilvl0\cf0 {\listtext \'a5 }Add preference options for default note/highlight colors and text note font.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls62\ilvl0\cf0 {\listtext \'a5 }Add menu item to save the current PDF display settings to be used for new documents.\ +\ls64\ilvl0\cf0 {\listtext \'a5 }Add menu item to save the current PDF display settings to be used for new documents.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls63\ilvl0\cf0 {\listtext \'a5 }Search results from the Find Panel are now also highlighted with a red oval.\ +\ls65\ilvl0\cf0 {\listtext \'a5 }Search results from the Find Panel are now also highlighted with a red oval.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls64\ilvl0\cf0 {\listtext \'a5 }Select search field when opening the Contents pane in full screen mode.\ +\ls66\ilvl0\cf0 {\listtext \'a5 }Select search field when opening the Contents pane in full screen mode.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls65\ilvl0\cf0 {\listtext \'a5 }You can now reset all preferences or all preferences in a pane.\ +\ls67\ilvl0\cf0 {\listtext \'a5 }You can now reset all preferences or all preferences in a pane.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls66\ilvl0\cf0 {\listtext \'a5 }Added Italian localization. (Thanks Andrea Bergia!)\ +\ls68\ilvl0\cf0 {\listtext \'a5 }Added Italian localization. (Thanks Andrea Bergia!)\ {\listtext \'a5 }Screensaver and sleep are now disabled in Presentation mode.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls67\ilvl0\cf0 {\listtext \'a5 }Skim can now return to the last page viewed in a document.\ +\ls69\ilvl0\cf0 {\listtext \'a5 }Skim can now return to the last page viewed in a document.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls68\ilvl0\cf0 {\listtext \'a5 }Link tool tips now show the top of the text when the link refers to the (empty) top of a page. \ +\ls70\ilvl0\cf0 {\listtext \'a5 }Link tool tips now show the top of the text when the link refers to the (empty) top of a page. \ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls69\ilvl0\cf0 {\listtext \'a5 }Skim can now also view separate Skim notes (.skim) files.\ +\ls71\ilvl0\cf0 {\listtext \'a5 }Skim can now also view separate Skim notes (.skim) files.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls70\ilvl0\cf0 {\listtext \'a5 }Using Sparkle for automatic updating. (Thanks Andy Matuschak!)\ +\ls72\ilvl0\cf0 {\listtext \'a5 }Using Sparkle for automatic updating. (Thanks Andy Matuschak!)\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls71\ilvl0\cf0 {\listtext \'a5 }Display the number of pages in the title bar.\ +\ls73\ilvl0\cf0 {\listtext \'a5 }Display the number of pages in the title bar.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls72\ilvl0\cf0 {\listtext \'a5 }Skim can now automatically backup a skim notes file whenever it saves a PDF file.\ +\ls74\ilvl0\cf0 {\listtext \'a5 }Skim can now automatically backup a skim notes file whenever it saves a PDF file.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls73\ilvl0\cf0 {\listtext \'a5 }You can now resize the current note using the arrow keys, when you hold down the Control key.\ +\ls75\ilvl0\cf0 {\listtext \'a5 }You can now resize the current note using the arrow keys, when you hold down the Control key.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls74\ilvl0\cf0 {\listtext \'a5 }Notes are now ordered according to page and location in page.\ +\ls76\ilvl0\cf0 {\listtext \'a5 }Notes are now ordered according to page and location in page.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls75\ilvl0\cf0 {\listtext \'a5 }Several improvements of Skim's custom tool-tips.\ +\ls77\ilvl0\cf0 {\listtext \'a5 }Several improvements of Skim's custom tool-tips.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls76\ilvl0\cf0 {\listtext \'a5 }Add a menu item to select the search field.\ +\ls78\ilvl0\cf0 {\listtext \'a5 }Add a menu item to select the search field.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls77\ilvl0\cf0 {\listtext \'a5 }You can now add arrows to a PDF document.\ +\ls79\ilvl0\cf0 {\listtext \'a5 }You can now add arrows to a PDF document.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls78\ilvl0\cf0 {\listtext \'a5 }You can now add notes from external .skim files rather than just overwriting them.\ +\ls80\ilvl0\cf0 {\listtext \'a5 }You can now add notes from external .skim files rather than just overwriting them.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls79\ilvl0\cf0 {\listtext \'a5 }PDFSync support. See the Wiki for more information.\ +\ls81\ilvl0\cf0 {\listtext \'a5 }PDFSync support. See the Wiki for more information.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls80\ilvl0\cf0 {\listtext \'a5 }You can now set transparent colors from the color panel. \ +\ls82\ilvl0\cf0 {\listtext \'a5 }You can now set transparent colors from the color panel. \ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls81\ilvl0\cf0 {\listtext \'a5 }You can now set separate PDF view settings for full screen mode. \ +\ls83\ilvl0\cf0 {\listtext \'a5 }You can now set separate PDF view settings for full screen mode. \ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls82\ilvl0\cf0 {\listtext \'a5 }Add a Look Up in Dictionary item to the contextual menu.\ +\ls84\ilvl0\cf0 {\listtext \'a5 }Add a Look Up in Dictionary item to the contextual menu.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls83\ilvl0\cf0 {\listtext \'a5 }You can now undo edits of notes and highlights.\ +\ls85\ilvl0\cf0 {\listtext \'a5 }You can now undo edits of notes and highlights.\ {\listtext \'a5 }Add a hidden preference (SKActivateFullScreenNavigationAtBottom) to show the navigation buttons in full screen mode only when moving the mouse at the bottom of the screen. \ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls84\ilvl0\cf0 {\listtext \'a5 }Add hidden preferences for the line widths of circles and boxes (SKCircleNoteLineWidth and SKSquareNoteLineWidth).\ +\ls86\ilvl0\cf0 {\listtext \'a5 }Add hidden preferences for the line widths of circles and boxes (SKCircleNoteLineWidth and SKSquareNoteLineWidth).\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls85\ilvl0\cf0 {\listtext \'a5 }New tool modes for ading notes or highlights.\ +\ls87\ilvl0\cf0 {\listtext \'a5 }New tool modes for ading notes or highlights.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural \f3\b\fs28 \cf0 \ @@ -522,40 +567,40 @@ \f4\i\fs26 \cf0 Bugs Fixed\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls86\ilvl0 +\ls88\ilvl0 \f1\i0\b0\fs22 \cf0 {\listtext \'a5 }We now don't edit new text notes, so they can be moved, resized or deleted.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls87\ilvl0\cf0 {\listtext \'a5 }We now make sure new notes are added to a visible page.\ +\ls89\ilvl0\cf0 {\listtext \'a5 }We now make sure new notes are added to a visible page.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls88\ilvl0\cf0 {\listtext \'a5 }Disable the TOC menu item when there is no TOC.\ +\ls90\ilvl0\cf0 {\listtext \'a5 }Disable the TOC menu item when there is no TOC.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls89\ilvl0\cf0 {\listtext \'a5 }Return to the location that was viewed when reloading a document.\ +\ls91\ilvl0\cf0 {\listtext \'a5 }Return to the location that was viewed when reloading a document.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls90\ilvl0\cf0 {\listtext \'a5 }Search text in a PDf file asynchronously, so it does not block Skim.\ +\ls92\ilvl0\cf0 {\listtext \'a5 }Search text in a PDf file asynchronously, so it does not block Skim.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls91\ilvl0\cf0 {\listtext \'a5 }Fix crashes that can appear for links with missing URLs.\ +\ls93\ilvl0\cf0 {\listtext \'a5 }Fix crashes that can appear for links with missing URLs.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls92\ilvl0\cf0 {\listtext \'a5 }Add separators in the Notes menu for categories.\ +\ls94\ilvl0\cf0 {\listtext \'a5 }Add separators in the Notes menu for categories.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls93\ilvl0\cf0 {\listtext \'a5 }Fix a crasher when reverting a PDF-document.\ +\ls95\ilvl0\cf0 {\listtext \'a5 }Fix a crasher when reverting a PDF-document.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls94\ilvl0\cf0 {\listtext \'a5 }Fix typos in the Help and update for new features.\ +\ls96\ilvl0\cf0 {\listtext \'a5 }Fix typos in the Help and update for new features.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls95\ilvl0\cf0 {\listtext \'a5 }Fix a crasher when reverting the document. Unfortunately this disabled tool tips.\ +\ls97\ilvl0\cf0 {\listtext \'a5 }Fix a crasher when reverting the document. Unfortunately this disabled tool tips.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls96\ilvl0\cf0 {\listtext \'a5 }Open the contents pane to display the search term when opening from Spotlight.\ +\ls98\ilvl0\cf0 {\listtext \'a5 }Open the contents pane to display the search term when opening from Spotlight.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls97\ilvl0\cf0 {\listtext \'a5 }Save notes when auto-saving and exporting as PDF.\ +\ls99\ilvl0\cf0 {\listtext \'a5 }Save notes when auto-saving and exporting as PDF.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls98\ilvl0\cf0 {\listtext \'a5 }Remember the width of notes pane.\ +\ls100\ilvl0\cf0 {\listtext \'a5 }Remember the width of notes pane.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls99\ilvl0\cf0 {\listtext \'a5 }Fix leaks leading to excessive memory use.\ +\ls101\ilvl0\cf0 {\listtext \'a5 }Fix leaks leading to excessive memory use.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls100\ilvl0\cf0 {\listtext \'a5 }Fix back-tabbing through notes and links.\ +\ls102\ilvl0\cf0 {\listtext \'a5 }Fix back-tabbing through notes and links.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls101\ilvl0\cf0 {\listtext \'a5 }Zooming using the scroll-wheel now only affects the current window.\ +\ls103\ilvl0\cf0 {\listtext \'a5 }Zooming using the scroll-wheel now only affects the current window.\ \pard\tx220\tx720\tx1440\tx2880\tx4320\tx5760\tx7200\li720\fi-720\ql\qnatural -\ls102\ilvl0\cf0 {\listtext \'a5 }Lazy updating of page thumbnails to avoid slowdown when opening a file.\ +\ls104\ilvl0\cf0 {\listtext \'a5 }Lazy updating of page thumbnails to avoid slowdown when opening a file.\ \pard\tx1440\tx2880\tx4320\tx5760\tx7200\ql\qnatural \f3\b\fs28 \cf0 \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-02 05:54:20
|
Revision: 2721 http://skim-app.svn.sourceforge.net/skim-app/?rev=2721&view=rev Author: hofman Date: 2007-08-26 13:43:17 -0700 (Sun, 26 Aug 2007) Log Message: ----------- Add a contextual menu to the image view in the note window. Add an action and menu item to show the image in the default application. Copy, paste and delete are already implemented in the superclass. Modified Paths: -------------- trunk/BDSKDragImageView.h trunk/BDSKDragImageView.m trunk/Dutch.lproj/NoteWindow.nib/classes.nib trunk/Dutch.lproj/NoteWindow.nib/info.nib trunk/Dutch.lproj/NoteWindow.nib/keyedobjects.nib trunk/English.lproj/NoteWindow.nib/classes.nib trunk/English.lproj/NoteWindow.nib/info.nib trunk/English.lproj/NoteWindow.nib/keyedobjects.nib trunk/French.lproj/NoteWindow.nib/classes.nib trunk/French.lproj/NoteWindow.nib/info.nib trunk/French.lproj/NoteWindow.nib/keyedobjects.nib trunk/Italian.lproj/NoteWindow.nib/classes.nib trunk/Italian.lproj/NoteWindow.nib/info.nib trunk/Italian.lproj/NoteWindow.nib/keyedobjects.nib Modified: trunk/BDSKDragImageView.h =================================================================== --- trunk/BDSKDragImageView.h 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/BDSKDragImageView.h 2007-08-26 20:43:17 UTC (rev 2721) @@ -47,6 +47,8 @@ - (id)delegate; - (void)setDelegate:(id)newDelegate; +- (IBAction)show:(id)sender; + @end @interface NSObject (BDSKDragImageViewDelegate) @@ -55,4 +57,5 @@ - (BOOL)dragImageView:(BDSKDragImageView *)view writeDataToPasteboard:(NSPasteboard *)pasteboard; - (NSArray *)dragImageView:(BDSKDragImageView *)view namesOfPromisedFilesDroppedAtDestination:(NSURL *)dropDestination; - (NSImage *)dragImageForDragImageView:(BDSKDragImageView *)view; +- (BOOL)dragImageView:(BDSKDragImageView *)view setImage:(NSImage *)image; @end Modified: trunk/BDSKDragImageView.m =================================================================== --- trunk/BDSKDragImageView.m 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/BDSKDragImageView.m 2007-08-26 20:43:17 UTC (rev 2721) @@ -65,6 +65,39 @@ delegate = newDelegate; } +- (IBAction)show:(id)sender { + NSImage *image = [self image]; + + if (image == nil) { + NSBeep(); + return; + } + + NSFileManager *fm = [NSFileManager defaultManager]; + NSString *basePath = [NSTemporaryDirectory() stringByAppendingPathComponent:@"SkimNote"]; + NSString *path = [basePath stringByAppendingPathExtension:@"tiff"]; + int i = 0; + + while ([fm fileExistsAtPath:path]) + path = [[basePath stringByAppendingFormat:@"-%i", ++i] stringByAppendingPathExtension:@"tiff"]; + + [[image TIFFRepresentation] writeToFile:path atomically:YES]; + [[NSWorkspace sharedWorkspace] openTempFile:path]; +} + +- (BOOL)validateMenuItem:(NSMenuItem *)menuItem { + SEL action = [menuItem action]; + if (action == @selector(copy:)) + return [self image] && [delegate respondsToSelector:@selector(dragImageView:writeDataToPasteboard:)]; + else if (action == @selector(delete:)) + return [self image] != nil; + else if (action == @selector(show:)) + return [self image] != nil; + else if ([[BDSKDragImageView superclass] instancesRespondToSelector:_cmd]) + [super validateMenuItem:menuItem]; + return YES; +} + - (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender{ NSDragOperation dragOp = NSDragOperationNone; if ([delegate respondsToSelector:@selector(dragImageView:validateDrop:)]) @@ -91,9 +124,19 @@ return [delegate dragImageView:self acceptDrop:sender]; return NO; } - -- (void)mouseDown:(NSEvent *)theEvent -{ +/* +- (void)keyDown:(NSEvent *)theEvent { + NSString *characters = [theEvent charactersIgnoringModifiers]; + unichar eventChar = [characters length] > 0 ? [characters characterAtIndex:0] : 0; + unsigned modifierFlags = [theEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask; + + if ((eventChar == NSDeleteCharacter || eventChar == NSDeleteFunctionKey) && modifierFlags == 0 && [self image]) + [self delete:self]; + else + [super keyDown:theEvent]; +} +*/ +- (void)mouseDown:(NSEvent *)theEvent { BOOL keepOn = YES; BOOL isInside = YES; NSPoint mouseLoc; Modified: trunk/Dutch.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/Dutch.lproj/NoteWindow.nib/classes.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/Dutch.lproj/NoteWindow.nib/classes.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -1,6 +1,7 @@ { IBClasses = ( { + ACTIONS = {copy = id; delete = id; paste = id; show = id; }; CLASS = BDSKDragImageView; LANGUAGE = ObjC; OUTLETS = {delegate = id; }; Modified: trunk/Dutch.lproj/NoteWindow.nib/info.nib =================================================================== --- trunk/Dutch.lproj/NoteWindow.nib/info.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/Dutch.lproj/NoteWindow.nib/info.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -4,8 +4,18 @@ <dict> <key>IBDocumentLocation</key> <string>69 58 356 240 0 0 1440 938 </string> + <key>IBEditorPositions</key> + <dict> + <key>114</key> + <string>69 303 79 87 0 0 1440 938 </string> + </dict> <key>IBFramework Version</key> <string>446.1</string> + <key>IBOpenObjects</key> + <array> + <integer>114</integer> + <integer>7</integer> + </array> <key>IBSystem Version</key> <string>8R218</string> </dict> Modified: trunk/Dutch.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/English.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/English.lproj/NoteWindow.nib/classes.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/English.lproj/NoteWindow.nib/classes.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -1,6 +1,7 @@ { IBClasses = ( { + ACTIONS = {copy = id; delete = id; paste = id; show = id; }; CLASS = BDSKDragImageView; LANGUAGE = ObjC; OUTLETS = {delegate = id; }; Modified: trunk/English.lproj/NoteWindow.nib/info.nib =================================================================== --- trunk/English.lproj/NoteWindow.nib/info.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/English.lproj/NoteWindow.nib/info.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -4,11 +4,17 @@ <dict> <key>IBDocumentLocation</key> <string>69 58 356 240 0 0 1440 938 </string> + <key>IBEditorPositions</key> + <dict> + <key>114</key> + <string>69 303 79 87 0 0 1440 938 </string> + </dict> <key>IBFramework Version</key> <string>446.1</string> <key>IBOpenObjects</key> <array> <integer>7</integer> + <integer>114</integer> </array> <key>IBSystem Version</key> <string>8R218</string> Modified: trunk/English.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/French.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/French.lproj/NoteWindow.nib/classes.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/French.lproj/NoteWindow.nib/classes.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -1,6 +1,7 @@ { IBClasses = ( { + ACTIONS = {copy = id; delete = id; paste = id; show = id; }; CLASS = BDSKDragImageView; LANGUAGE = ObjC; OUTLETS = {delegate = id; }; Modified: trunk/French.lproj/NoteWindow.nib/info.nib =================================================================== --- trunk/French.lproj/NoteWindow.nib/info.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/French.lproj/NoteWindow.nib/info.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -4,11 +4,17 @@ <dict> <key>IBDocumentLocation</key> <string>69 58 356 240 0 0 1440 938 </string> + <key>IBEditorPositions</key> + <dict> + <key>114</key> + <string>69 303 79 106 0 0 1440 938 </string> + </dict> <key>IBFramework Version</key> <string>446.1</string> <key>IBOpenObjects</key> <array> <integer>7</integer> + <integer>114</integer> </array> <key>IBSystem Version</key> <string>8R218</string> Modified: trunk/French.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/Italian.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/Italian.lproj/NoteWindow.nib/classes.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/Italian.lproj/NoteWindow.nib/classes.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -1,6 +1,7 @@ { IBClasses = ( { + ACTIONS = {copy = id; delete = id; paste = id; show = id; }; CLASS = BDSKDragImageView; LANGUAGE = ObjC; OUTLETS = {delegate = id; }; Modified: trunk/Italian.lproj/NoteWindow.nib/info.nib =================================================================== --- trunk/Italian.lproj/NoteWindow.nib/info.nib 2007-08-26 19:39:17 UTC (rev 2720) +++ trunk/Italian.lproj/NoteWindow.nib/info.nib 2007-08-26 20:43:17 UTC (rev 2721) @@ -4,11 +4,17 @@ <dict> <key>IBDocumentLocation</key> <string>70 55 356 240 0 0 1440 938 </string> + <key>IBEditorPositions</key> + <dict> + <key>114</key> + <string>70 300 79 106 0 0 1440 938 </string> + </dict> <key>IBFramework Version</key> <string>446.1</string> <key>IBOpenObjects</key> <array> <integer>7</integer> + <integer>114</integer> </array> <key>IBSystem Version</key> <string>8R218</string> Modified: trunk/Italian.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 23:37:41
|
Revision: 2806 http://skim-app.svn.sourceforge.net/skim-app/?rev=2806&view=rev Author: hofman Date: 2007-09-01 16:37:36 -0700 (Sat, 01 Sep 2007) Log Message: ----------- PerformClick on the imagePopUpButton should send the action when enabled. Modified Paths: -------------- trunk/BDSKImagePopUpButtonCell.m Modified: trunk/BDSKImagePopUpButtonCell.m =================================================================== --- trunk/BDSKImagePopUpButtonCell.m 2007-09-01 21:27:50 UTC (rev 2805) +++ trunk/BDSKImagePopUpButtonCell.m 2007-09-01 23:37:36 UTC (rev 2806) @@ -250,16 +250,12 @@ if ([event type] == NSKeyDown) { // Keyboard event - unichar upAndDownArrowCharacters[2]; - upAndDownArrowCharacters[0] = NSUpArrowFunctionKey; - upAndDownArrowCharacters[1] = NSDownArrowFunctionKey; - NSString *upAndDownArrowString = [NSString stringWithCharacters: upAndDownArrowCharacters length: 2]; - NSCharacterSet *upAndDownArrowCharacterSet = [NSCharacterSet characterSetWithCharactersInString: upAndDownArrowString]; + NSString *characters = [event charactersIgnoringModifiers]; + unichar ch = [characters length] > 0 ? [characters characterAtIndex:0] : 0; - if ([self showsMenuWhenIconClicked] == YES || - [[event characters] rangeOfCharacterFromSet: upAndDownArrowCharacterSet].location != NSNotFound) { + if ([self showsMenuWhenIconClicked] == YES || ch == NSUpArrowFunctionKey || ch == NSDownArrowFunctionKey) { [self showMenuInView:controlView withEvent:event]; - } else if ([[event characters] rangeOfString: @" "].location != NSNotFound) { + } else if (ch == ' ') { [self performClick: controlView]; } } else { @@ -354,10 +350,7 @@ if (shouldSendAction) { NSMenuItem *selectedItem = [self selectedItem]; [NSEvent stopPeriodicEvents]; - [[NSApplication sharedApplication] sendAction: [selectedItem action] - to: [selectedItem target] - from: selectedItem]; - + [NSApp sendAction: [selectedItem action] to: [selectedItem target] from: selectedItem]; } } @@ -369,6 +362,10 @@ - (void)performClick:(id)sender{ [buttonCell performClick: sender]; [super performClick: sender]; + if ([self iconActionEnabled]) { + NSMenuItem *selectedItem = [self selectedItem]; + [NSApp sendAction: [selectedItem action] to: [selectedItem target] from: selectedItem]; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 21:27:54
|
Revision: 2805 http://skim-app.svn.sourceforge.net/skim-app/?rev=2805&view=rev Author: hofman Date: 2007-09-01 14:27:50 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Add category on NSTask with some convenience class methods. Modified Paths: -------------- trunk/SKApplicationController.m trunk/SKDocument.h trunk/SKDocument.m trunk/SKPSProgressController.m trunk/Skim.xcodeproj/project.pbxproj Added Paths: ----------- trunk/NSTask_SKExtensions.h trunk/NSTask_SKExtensions.m Added: trunk/NSTask_SKExtensions.h =================================================================== --- trunk/NSTask_SKExtensions.h (rev 0) +++ trunk/NSTask_SKExtensions.h 2007-09-01 21:27:50 UTC (rev 2805) @@ -0,0 +1,45 @@ +// +// NSTask_SKExtensions.h +// Skim +// +// Created by Christiaan Hofman on 9/1/07. +/* + This software is Copyright (c) 2007 + Christiaan Hofman. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Christiaan Hofman nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import <Cocoa/Cocoa.h> + + +@interface NSTask (SKExtensions) ++ (NSTask *)launchedTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath; ++ (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath; +@end Added: trunk/NSTask_SKExtensions.m =================================================================== --- trunk/NSTask_SKExtensions.m (rev 0) +++ trunk/NSTask_SKExtensions.m 2007-09-01 21:27:50 UTC (rev 2805) @@ -0,0 +1,81 @@ +// +// NSTask_SKExtensions.m +// Skim +// +// Created by Christiaan Hofman on 9/1/07. +/* + This software is Copyright (c) 2007 + Christiaan Hofman. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Christiaan Hofman nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "NSTask_SKExtensions.h" + + +@implementation NSTask (SKExtensions) + ++ (NSTask *)launchedTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath { + NSTask *task = [[[NSTask alloc] init] autorelease]; + + [task setLaunchPath:launchPath]; + [task setCurrentDirectoryPath:directoryPath]; + [task setArguments:arguments]; + [task setStandardOutput:[NSFileHandle fileHandleWithNullDevice]]; + [task setStandardError:[NSFileHandle fileHandleWithNullDevice]]; + @try { + [task launch]; + } + @catch(id exception) { + if ([task isRunning]) + [task terminate]; + NSLog(@"%@ %@ failed", [task description], [task launchPath]); + task = nil; + } + return task; +} + ++ (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath { + NSTask *task = [[self class] launchedTaskWithLaunchPath:launchPath arguments:arguments currentDirectoryPath:directoryPath]; + BOOL success = task != nil; + + if (success) { + if ([task isRunning]) + [task waitUntilExit]; + if ([task isRunning]) { + [task terminate]; + success = NO; + } else { + success = 0 == [task terminationStatus]; + } + } + return success; +} + +@end Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-09-01 20:48:36 UTC (rev 2804) +++ trunk/SKApplicationController.m 2007-09-01 21:27:50 UTC (rev 2805) @@ -57,6 +57,7 @@ #import "SKDocumentController.h" #import "Files_SKExtensions.h" #import "NSGeometry_SKExtensions.h" +#import "NSTask_SKExtensions.h" #define WEBSITE_URL @"http://skim-app.sourceforge.net/" #define WIKI_URL @"http://skim-app.sourceforge.net/wiki/" @@ -347,10 +348,7 @@ if (runImporter) { NSString *mdimportPath = @"/usr/bin/mdimport"; if ([[NSFileManager defaultManager] isExecutableFileAtPath:mdimportPath]) { - NSTask *importerTask = [[[NSTask alloc] init] autorelease]; - [importerTask setLaunchPath:mdimportPath]; - [importerTask setArguments:[NSArray arrayWithObjects:@"-r", importerPath, nil]]; - [importerTask launch]; + [NSTask launchedTaskWithLaunchPath:mdimportPath arguments:[NSArray arrayWithObjects:@"-r", importerPath, nil]]; NSDictionary *info = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithLong:sysVersion], @"lastSysVersion", importerVersion, @"lastImporterVersion", nil]; [[NSUserDefaults standardUserDefaults] setObject:info forKey:@"SKSpotlightVersionInfo"]; Modified: trunk/SKDocument.h =================================================================== --- trunk/SKDocument.h 2007-09-01 20:48:36 UTC (rev 2804) +++ trunk/SKDocument.h 2007-09-01 21:27:50 UTC (rev 2805) @@ -144,8 +144,3 @@ @interface NSView (SKExtensions) - (id)subviewOfClass:(Class)aClass; @end - - -@interface NSTask (SKExtensions) -+ (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath; -@end Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-09-01 20:48:36 UTC (rev 2804) +++ trunk/SKDocument.m 2007-09-01 21:27:50 UTC (rev 2805) @@ -60,6 +60,7 @@ #import "SKLine.h" #import "SKApplicationController.h" #import "Files_SKExtensions.h" +#import "NSTask_SKExtensions.h" // maximum length of xattr value recommended by Apple #define MAX_XATTR_LENGTH 2048 @@ -1231,12 +1232,7 @@ [cmdString insertString:@"/usr/bin/osascript " atIndex:0]; } - NSTask *task = [[[NSTask alloc] init] autorelease]; - [task setLaunchPath:@"/bin/sh"]; - [task setArguments:[NSArray arrayWithObjects:@"-c", cmdString, nil]]; - [task setCurrentDirectoryPath:[file stringByDeletingLastPathComponent]]; - [task setEnvironment:environment]; - [task launch]; + [NSTask launchedTaskWithLaunchPath:@"/bin/sh" arguments:[NSArray arrayWithObjects:@"-c", cmdString, nil] currentDirectoryPath:[file stringByDeletingLastPathComponent]]; } } @@ -1671,23 +1667,3 @@ } @end - - -@implementation NSTask (SKExtensions) - -+ (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath { - NSTask *task = [[[NSTask alloc] init] autorelease]; - - [task setLaunchPath:launchPath]; - [task setCurrentDirectoryPath:directoryPath]; - [task setArguments:arguments]; - [task setStandardOutput:[NSFileHandle fileHandleWithNullDevice]]; - [task setStandardError:[NSFileHandle fileHandleWithNullDevice]]; - [task launch]; - if ([task isRunning]) - [task waitUntilExit]; - - return 0 == [task terminationStatus]; -} - -@end Modified: trunk/SKPSProgressController.m =================================================================== --- trunk/SKPSProgressController.m 2007-09-01 20:48:36 UTC (rev 2804) +++ trunk/SKPSProgressController.m 2007-09-01 21:27:50 UTC (rev 2805) @@ -38,6 +38,7 @@ #import "SKPSProgressController.h" #import "NSString_SKExtensions.h" +#import "NSTask_SKExtensions.h" enum { SKConversionSucceeded = 0, @@ -337,22 +338,8 @@ [fm createDirectoryAtPath:tmpDir attributes:nil]; - task = [[NSTask alloc] init]; - [task setLaunchPath:commandPath]; - [task setArguments:arguments]; - [task setCurrentDirectoryPath:[dviFile stringByDeletingLastPathComponent]]; - [task setStandardError:[NSFileHandle fileHandleWithNullDevice]]; + task = [[NSTask launchedTaskWithLaunchPath:commandPath arguments:arguments currentDirectoryPath:[dviFile stringByDeletingLastPathComponent]] retain]; - @try { - [task launch]; - } - @catch(id exception) { - if([task isRunning]) - [task terminate]; - NSLog(@"%@ %@ failed", [task description], [task launchPath]); - success = NO; - } - ms = [self methodSignatureForSelector:@selector(conversionStarted)]; invocation = [NSInvocation invocationWithMethodSignature:ms]; [invocation setTarget:self]; Modified: trunk/Skim.xcodeproj/project.pbxproj =================================================================== --- trunk/Skim.xcodeproj/project.pbxproj 2007-09-01 20:48:36 UTC (rev 2804) +++ trunk/Skim.xcodeproj/project.pbxproj 2007-09-01 21:27:50 UTC (rev 2805) @@ -140,6 +140,7 @@ CE7469180B7F40B700CBF969 /* Skim.icns in Resources */ = {isa = PBXBuildFile; fileRef = CE7469170B7F40B600CBF969 /* Skim.icns */; }; CE7C20500C259A5D0059E08C /* NSColor_SKExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE7C204E0C259A5D0059E08C /* NSColor_SKExtensions.m */; }; CE7C5D190BD8086C0011315D /* ToolbarLineNote.tiff in Resources */ = {isa = PBXBuildFile; fileRef = CE7C5D180BD8086C0011315D /* ToolbarLineNote.tiff */; }; + CE820A220C8A0E310020E6B0 /* NSTask_SKExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = CE820A200C8A0E310020E6B0 /* NSTask_SKExtensions.m */; }; CE898F060C843A8B008A0856 /* PDFDDocument.icns in Resources */ = {isa = PBXBuildFile; fileRef = CE898F050C843A8B008A0856 /* PDFDDocument.icns */; }; CE8B46E90C29CA00005CE7F1 /* SKLineInspector.m in Sources */ = {isa = PBXBuildFile; fileRef = CE8B46E70C29CA00005CE7F1 /* SKLineInspector.m */; }; CE8B46F00C29CA3D005CE7F1 /* LineInspector.nib in Resources */ = {isa = PBXBuildFile; fileRef = CE8B46EA0C29CA3D005CE7F1 /* LineInspector.nib */; }; @@ -507,6 +508,8 @@ CE7C204D0C259A5D0059E08C /* NSColor_SKExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSColor_SKExtensions.h; sourceTree = "<group>"; }; CE7C204E0C259A5D0059E08C /* NSColor_SKExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSColor_SKExtensions.m; sourceTree = "<group>"; }; CE7C5D180BD8086C0011315D /* ToolbarLineNote.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; name = ToolbarLineNote.tiff; path = Images/ToolbarLineNote.tiff; sourceTree = "<group>"; }; + CE820A1F0C8A0E310020E6B0 /* NSTask_SKExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSTask_SKExtensions.h; sourceTree = "<group>"; }; + CE820A200C8A0E310020E6B0 /* NSTask_SKExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSTask_SKExtensions.m; sourceTree = "<group>"; }; CE87EF690BA9FF5A0027BBDD /* skimhelp.css */ = {isa = PBXFileReference; explicitFileType = text; fileEncoding = 30; name = skimhelp.css; path = "English.lproj/Skim Help/sty/skimhelp.css"; sourceTree = "<group>"; }; CE898F050C843A8B008A0856 /* PDFDDocument.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = PDFDDocument.icns; path = Images/PDFDDocument.icns; sourceTree = "<group>"; }; CE8B46E60C29CA00005CE7F1 /* SKLineInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SKLineInspector.h; sourceTree = "<group>"; }; @@ -809,6 +812,8 @@ CE070EA10B89039700733CC8 /* NSScrollView_SKExtensions.m */, CE38ECD10B8093B200A1B779 /* NSString_SKExtensions.h */, CE38ECD20B8093B200A1B779 /* NSString_SKExtensions.m */, + CE820A1F0C8A0E310020E6B0 /* NSTask_SKExtensions.h */, + CE820A200C8A0E310020E6B0 /* NSTask_SKExtensions.m */, CEAA67230C70A882006BD633 /* NSURL_SKExtensions.h */, CEAA67240C70A882006BD633 /* NSURL_SKExtensions.m */, CEF7119F0B90B714003A2771 /* NSUserDefaultsController_SKExtensions.h */, @@ -1488,6 +1493,7 @@ CE5BEA190C7C635400EBDCF7 /* NSGeometry_SKExtensions.m in Sources */, CE5BF8010C7CBF6300EBDCF7 /* SKTableView.m in Sources */, CE5BF8430C7CC24A00EBDCF7 /* SKOutlineView.m in Sources */, + CE820A220C8A0E310020E6B0 /* NSTask_SKExtensions.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 20:48:49
|
Revision: 2804 http://skim-app.svn.sourceforge.net/skim-app/?rev=2804&view=rev Author: hofman Date: 2007-09-01 13:48:36 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Remove some unnecessary saving of graphics states. Modified Paths: -------------- trunk/PDFPage_SKExtensions.m trunk/SKPDFHoverWindow.m trunk/SKPDFView.m trunk/SKSnapshotWindowController.m Modified: trunk/PDFPage_SKExtensions.m =================================================================== --- trunk/PDFPage_SKExtensions.m 2007-09-01 20:27:26 UTC (rev 2803) +++ trunk/PDFPage_SKExtensions.m 2007-09-01 20:48:36 UTC (rev 2804) @@ -105,7 +105,6 @@ NSImage *image = [[NSImage alloc] initWithSize:bounds.size]; [image lockFocus]; - [NSGraphicsContext saveGraphicsState]; [[NSGraphicsContext currentContext] setImageInterpolation:NSImageInterpolationHigh]; if ([self rotation]) { NSAffineTransform *transform = [NSAffineTransform transform]; @@ -127,7 +126,6 @@ bounds.origin = NSZeroPoint; NSRectFill(bounds); [self drawWithBox:box]; - [NSGraphicsContext restoreGraphicsState]; [image unlockFocus]; return [image autorelease]; @@ -169,7 +167,6 @@ image = [[NSImage alloc] initWithSize:thumbnailSize]; [image lockFocus]; - [NSGraphicsContext saveGraphicsState]; [[NSGraphicsContext currentContext] setImageInterpolation:NSImageInterpolationHigh]; [NSGraphicsContext saveGraphicsState]; [[NSColor whiteColor] set]; @@ -209,7 +206,6 @@ [NSBezierPath fillRect:readingBarRect]; } } - [NSGraphicsContext restoreGraphicsState]; [image unlockFocus]; return [image autorelease]; Modified: trunk/SKPDFHoverWindow.m =================================================================== --- trunk/SKPDFHoverWindow.m 2007-09-01 20:27:26 UTC (rev 2803) +++ trunk/SKPDFHoverWindow.m 2007-09-01 20:48:36 UTC (rev 2804) @@ -230,12 +230,10 @@ image = [[NSImage alloc] initWithSize:targetRect.size]; [image lockFocus]; - [NSGraphicsContext saveGraphicsState]; [pageImage drawInRect:targetRect fromRect:sourceRect operation:NSCompositeCopy fraction:1.0]; [labelColor setFill]; [NSBezierPath fillHorizontalOvalAroundRect:labelRect]; [labelString drawWithRect:labelRect options:NSStringDrawingUsesLineFragmentOrigin]; - [NSGraphicsContext restoreGraphicsState]; [image unlockFocus]; [attrs release]; Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-09-01 20:27:26 UTC (rev 2803) +++ trunk/SKPDFView.m 2007-09-01 20:48:36 UTC (rev 2804) @@ -3327,10 +3327,8 @@ [[self window] cacheImageInRect:NSInsetRect([[self documentView] convertRect:selRect toView:nil], -2.0, -2.0)]; [self lockFocus]; - [NSGraphicsContext saveGraphicsState]; [[NSColor blackColor] set]; [NSBezierPath strokeRect:NSInsetRect(NSIntegralRect([self convertRect:selRect fromView:[self documentView]]), 0.5, 0.5)]; - [NSGraphicsContext restoreGraphicsState]; [self unlockFocus]; [[self window] enableFlushWindow]; [[self window] flushWindow]; Modified: trunk/SKSnapshotWindowController.m =================================================================== --- trunk/SKSnapshotWindowController.m 2007-09-01 20:27:26 UTC (rev 2803) +++ trunk/SKSnapshotWindowController.m 2007-09-01 20:48:36 UTC (rev 2804) @@ -326,7 +326,6 @@ image = [[NSImage alloc] initWithSize:thumbnailSize]; [image lockFocus]; - [NSGraphicsContext saveGraphicsState]; [[NSGraphicsContext currentContext] setImageInterpolation:NSImageInterpolationHigh]; if (isScaled || hasShadow) { NSAffineTransform *transform = [NSAffineTransform transform]; @@ -349,7 +348,6 @@ NSRectFill(bounds); [NSGraphicsContext restoreGraphicsState]; [imageRep drawInRect:bounds]; - [NSGraphicsContext restoreGraphicsState]; [image unlockFocus]; return [image autorelease]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 20:27:30
|
Revision: 2803 http://skim-app.svn.sourceforge.net/skim-app/?rev=2803&view=rev Author: hofman Date: 2007-09-01 13:27:26 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Use a larger context string for search results. Modified Paths: -------------- trunk/PDFSelection_SKExtensions.m Modified: trunk/PDFSelection_SKExtensions.m =================================================================== --- trunk/PDFSelection_SKExtensions.m 2007-09-01 17:45:59 UTC (rev 2802) +++ trunk/PDFSelection_SKExtensions.m 2007-09-01 20:27:26 UTC (rev 2803) @@ -70,7 +70,7 @@ // Extend selection. [extendedSelection extendSelectionAtStart:10]; - [extendedSelection extendSelectionAtEnd:30]; + [extendedSelection extendSelectionAtEnd:50]; // get the cleaned string sample = [[extendedSelection string] stringByCollapsingWhitespaceAndNewlinesAndRemovingSurroundingWhitespaceAndNewlines]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 17:46:04
|
Revision: 2802 http://skim-app.svn.sourceforge.net/skim-app/?rev=2802&view=rev Author: hofman Date: 2007-09-01 10:45:59 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Define method to find format popup in an NSView category. Modified Paths: -------------- trunk/SKDocument.h trunk/SKDocument.m trunk/SKPreferenceController.m Modified: trunk/SKDocument.h =================================================================== --- trunk/SKDocument.h 2007-09-01 17:02:12 UTC (rev 2801) +++ trunk/SKDocument.h 2007-09-01 17:45:59 UTC (rev 2802) @@ -141,6 +141,11 @@ @end +@interface NSView (SKExtensions) +- (id)subviewOfClass:(Class)aClass; +@end + + @interface NSTask (SKExtensions) + (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath; @end Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-09-01 17:02:12 UTC (rev 2801) +++ trunk/SKDocument.m 2007-09-01 17:45:59 UTC (rev 2802) @@ -159,37 +159,23 @@ #pragma mark Document read/write -static NSPopUpButton *popUpButtonSubview(NSView *view) -{ - if ([view isKindOfClass:[NSPopUpButton class]]) - return (NSPopUpButton *)view; - - NSEnumerator *viewEnum = [[view subviews] objectEnumerator]; - NSView *subview; - NSPopUpButton *popup; - - while (subview = [viewEnum nextObject]) { - if (popup = popUpButtonSubview(subview)) - return popup; - } - return nil; -} - - (BOOL)prepareSavePanel:(NSSavePanel *)savePanel { if (exportUsingPanel) { - NSPopUpButton *formatPopup = popUpButtonSubview([savePanel accessoryView]); - NSString *lastExportedType = [[NSUserDefaults standardUserDefaults] stringForKey:@"SKLastExportedType"]; - if ([[self pdfDocument] allowsPrinting] == NO) { - int index = [formatPopup indexOfItemWithRepresentedObject:SKEmbeddedPDFDocumentType]; - if (index != -1) - [formatPopup removeItemAtIndex:index]; - } - if (formatPopup && lastExportedType) { - int index = [formatPopup indexOfItemWithRepresentedObject:lastExportedType]; - if (index != -1 && index != [formatPopup indexOfSelectedItem]) { - [formatPopup selectItemAtIndex:index]; - [formatPopup sendAction:[formatPopup action] to:[formatPopup target]]; + NSPopUpButton *formatPopup = [[savePanel accessoryView] subviewOfClass:[NSPopUpButton class]]; + if (formatPopup) { + NSString *lastExportedType = [[NSUserDefaults standardUserDefaults] stringForKey:@"SKLastExportedType"]; + if ([[self pdfDocument] allowsPrinting] == NO) { + int index = [formatPopup indexOfItemWithRepresentedObject:SKEmbeddedPDFDocumentType]; + if (index != -1) + [formatPopup removeItemAtIndex:index]; } + if (lastExportedType) { + int index = [formatPopup indexOfItemWithRepresentedObject:lastExportedType]; + if (index != -1 && index != [formatPopup indexOfSelectedItem]) { + [formatPopup selectItemAtIndex:index]; + [formatPopup sendAction:[formatPopup action] to:[formatPopup target]]; + } + } } } return YES; @@ -1668,6 +1654,25 @@ @end +@implementation NSView (SKExtensions) + +- (id)subviewOfClass:(Class)aClass { + if ([self isKindOfClass:aClass]) + return self; + + NSEnumerator *viewEnum = [[self subviews] objectEnumerator]; + NSView *view, *subview; + + while (subview = [viewEnum nextObject]) { + if (view = [subview subviewOfClass:aClass]) + return view; + } + return nil; +} + +@end + + @implementation NSTask (SKExtensions) + (BOOL)runTaskWithLaunchPath:(NSString *)launchPath arguments:(NSArray *)arguments currentDirectoryPath:(NSString *)directoryPath { Modified: trunk/SKPreferenceController.m =================================================================== --- trunk/SKPreferenceController.m 2007-09-01 17:02:12 UTC (rev 2801) +++ trunk/SKPreferenceController.m 2007-09-01 17:45:59 UTC (rev 2802) @@ -49,27 +49,27 @@ static NSString *SKTeXEditorArguments[] = {@"-l %line \"%file\"", @"+%line \"%file\"", @"+%line \"%file\"", @"--no-wait +%line \"%file\"", @"--no-wait +%line \"%file\"", @"\"%file\" %line"}; -@interface NSView (SKExtensions) +@interface NSView (SKPreferenceControllerExtensions) - (void)deactivateColorAndLineWells; @end -@implementation NSView (SKExtensions) +@implementation NSView (SKPreferenceControllerExtensions) - (void)deactivateColorAndLineWells { [[self subviews] makeObjectsPerformSelector:_cmd]; } @end -@interface NSColorWell (SKExtensions) +@interface NSColorWell (SKPreferenceControllerExtensions) @end -@implementation NSColorWell (SKExtensions) +@implementation NSColorWell (SKPreferenceControllerExtensions) - (void)deactivateColorAndLineWells { [self deactivate]; [super deactivateColorAndLineWells]; } @end -@implementation SKLineWell (SKExtensions) +@implementation SKLineWell (SKPreferenceControllerExtensions) - (void)deactivateColorAndLineWells { [self deactivate]; [super deactivateColorAndLineWells]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 17:02:19
|
Revision: 2801 http://skim-app.svn.sourceforge.net/skim-app/?rev=2801&view=rev Author: hofman Date: 2007-09-01 10:02:12 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Don't set creator code by default. Modified Paths: -------------- trunk/InitialUserDefaults.plist Modified: trunk/InitialUserDefaults.plist =================================================================== --- trunk/InitialUserDefaults.plist 2007-09-01 16:54:26 UTC (rev 2800) +++ trunk/InitialUserDefaults.plist 2007-09-01 17:02:12 UTC (rev 2801) @@ -237,7 +237,7 @@ <key>SUScheduledCheckInterval</key> <integer>86400</integer> <key>SKShouldSetCreatorCode</key> - <true/> + <false/> </dict> <key>ResettableKeys</key> <dict> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 16:54:37
|
Revision: 2800 http://skim-app.svn.sourceforge.net/skim-app/?rev=2800&view=rev Author: hofman Date: 2007-09-01 09:54:26 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Add a deselectAll: method to PDFView subclass. Modified Paths: -------------- trunk/SKPDFView.h trunk/SKPDFView.m Modified: trunk/SKPDFView.h =================================================================== --- trunk/SKPDFView.h 2007-09-01 16:22:07 UTC (rev 2799) +++ trunk/SKPDFView.h 2007-09-01 16:54:26 UTC (rev 2800) @@ -155,6 +155,7 @@ - (void)setTypeSelectHelper:(SKTypeSelectHelper *)newTypeSelectHelper; - (IBAction)delete:(id)sender; +- (IBAction)deselectAll:(id)sender; - (IBAction)autoSelectContent:(id)sender; - (void)addAnnotationFromMenu:(id)sender; Modified: trunk/SKPDFView.m =================================================================== --- trunk/SKPDFView.m 2007-09-01 16:22:07 UTC (rev 2799) +++ trunk/SKPDFView.m 2007-09-01 16:54:26 UTC (rev 2800) @@ -868,10 +868,15 @@ } - (IBAction)selectAll:(id)sender { - if (toolMode == SKTextToolMode || toolMode == SKNoteToolMode) + if (toolMode == SKTextToolMode) [super selectAll:sender]; } +- (IBAction)deselectAll:(id)sender { + if (toolMode == SKTextToolMode) + [self setCurrentSelection:nil]; +} + - (IBAction)autoSelectContent:(id)sender { if (toolMode == SKSelectToolMode) { PDFPage *page = [self currentPage]; @@ -2182,6 +2187,10 @@ return [activeAnnotation isNoteAnnotation]; } else if (action == @selector(printDocument:)) { return [[self document] allowsPrinting]; + } else if (action == @selector(selectAll:)) { + return toolMode == SKTextToolMode; + } else if (action == @selector(deselectAll:)) { + return [self currentSelection] && toolMode == SKTextToolMode; } else if (action == @selector(autoSelectContent:)) { return toolMode == SKSelectToolMode; } else { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 16:22:15
|
Revision: 2799 http://skim-app.svn.sourceforge.net/skim-app/?rev=2799&view=rev Author: hofman Date: 2007-09-01 09:22:07 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Declare and set OS types for .skim and .pdfd. Modified Paths: -------------- trunk/Info.plist trunk/SKDocument.m trunk/SKNotesDocument.m Modified: trunk/Info.plist =================================================================== --- trunk/Info.plist 2007-09-01 16:01:56 UTC (rev 2798) +++ trunk/Info.plist 2007-09-01 16:22:07 UTC (rev 2799) @@ -92,6 +92,10 @@ <string>NoteDocument</string> <key>CFBundleTypeName</key> <string>Skim Notes</string> + <key>CFBundleTypeOSTypes</key> + <array> + <string>SKNT</string> + </array> <key>CFBundleTypeRole</key> <string>Editor</string> <key>LSIsAppleDefaultForType</key> @@ -423,6 +427,8 @@ <string>net.sourceforge.skim-app.pdfd</string> <key>UTTypeTagSpecification</key> <dict> + <key>com.apple.ostype</key> + <string>PDFD</string> <key>public.filename-extension</key> <array> <string>pdfd</string> @@ -442,6 +448,8 @@ <string>net.sourceforge.skim-app.skimnotes</string> <key>UTTypeTagSpecification</key> <dict> + <key>com.apple.ostype</key> + <string>SKNT</string> <key>public.filename-extension</key> <array> <string>skim</string> Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-09-01 16:01:56 UTC (rev 2798) +++ trunk/SKDocument.m 2007-09-01 16:22:07 UTC (rev 2799) @@ -423,6 +423,10 @@ if ([[[absoluteURL path] pathExtension] isEqualToString:@"pdf"] || ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKEmbeddedPDFDocumentType] || [typeName isEqualToString:SKBarePDFDocumentType])) [dict setObject:[NSNumber numberWithUnsignedLong:'PDF '] forKey:NSFileHFSTypeCode]; + else if ([[[absoluteURL path] pathExtension] isEqualToString:@"pdfd"] || [typeName isEqualToString:SKPDFBundleDocumentType]) + [dict setObject:[NSNumber numberWithUnsignedLong:'PDFD'] forKey:NSFileHFSTypeCode]; + else if ([[[absoluteURL path] pathExtension] isEqualToString:@"skim"] || [typeName isEqualToString:SKNotesDocumentType]) + [dict setObject:[NSNumber numberWithUnsignedLong:'SKNT'] forKey:NSFileHFSTypeCode]; else if ([[[absoluteURL path] pathExtension] isEqualToString:@"rtf"] || [typeName isEqualToString:SKNotesRTFDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'RTF '] forKey:NSFileHFSTypeCode]; else if ([[[absoluteURL path] pathExtension] isEqualToString:@"txt"] || [typeName isEqualToString:SKNotesTextDocumentType]) Modified: trunk/SKNotesDocument.m =================================================================== --- trunk/SKNotesDocument.m 2007-09-01 16:01:56 UTC (rev 2798) +++ trunk/SKNotesDocument.m 2007-09-01 16:22:07 UTC (rev 2799) @@ -148,7 +148,9 @@ if ([[NSUserDefaults standardUserDefaults] boolForKey:SKShouldSetCreatorCodeKey] && [typeName isEqualToString:SKNotesDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'SKim'] forKey:NSFileHFSCreatorCode]; - if ([[[absoluteURL path] pathExtension] isEqualToString:@"rtf"] || [typeName isEqualToString:SKNotesRTFDocumentType]) + if ([[[absoluteURL path] pathExtension] isEqualToString:@"skim"] || [typeName isEqualToString:SKNotesDocumentType]) + [dict setObject:[NSNumber numberWithUnsignedLong:'SKNT'] forKey:NSFileHFSTypeCode]; + else if ([[[absoluteURL path] pathExtension] isEqualToString:@"rtf"] || [typeName isEqualToString:SKNotesRTFDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'RTF '] forKey:NSFileHFSTypeCode]; else if ([[[absoluteURL path] pathExtension] isEqualToString:@"txt"] || [typeName isEqualToString:SKNotesTextDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'TEXT'] forKey:NSFileHFSTypeCode]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 16:02:01
|
Revision: 2798 http://skim-app.svn.sourceforge.net/skim-app/?rev=2798&view=rev Author: hofman Date: 2007-09-01 09:01:56 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Set correct file attributes of files in PDF bundles when saving. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-09-01 15:30:08 UTC (rev 2797) +++ trunk/SKDocument.m 2007-09-01 16:01:56 UTC (rev 2798) @@ -289,10 +289,14 @@ fileEnum = [[fm directoryContentsAtPath:tmpPath] objectEnumerator]; while (success && (file = [fileEnum nextObject])) { NSString *filePath = [path stringByAppendingPathComponent:file]; - if ([fm movePath:[tmpPath stringByAppendingPathComponent:file] toPath:filePath handler:nil]) - [fm changeFileAttributes:[self fileAttributesToWriteToURL:[NSURL fileURLWithPath:filePath] ofType:typeName forSaveOperation:saveOperation originalContentsURL:[self fileURL] error:NULL] atPath:filePath]; - else if ([ourImportantExtensions containsObject:[[file pathExtension] lowercaseString]]) + if ([fm movePath:[tmpPath stringByAppendingPathComponent:file] toPath:filePath handler:nil]) { + NSURL *fileURL = [NSURL fileURLWithPath:filePath]; + NSString *fileType = [[NSDocumentController sharedDocumentController] typeForContentsOfURL:fileURL error:NULL]; + NSDictionary *fileAttributes = [self fileAttributesToWriteToURL:fileURL ofType:fileType forSaveOperation:saveOperation originalContentsURL:[self fileURL] error:NULL]; + [fm changeFileAttributes:fileAttributes atPath:filePath]; + } else if ([ourImportantExtensions containsObject:[[file pathExtension] lowercaseString]]) { success = NO; + } } if (success) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 15:30:15
|
Revision: 2797 http://skim-app.svn.sourceforge.net/skim-app/?rev=2797&view=rev Author: hofman Date: 2007-09-01 08:30:08 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Set file attributes of files in PDF bundles when saving. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-09-01 13:30:45 UTC (rev 2796) +++ trunk/SKDocument.m 2007-09-01 15:30:08 UTC (rev 2797) @@ -270,7 +270,6 @@ NSSet *ourImportantExtensions = [NSSet setWithObjects:@"pdf", @"skim", nil]; NSEnumerator *fileEnum; NSString *file; - BOOL didMove; NSMutableDictionary *attributes = [[fm fileAttributesAtPath:path traverseLink:YES] mutableCopy]; [attributes addEntriesFromDictionary:[self fileAttributesToWriteToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation originalContentsURL:[self fileURL] error:NULL]]; unsigned long permissions = [[attributes objectForKey:NSFilePosixPermissions] unsignedLongValue]; @@ -289,8 +288,10 @@ fileEnum = [[fm directoryContentsAtPath:tmpPath] objectEnumerator]; while (success && (file = [fileEnum nextObject])) { - didMove = [fm movePath:[tmpPath stringByAppendingPathComponent:file] toPath:[path stringByAppendingPathComponent:file] handler:nil]; - if (didMove == NO && [ourImportantExtensions containsObject:[[file pathExtension] lowercaseString]]) + NSString *filePath = [path stringByAppendingPathComponent:file]; + if ([fm movePath:[tmpPath stringByAppendingPathComponent:file] toPath:filePath handler:nil]) + [fm changeFileAttributes:[self fileAttributesToWriteToURL:[NSURL fileURLWithPath:filePath] ofType:typeName forSaveOperation:saveOperation originalContentsURL:[self fileURL] error:NULL] atPath:filePath]; + else if ([ourImportantExtensions containsObject:[[file pathExtension] lowercaseString]]) success = NO; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 13:31:06
|
Revision: 2796 http://skim-app.svn.sourceforge.net/skim-app/?rev=2796&view=rev Author: hofman Date: 2007-09-01 06:30:45 -0700 (Sat, 01 Sep 2007) Log Message: ----------- Add default saving file attributes when overwriting a PDF bundle. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-08-31 12:28:58 UTC (rev 2795) +++ trunk/SKDocument.m 2007-09-01 13:30:45 UTC (rev 2796) @@ -272,6 +272,7 @@ NSString *file; BOOL didMove; NSMutableDictionary *attributes = [[fm fileAttributesAtPath:path traverseLink:YES] mutableCopy]; + [attributes addEntriesFromDictionary:[self fileAttributesToWriteToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation originalContentsURL:[self fileURL] error:NULL]]; unsigned long permissions = [[attributes objectForKey:NSFilePosixPermissions] unsignedLongValue]; [attributes setObject:[NSNumber numberWithUnsignedLong:permissions | 0200] forKey:NSFilePosixPermissions]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-09-01 01:52:34
|
Revision: 2743 http://skim-app.svn.sourceforge.net/skim-app/?rev=2743&view=rev Author: hofman Date: 2007-08-28 06:42:30 -0700 (Tue, 28 Aug 2007) Log Message: ----------- Improvements to command line tool. Allow writing notes to standard output. Extra argument to set the format of the notes to write. Modified Paths: -------------- trunk/skimnotes.m Modified: trunk/skimnotes.m =================================================================== --- trunk/skimnotes.m 2007-08-28 12:45:12 UTC (rev 2742) +++ trunk/skimnotes.m 2007-08-28 13:42:30 UTC (rev 2743) @@ -5,8 +5,8 @@ #define SKIM_RTF_NOTES_KEY @"net_sourceforge_skim-app_rtf_notes" #define SKIM_TEXT_NOTES_KEY @"net_sourceforge_skim-app_text_notes" -static char *usageStr = "Usage:\n skimnotes set PDF_FILE [SKIM_FILE]\n skimnotes get PDF_FILE [SKIM_FILE|RTF_FILE|TEXT_FILE]\n skimnotes remove PDF_FILE"; -static char *versionStr = "SkimNotes command-line client, version 0.2."; +static char *usageStr = "Usage:\n skimnotes set PDF_FILE [SKIM_FILE|-]\n skimnotes get [-format skim|text|rtf] PDF_FILE [SKIM_FILE|RTF_FILE|TEXT_FILE|-]\n skimnotes remove PDF_FILE\n skimnotes help"; +static char *versionStr = "SkimNotes command-line client, version 0.3."; enum { SKNActionGet, @@ -14,37 +14,80 @@ SKNActionRemove }; +enum { + SKNFormatAuto, + SKNFormatSkim, + SKNFormatText, + SKNFormatRTF +}; + static inline NSString *SKNNormalizedPath(NSString *path, NSString *basePath) { - unichar ch = [path length] ? [path characterAtIndex:0] : 0; - if (basePath && ch != '/' && ch != '~') - path = [basePath stringByAppendingPathComponent:path]; - return [path stringByStandardizingPath]; + if ([path isEqualToString:@"-"] == NO) { + unichar ch = [path length] ? [path characterAtIndex:0] : 0; + if (basePath && ch != '/' && ch != '~') + path = [basePath stringByAppendingPathComponent:path]; + path = [path stringByStandardizingPath]; + } + return path; } +static inline void SKNWriteUsageAndVersion() { + fprintf (stderr, "%s\n%s\n", usageStr, versionStr); +} + int main (int argc, const char * argv[]) { int action = 0; - if (argc == 2 && (strcmp("-h", argv[1]) == 0 || strcmp("-help", argv[1]) == 0)) { - fprintf (stderr, "%s\n%s\n", usageStr, versionStr); - exit (0); - } else if (argc > 2 && strcmp("get", argv[1]) == 0) { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + NSArray *args = [[NSProcessInfo processInfo] arguments]; + + if (argc < 3) { + if (argc == 2 && ([[args objectAtIndex:1] isEqualToString:@"-h"] || [[args objectAtIndex:1] isEqualToString:@"-help"] || [[args objectAtIndex:1] isEqualToString:@"help"])) { + SKNWriteUsageAndVersion(); + exit (0); + } else { + SKNWriteUsageAndVersion(); + exit (1); + } + } + + NSString *actionString = [args objectAtIndex:2]; + if ([actionString isEqualToString:@"get"]) { action = SKNActionGet; - } else if (argc > 2 && strcmp("set", argv[1]) == 0) { + } else if ([actionString isEqualToString:@"set"]) { action = SKNActionSet; - } else if (argc > 2 && strcmp("remove", argv[1]) == 0) { + } else if ([actionString isEqualToString:@"remove"]) { action = SKNActionRemove; } else { - fprintf (stderr, "%s\n%s\n", usageStr, versionStr); + SKNWriteUsageAndVersion(); exit (1); } - NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; - + NSString *formatString = nil; + int format = SKNFormatAuto; + int offset = 2; + + if ([[args objectAtIndex:2] isEqualToString:@"-format"]) { + if (argc < 5) { + SKNWriteUsageAndVersion(); + exit (1); + } + offset = 4; + formatString = [args objectAtIndex:3]; + if ([formatString caseInsensitiveCompare:@"skim"] == NSOrderedSame) + format = SKNFormatSkim; + if ([formatString caseInsensitiveCompare:@"text"] == NSOrderedSame || [formatString caseInsensitiveCompare:@"txt"] == NSOrderedSame) + format = SKNFormatText; + if ([formatString caseInsensitiveCompare:@"rtf"] == NSOrderedSame) + format = SKNFormatRTF; + } + NSFileManager *fm = [NSFileManager defaultManager]; BOOL success = NO; NSString *currentDir = [fm currentDirectoryPath]; - NSString *pdfPath = SKNNormalizedPath([[[NSProcessInfo processInfo] arguments] objectAtIndex:2], currentDir); - NSString *notesPath = argc < 4 ? nil : SKNNormalizedPath([[[NSProcessInfo processInfo] arguments] objectAtIndex:3], currentDir); + NSString *pdfPath = SKNNormalizedPath([args objectAtIndex:offset], currentDir); + NSString *notesPath = argc < offset + 2 ? nil : SKNNormalizedPath([args objectAtIndex:offset + 1], currentDir); BOOL isDir = NO; if (action != SKNActionRemove && notesPath == nil) { @@ -59,27 +102,46 @@ } else if (action == SKNActionGet) { NSError *error = nil; NSData *data = nil; - if ([[notesPath pathExtension] caseInsensitiveCompare:@"rtf"] == NSOrderedSame) { - data = [fm extendedAttributeNamed:SKIM_RTF_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; + if (format == SKNFormatAuto) { + NSString *extension = [notesPath pathExtension]; + if ([extension caseInsensitiveCompare:@"rtf"] == NSOrderedSame) + format = SKNFormatRTF; + else if ([[notesPath pathExtension] caseInsensitiveCompare:@"txt"] == NSOrderedSame || [[notesPath pathExtension] caseInsensitiveCompare:@"text"] == NSOrderedSame) + format = SKNFormatText; + else + format = SKNFormatSkim; + } + if (format = SKNFormatSkim) { + NSError *error = nil; + data = [fm extendedAttributeNamed:SKIM_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; if (data == nil && [error code] == ENOATTR) - data = [NSData data]; - } else if ([[notesPath pathExtension] caseInsensitiveCompare:@"txt"] == NSOrderedSame || [[notesPath pathExtension] caseInsensitiveCompare:@"text"] == NSOrderedSame) { + data = [NSKeyedArchiver archivedDataWithRootObject:[NSArray array]]; + } else if (format = SKNFormatText) { NSError *error = nil; NSString *string = [fm propertyListFromExtendedAttributeNamed:SKIM_TEXT_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; data = [string dataUsingEncoding:NSUTF8StringEncoding]; if (string == nil && [error code] == ENOATTR) data = [NSData data]; - } else { - NSError *error = nil; - data = [fm extendedAttributeNamed:SKIM_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; + } else if (format = SKNFormatRTF) { + data = [fm extendedAttributeNamed:SKIM_RTF_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; if (data == nil && [error code] == ENOATTR) - data = [NSKeyedArchiver archivedDataWithRootObject:[NSArray array]]; + data = [NSData data]; } - if (data) - success = [data writeToFile:notesPath atomically:YES]; - } else if (action == SKNActionSet && notesPath && [fm fileExistsAtPath:notesPath isDirectory:&isDir] && isDir == NO) { - NSData *data = [NSData dataWithContentsOfFile:notesPath]; + if (data) { + if ([notesPath isEqualToString:@"-"]) { + [(NSFileHandle *)[NSFileHandle fileHandleWithStandardOutput] writeData:data]; + success = YES; + } else { + success = [data writeToFile:notesPath atomically:YES]; + } + } + } else if (action == SKNActionSet && notesPath && ([notesPath isEqualToString:@"-"] || ([fm fileExistsAtPath:notesPath isDirectory:&isDir] && isDir == NO))) { + NSData *data = nil; NSError *error = nil; + if ([notesPath isEqualToString:@"-"]) + data = [[NSFileHandle fileHandleWithStandardInput] readDataToEndOfFile]; + else + data = [NSData dataWithContentsOfFile:notesPath]; if (data) { success = [fm removeExtendedAttribute:SKIM_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; if (success || [error code] == ENOATTR) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 23:25:49
|
Revision: 2744 http://skim-app.svn.sourceforge.net/skim-app/?rev=2744&view=rev Author: hofman Date: 2007-08-28 06:48:16 -0700 (Tue, 28 Aug 2007) Log Message: ----------- Replace = by ==. Use appropriate file extension for notes file when a format is passed. Modified Paths: -------------- trunk/skimnotes.m Modified: trunk/skimnotes.m =================================================================== --- trunk/skimnotes.m 2007-08-28 13:42:30 UTC (rev 2743) +++ trunk/skimnotes.m 2007-08-28 13:48:16 UTC (rev 2744) @@ -91,7 +91,7 @@ BOOL isDir = NO; if (action != SKNActionRemove && notesPath == nil) { - notesPath = [[pdfPath stringByDeletingPathExtension] stringByAppendingPathExtension:@"skim"]; + notesPath = [[pdfPath stringByDeletingPathExtension] stringByAppendingPathExtension:format == SKNFormatText ? @"txt" : format == SKNFormatRTF ? @"rtf" : @"skim"]; } if ([[pdfPath pathExtension] caseInsensitiveCompare:@"pdf"] == NSOrderedSame && @@ -111,18 +111,18 @@ else format = SKNFormatSkim; } - if (format = SKNFormatSkim) { + if (format == SKNFormatSkim) { NSError *error = nil; data = [fm extendedAttributeNamed:SKIM_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; if (data == nil && [error code] == ENOATTR) data = [NSKeyedArchiver archivedDataWithRootObject:[NSArray array]]; - } else if (format = SKNFormatText) { + } else if (format == SKNFormatText) { NSError *error = nil; NSString *string = [fm propertyListFromExtendedAttributeNamed:SKIM_TEXT_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; data = [string dataUsingEncoding:NSUTF8StringEncoding]; if (string == nil && [error code] == ENOATTR) data = [NSData data]; - } else if (format = SKNFormatRTF) { + } else if (format == SKNFormatRTF) { data = [fm extendedAttributeNamed:SKIM_RTF_NOTES_KEY atPath:pdfPath traverseLink:YES error:&error]; if (data == nil && [error code] == ENOATTR) data = [NSData data]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 12:29:01
|
Revision: 2795 http://skim-app.svn.sourceforge.net/skim-app/?rev=2795&view=rev Author: hofman Date: 2007-08-31 05:28:58 -0700 (Fri, 31 Aug 2007) Log Message: ----------- Add a hidden default for setting our creator code for native file types. Default to true, is that correct? Modified Paths: -------------- trunk/InitialUserDefaults.plist trunk/SKDocument.m trunk/SKNotesDocument.m trunk/SKStringConstants.h trunk/SKStringConstants.m Modified: trunk/InitialUserDefaults.plist =================================================================== --- trunk/InitialUserDefaults.plist 2007-08-31 11:57:41 UTC (rev 2794) +++ trunk/InitialUserDefaults.plist 2007-08-31 12:28:58 UTC (rev 2795) @@ -236,6 +236,8 @@ <false/> <key>SUScheduledCheckInterval</key> <integer>86400</integer> + <key>SKShouldSetCreatorCode</key> + <true/> </dict> <key>ResettableKeys</key> <dict> Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-08-31 11:57:41 UTC (rev 2794) +++ trunk/SKDocument.m 2007-08-31 12:28:58 UTC (rev 2795) @@ -412,7 +412,7 @@ NSMutableDictionary *dict = [[[super fileAttributesToWriteToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation originalContentsURL:absoluteOriginalContentsURL error:outError] mutableCopy] autorelease]; // only set the creator code for our native types - if ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKPDFBundleDocumentType] || [typeName isEqualToString:SKNotesDocumentType]) + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKShouldSetCreatorCodeKey] && ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKPDFBundleDocumentType] || [typeName isEqualToString:SKNotesDocumentType])) [dict setObject:[NSNumber numberWithUnsignedLong:'SKim'] forKey:NSFileHFSCreatorCode]; if ([[[absoluteURL path] pathExtension] isEqualToString:@"pdf"] || ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKEmbeddedPDFDocumentType] || [typeName isEqualToString:SKBarePDFDocumentType])) Modified: trunk/SKNotesDocument.m =================================================================== --- trunk/SKNotesDocument.m 2007-08-31 11:57:41 UTC (rev 2794) +++ trunk/SKNotesDocument.m 2007-08-31 12:28:58 UTC (rev 2795) @@ -47,6 +47,7 @@ #import "NSString_SKExtensions.h" #import "SKTypeSelectHelper.h" #import "SKPDFAnnotationNote.h" +#import "SKStringConstants.h" @implementation SKNotesDocument @@ -144,7 +145,7 @@ NSMutableDictionary *dict = [[[super fileAttributesToWriteToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation originalContentsURL:absoluteOriginalContentsURL error:outError] mutableCopy] autorelease]; // only set the creator code for our native types - if ([typeName isEqualToString:SKNotesDocumentType]) + if ([[NSUserDefaults standardUserDefaults] boolForKey:SKShouldSetCreatorCodeKey] && [typeName isEqualToString:SKNotesDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'SKim'] forKey:NSFileHFSCreatorCode]; if ([[[absoluteURL path] pathExtension] isEqualToString:@"rtf"] || [typeName isEqualToString:SKNotesRTFDocumentType]) Modified: trunk/SKStringConstants.h =================================================================== --- trunk/SKStringConstants.h 2007-08-31 11:57:41 UTC (rev 2794) +++ trunk/SKStringConstants.h 2007-08-31 12:28:58 UTC (rev 2795) @@ -105,3 +105,4 @@ extern NSString *SKAutoOpenDownloadsWindowKey; extern NSString *SKAutoRemoveFinishedDownloadsKey; extern NSString *SKAutoCloseDownloadsWindowKey; +extern NSString *SKShouldSetCreatorCodeKey; Modified: trunk/SKStringConstants.m =================================================================== --- trunk/SKStringConstants.m 2007-08-31 11:57:41 UTC (rev 2794) +++ trunk/SKStringConstants.m 2007-08-31 12:28:58 UTC (rev 2795) @@ -106,3 +106,4 @@ NSString *SKAutoOpenDownloadsWindowKey = @"SKAutoOpenDownloadsWindow"; NSString *SKAutoRemoveFinishedDownloadsKey = @"SKAutoRemoveFinishedDownloads"; NSString *SKAutoCloseDownloadsWindowKey = @"SKAutoCloseDownloadsWindow"; +NSString *SKShouldSetCreatorCodeKey = @"SKShouldSetCreatorCode"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 11:57:48
|
Revision: 2794 http://skim-app.svn.sourceforge.net/skim-app/?rev=2794&view=rev Author: hofman Date: 2007-08-31 04:57:41 -0700 (Fri, 31 Aug 2007) Log Message: ----------- Change creator code, because SKIM was already registered. Modified Paths: -------------- trunk/Info.plist trunk/SKDocument.m trunk/SKNotesDocument.m Modified: trunk/Info.plist =================================================================== --- trunk/Info.plist 2007-08-31 11:33:28 UTC (rev 2793) +++ trunk/Info.plist 2007-08-31 11:57:41 UTC (rev 2794) @@ -355,7 +355,7 @@ <key>CFBundleShortVersionString</key> <string>0.7</string> <key>CFBundleSignature</key> - <string>SKIM</string> + <string>SKim</string> <key>CFBundleVersion</key> <string>v10</string> <key>LSMinimumSystemVersion</key> Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-08-31 11:33:28 UTC (rev 2793) +++ trunk/SKDocument.m 2007-08-31 11:57:41 UTC (rev 2794) @@ -413,7 +413,7 @@ // only set the creator code for our native types if ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKPDFBundleDocumentType] || [typeName isEqualToString:SKNotesDocumentType]) - [dict setObject:[NSNumber numberWithUnsignedLong:'SKIM'] forKey:NSFileHFSCreatorCode]; + [dict setObject:[NSNumber numberWithUnsignedLong:'SKim'] forKey:NSFileHFSCreatorCode]; if ([[[absoluteURL path] pathExtension] isEqualToString:@"pdf"] || ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKEmbeddedPDFDocumentType] || [typeName isEqualToString:SKBarePDFDocumentType])) [dict setObject:[NSNumber numberWithUnsignedLong:'PDF '] forKey:NSFileHFSTypeCode]; Modified: trunk/SKNotesDocument.m =================================================================== --- trunk/SKNotesDocument.m 2007-08-31 11:33:28 UTC (rev 2793) +++ trunk/SKNotesDocument.m 2007-08-31 11:57:41 UTC (rev 2794) @@ -145,7 +145,7 @@ // only set the creator code for our native types if ([typeName isEqualToString:SKNotesDocumentType]) - [dict setObject:[NSNumber numberWithUnsignedLong:'SKIM'] forKey:NSFileHFSCreatorCode]; + [dict setObject:[NSNumber numberWithUnsignedLong:'SKim'] forKey:NSFileHFSCreatorCode]; if ([[[absoluteURL path] pathExtension] isEqualToString:@"rtf"] || [typeName isEqualToString:SKNotesRTFDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'RTF '] forKey:NSFileHFSTypeCode]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 11:33:34
|
Revision: 2793 http://skim-app.svn.sourceforge.net/skim-app/?rev=2793&view=rev Author: hofman Date: 2007-08-31 04:33:28 -0700 (Fri, 31 Aug 2007) Log Message: ----------- Fix a binding-to-owner bug. For the records, this happens when binding to the nib-owner for displayPatternValue#. We now observe the relevant changes in the windowController. Modified Paths: -------------- trunk/Dutch.lproj/Localizable.strings trunk/Dutch.lproj/MainMenu.nib/info.nib trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib trunk/Dutch.lproj/NoteWindow.nib/classes.nib trunk/Dutch.lproj/NoteWindow.nib/keyedobjects.nib trunk/English.lproj/MainMenu.nib/keyedobjects.nib trunk/English.lproj/NoteWindow.nib/classes.nib trunk/English.lproj/NoteWindow.nib/keyedobjects.nib trunk/French.lproj/Localizable.strings trunk/French.lproj/NoteWindow.nib/classes.nib trunk/French.lproj/NoteWindow.nib/keyedobjects.nib trunk/Italian.lproj/Localizable.strings trunk/Italian.lproj/NoteWindow.nib/classes.nib trunk/Italian.lproj/NoteWindow.nib/info.nib trunk/Italian.lproj/NoteWindow.nib/keyedobjects.nib trunk/SKNoteWindowController.h trunk/SKNoteWindowController.m Modified: trunk/Dutch.lproj/Localizable.strings =================================================================== (Binary files differ) Modified: trunk/Dutch.lproj/MainMenu.nib/info.nib =================================================================== --- trunk/Dutch.lproj/MainMenu.nib/info.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/Dutch.lproj/MainMenu.nib/info.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -7,14 +7,10 @@ <key>IBEditorPositions</key> <dict> <key>29</key> - <string>140 614 635 44 0 0 1440 938 </string> + <string>140 614 542 44 0 0 1440 938 </string> </dict> <key>IBFramework Version</key> <string>446.1</string> - <key>IBOpenObjects</key> - <array> - <integer>29</integer> - </array> <key>IBSystem Version</key> <string>8R218</string> </dict> Modified: trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/Dutch.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/Dutch.lproj/NoteWindow.nib/classes.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/Dutch.lproj/NoteWindow.nib/classes.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -13,7 +13,11 @@ { CLASS = SKNoteWindowController; LANGUAGE = ObjC; - OUTLETS = {imageView = BDSKDragImageView; textView = NSTextView; }; + OUTLETS = { + imageView = BDSKDragImageView; + statusBar = SKStatusBar; + textView = NSTextView; + }; SUPERCLASS = NSWindowController; }, { Modified: trunk/Dutch.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/English.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/English.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/English.lproj/NoteWindow.nib/classes.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/English.lproj/NoteWindow.nib/classes.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -13,7 +13,11 @@ { CLASS = SKNoteWindowController; LANGUAGE = ObjC; - OUTLETS = {imageView = BDSKDragImageView; textView = NSTextView; }; + OUTLETS = { + imageView = BDSKDragImageView; + statusBar = SKStatusBar; + textView = NSTextView; + }; SUPERCLASS = NSWindowController; }, { Modified: trunk/English.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/French.lproj/Localizable.strings =================================================================== (Binary files differ) Modified: trunk/French.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/French.lproj/NoteWindow.nib/classes.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/French.lproj/NoteWindow.nib/classes.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -13,7 +13,11 @@ { CLASS = SKNoteWindowController; LANGUAGE = ObjC; - OUTLETS = {imageView = BDSKDragImageView; textView = NSTextView; }; + OUTLETS = { + imageView = BDSKDragImageView; + statusBar = SKStatusBar; + textView = NSTextView; + }; SUPERCLASS = NSWindowController; }, { Modified: trunk/French.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/Italian.lproj/Localizable.strings =================================================================== (Binary files differ) Modified: trunk/Italian.lproj/NoteWindow.nib/classes.nib =================================================================== --- trunk/Italian.lproj/NoteWindow.nib/classes.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/Italian.lproj/NoteWindow.nib/classes.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -13,7 +13,11 @@ { CLASS = SKNoteWindowController; LANGUAGE = ObjC; - OUTLETS = {imageView = BDSKDragImageView; textView = NSTextView; }; + OUTLETS = { + imageView = BDSKDragImageView; + statusBar = SKStatusBar; + textView = NSTextView; + }; SUPERCLASS = NSWindowController; }, { Modified: trunk/Italian.lproj/NoteWindow.nib/info.nib =================================================================== --- trunk/Italian.lproj/NoteWindow.nib/info.nib 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/Italian.lproj/NoteWindow.nib/info.nib 2007-08-31 11:33:28 UTC (rev 2793) @@ -13,8 +13,8 @@ <string>446.1</string> <key>IBOpenObjects</key> <array> + <integer>7</integer> <integer>114</integer> - <integer>7</integer> </array> <key>IBSystem Version</key> <string>8R218</string> Modified: trunk/Italian.lproj/NoteWindow.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/SKNoteWindowController.h =================================================================== --- trunk/SKNoteWindowController.h 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/SKNoteWindowController.h 2007-08-31 11:33:28 UTC (rev 2793) @@ -39,11 +39,12 @@ #import <Cocoa/Cocoa.h> -@class PDFAnnotation, BDSKDragImageView; +@class PDFAnnotation, BDSKDragImageView, SKStatusBar; @interface SKNoteWindowController : NSWindowController { IBOutlet NSTextView *textView; IBOutlet BDSKDragImageView *imageView; + IBOutlet SKStatusBar *statusBar; PDFAnnotation *note; Modified: trunk/SKNoteWindowController.m =================================================================== --- trunk/SKNoteWindowController.m 2007-08-31 09:59:52 UTC (rev 2792) +++ trunk/SKNoteWindowController.m 2007-08-31 11:33:28 UTC (rev 2793) @@ -40,23 +40,15 @@ #import <Quartz/Quartz.h> #import "BDSKDragImageView.h" #import "SKPDFAnnotationNote.h" +#import "SKStatusBar.h" #import "SKDocument.h" #import "NSWindowController_SKExtensions.h" #import "SKStringConstants.h" static NSString *SKNoteWindowFrameAutosaveName = @"SKNoteWindow"; -@interface SKRectStringTransformer : NSValueTransformer -@end - @implementation SKNoteWindowController -+ (void)initialize { - SKRectStringTransformer *transformer = [[SKRectStringTransformer alloc] init]; - [NSValueTransformer setValueTransformer:transformer forName:@"SKRectStringTransformer"]; - [transformer release]; -} - - (id)init { return self = [self initWithNote:nil]; } @@ -68,11 +60,16 @@ keepOnTop = [[NSUserDefaults standardUserDefaults] boolForKey:@"SKKeepNoteWindowsOnTop"]; forceOnTop = NO; + + [note addObserver:self forKeyPath:@"page" options:0 context:NULL]; + [note addObserver:self forKeyPath:@"bounds" options:0 context:NULL]; } return self; } - (void)dealloc { + [note removeObserver:self forKeyPath:@"page"]; + [note removeObserver:self forKeyPath:@"bounds"]; [[NSNotificationCenter defaultCenter] removeObserver:self]; CFRelease(editors); [note release]; @@ -83,6 +80,11 @@ return @"NoteWindow"; } +- (void)updateStatusMessage { + NSRect bounds = [note bounds]; + [statusBar setLeftStringValue:[NSString stringWithFormat:NSLocalizedString(@"Page %@ at (%i, %i)", @"Status message"), [[note page] label], (int)NSMidX(bounds), (int)NSMidY(bounds)]]; +} + - (void)windowDidLoad { [[self window] setBackgroundColor:[NSColor colorWithCalibratedWhite:0.9 alpha:1.0]]; [[self window] setLevel:keepOnTop || forceOnTop ? NSFloatingWindowLevel : NSNormalWindowLevel]; @@ -94,6 +96,8 @@ [textView setFont:font]; } + [self updateStatusMessage]; + [self setWindowFrameAutosaveNameOrCascade:SKNoteWindowFrameAutosaveName]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleDocumentWillSaveNotification:) @@ -122,8 +126,12 @@ - (void)setNote:(PDFAnnotation *)newNote { if (note != newNote) { + [note removeObserver:self forKeyPath:@"page"]; + [note removeObserver:self forKeyPath:@"bounds"]; [note release]; note = [newNote retain]; + [note addObserver:self forKeyPath:@"page" options:0 context:NULL]; + [note addObserver:self forKeyPath:@"bounds" options:0 context:NULL]; } } @@ -240,27 +248,11 @@ size:[[NSUserDefaults standardUserDefaults] floatForKey:SKAnchoredNoteFontSizeKey]]; [textView setFont:font]; } + } else if (object == note) { + if ([keyPath isEqualToString:@"page"] || [keyPath isEqualToString:@"bounds"]) + [self updateStatusMessage]; } else { [super observeValueForKeyPath:keyPath ofObject:object change:change context:context]; } } @end - - -@implementation SKRectStringTransformer - -+ (Class)transformedValueClass { - return [NSString class]; -} - -+ (BOOL)allowsReverseTransformation { - return NO; -} - -- (id)transformedValue:(id)value { - NSRect rect = [value rectValue]; - return [NSString stringWithFormat:@"(%i, %i)", (int)NSMidX(rect), (int)NSMidY(rect)]; -} - -@end - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 10:00:00
|
Revision: 2792 http://skim-app.svn.sourceforge.net/skim-app/?rev=2792&view=rev Author: hofman Date: 2007-08-31 02:59:52 -0700 (Fri, 31 Aug 2007) Log Message: ----------- fix typos Modified Paths: -------------- trunk/SKApplicationController.m Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-08-31 09:55:11 UTC (rev 2791) +++ trunk/SKApplicationController.m 2007-08-31 09:59:52 UTC (rev 2792) @@ -58,8 +58,8 @@ #import "Files_SKExtensions.h" #import "NSGeometry_SKExtensions.h" -#define WEBSITE_URL @"@"http://skim-app.sourceforge.net/" -#define WIKI_URL @"@"http://skim-app.sourceforge.net/wiki/" +#define WEBSITE_URL @"http://skim-app.sourceforge.net/" +#define WIKI_URL @"http://skim-app.sourceforge.net/wiki/" @implementation SKApplicationController This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-31 09:55:15
|
Revision: 2791 http://skim-app.svn.sourceforge.net/skim-app/?rev=2791&view=rev Author: hofman Date: 2007-08-31 02:55:11 -0700 (Fri, 31 Aug 2007) Log Message: ----------- Add a link to the Wiki in the help menu. Modified Paths: -------------- trunk/Dutch.lproj/MainMenu.nib/classes.nib trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib trunk/English.lproj/MainMenu.nib/classes.nib trunk/English.lproj/MainMenu.nib/keyedobjects.nib trunk/French.lproj/MainMenu.nib/classes.nib trunk/French.lproj/MainMenu.nib/keyedobjects.nib trunk/Italian.lproj/MainMenu.nib/classes.nib trunk/Italian.lproj/MainMenu.nib/keyedobjects.nib trunk/SKApplicationController.h trunk/SKApplicationController.m Modified: trunk/Dutch.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/Dutch.lproj/MainMenu.nib/classes.nib 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/Dutch.lproj/MainMenu.nib/classes.nib 2007-08-31 09:55:11 UTC (rev 2791) @@ -66,14 +66,17 @@ LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + {CLASS = NSView; LANGUAGE = ObjC; SUPERCLASS = NSResponder; }, { ACTIONS = { editBookmarks = id; openBookmark = id; + saveCurrentOpenDocuments = id; showDownloads = id; showPreferencePanel = id; showReleaseNotes = id; visitWebSite = id; + visitWiki = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; @@ -85,8 +88,13 @@ SUPERCLASS = NSDocumentController; }, {CLASS = SKSplashContentView; LANGUAGE = ObjC; SUPERCLASS = NSView; }, - {CLASS = SKSplashWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, { + ACTIONS = {fadeOut = id; }; + CLASS = SKSplashWindow; + LANGUAGE = ObjC; + SUPERCLASS = NSWindow; + }, + { ACTIONS = {checkForUpdates = id; }; CLASS = SUUpdater; LANGUAGE = ObjC; Modified: trunk/Dutch.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/English.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/English.lproj/MainMenu.nib/classes.nib 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/English.lproj/MainMenu.nib/classes.nib 2007-08-31 09:55:11 UTC (rev 2791) @@ -66,14 +66,17 @@ LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + {CLASS = NSView; LANGUAGE = ObjC; SUPERCLASS = NSResponder; }, { ACTIONS = { editBookmarks = id; openBookmark = id; + saveCurrentOpenDocuments = id; showDownloads = id; showPreferencePanel = id; showReleaseNotes = id; visitWebSite = id; + visitWiki = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; @@ -85,8 +88,13 @@ SUPERCLASS = NSDocumentController; }, {CLASS = SKSplashContentView; LANGUAGE = ObjC; SUPERCLASS = NSView; }, - {CLASS = SKSplashWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, { + ACTIONS = {fadeOut = id; }; + CLASS = SKSplashWindow; + LANGUAGE = ObjC; + SUPERCLASS = NSWindow; + }, + { ACTIONS = {checkForUpdates = id; }; CLASS = SUUpdater; LANGUAGE = ObjC; Modified: trunk/English.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/French.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/French.lproj/MainMenu.nib/classes.nib 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/French.lproj/MainMenu.nib/classes.nib 2007-08-31 09:55:11 UTC (rev 2791) @@ -66,14 +66,17 @@ LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + {CLASS = NSView; LANGUAGE = ObjC; SUPERCLASS = NSResponder; }, { ACTIONS = { editBookmarks = id; openBookmark = id; + saveCurrentOpenDocuments = id; showDownloads = id; showPreferencePanel = id; showReleaseNotes = id; visitWebSite = id; + visitWiki = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; @@ -85,8 +88,13 @@ SUPERCLASS = NSDocumentController; }, {CLASS = SKSplashContentView; LANGUAGE = ObjC; SUPERCLASS = NSView; }, - {CLASS = SKSplashWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, { + ACTIONS = {fadeOut = id; }; + CLASS = SKSplashWindow; + LANGUAGE = ObjC; + SUPERCLASS = NSWindow; + }, + { ACTIONS = {checkForUpdates = id; }; CLASS = SUUpdater; LANGUAGE = ObjC; Modified: trunk/French.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/Italian.lproj/MainMenu.nib/classes.nib =================================================================== --- trunk/Italian.lproj/MainMenu.nib/classes.nib 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/Italian.lproj/MainMenu.nib/classes.nib 2007-08-31 09:55:11 UTC (rev 2791) @@ -64,14 +64,17 @@ LANGUAGE = ObjC; SUPERCLASS = NSObject; }, + {CLASS = NSView; LANGUAGE = ObjC; SUPERCLASS = NSResponder; }, { ACTIONS = { editBookmarks = id; openBookmark = id; + saveCurrentOpenDocuments = id; showDownloads = id; showPreferencePanel = id; showReleaseNotes = id; visitWebSite = id; + visitWiki = id; }; CLASS = SKApplicationController; LANGUAGE = ObjC; @@ -83,8 +86,13 @@ SUPERCLASS = NSDocumentController; }, {CLASS = SKSplashContentView; LANGUAGE = ObjC; SUPERCLASS = NSView; }, - {CLASS = SKSplashWindow; LANGUAGE = ObjC; SUPERCLASS = NSWindow; }, { + ACTIONS = {fadeOut = id; }; + CLASS = SKSplashWindow; + LANGUAGE = ObjC; + SUPERCLASS = NSWindow; + }, + { ACTIONS = {checkForUpdates = id; }; CLASS = SUUpdater; LANGUAGE = ObjC; Modified: trunk/Italian.lproj/MainMenu.nib/keyedobjects.nib =================================================================== (Binary files differ) Modified: trunk/SKApplicationController.h =================================================================== --- trunk/SKApplicationController.h 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/SKApplicationController.h 2007-08-31 09:55:11 UTC (rev 2791) @@ -48,6 +48,7 @@ + (void)setupDefaults; - (IBAction)visitWebSite:(id)sender; +- (IBAction)visitWiki:(id)sender; - (IBAction)showPreferencePanel:(id)sender; - (IBAction)showReleaseNotes:(id)sender; Modified: trunk/SKApplicationController.m =================================================================== --- trunk/SKApplicationController.m 2007-08-30 23:39:19 UTC (rev 2790) +++ trunk/SKApplicationController.m 2007-08-31 09:55:11 UTC (rev 2791) @@ -58,6 +58,8 @@ #import "Files_SKExtensions.h" #import "NSGeometry_SKExtensions.h" +#define WEBSITE_URL @"@"http://skim-app.sourceforge.net/" +#define WIKI_URL @"@"http://skim-app.sourceforge.net/wiki/" @implementation SKApplicationController @@ -204,10 +206,15 @@ #pragma mark Actions - (IBAction)visitWebSite:(id)sender{ - if([[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"http://skim-app.sourceforge.net/"]] == NO) + if([[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:WEBSITE_URL]] == NO) NSBeep(); } +- (IBAction)visitWiki:(id)sender{ + if([[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:WIKI_URL]] == NO) + NSBeep(); +} + - (IBAction)showPreferencePanel:(id)sender{ [[SKPreferenceController sharedPrefenceController] showWindow:self]; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-30 23:39:26
|
Revision: 2790 http://skim-app.svn.sourceforge.net/skim-app/?rev=2790&view=rev Author: hofman Date: 2007-08-30 16:39:19 -0700 (Thu, 30 Aug 2007) Log Message: ----------- Add tool tips for note table. Modified Paths: -------------- trunk/SKMainWindowController.m Modified: trunk/SKMainWindowController.m =================================================================== --- trunk/SKMainWindowController.m 2007-08-30 20:49:33 UTC (rev 2789) +++ trunk/SKMainWindowController.m 2007-08-30 23:39:19 UTC (rev 2790) @@ -3248,6 +3248,13 @@ } } +- (NSString *)outlineView:(NSOutlineView *)ov toolTipForCell:(NSCell *)cell rect:(NSRectPointer)rect tableColumn:(NSTableColumn *)tableColumn item:(id)item mouseLocation:(NSPoint)mouseLocation { + if ([ov isEqual:noteOutlineView] && [[tableColumn identifier] isEqualToString:@"note"]) { + return [item type] ? [(PDFAnnotation *)item contents] : [[(SKNoteText *)item contents] string]; + } + return nil; +} + - (void)outlineViewItemDidExpand:(NSNotification *)notification{ if ([[notification object] isEqual:outlineView]) { [self updateOutlineSelection]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-30 20:49:39
|
Revision: 2789 http://skim-app.svn.sourceforge.net/skim-app/?rev=2789&view=rev Author: hofman Date: 2007-08-30 13:49:33 -0700 (Thu, 30 Aug 2007) Log Message: ----------- Update dutch localization. Modified Paths: -------------- trunk/Dutch.lproj/Localizable.strings Modified: trunk/Dutch.lproj/Localizable.strings =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-30 19:28:51
|
Revision: 2788 http://skim-app.svn.sourceforge.net/skim-app/?rev=2788&view=rev Author: hofman Date: 2007-08-30 12:28:42 -0700 (Thu, 30 Aug 2007) Log Message: ----------- Really only set the creator code for native types only. I'm actually not sure if we should do it for PDF documents, as it overrides the default app to open PDFs. Modified Paths: -------------- trunk/SKDocument.m Modified: trunk/SKDocument.m =================================================================== --- trunk/SKDocument.m 2007-08-30 18:11:48 UTC (rev 2787) +++ trunk/SKDocument.m 2007-08-30 19:28:42 UTC (rev 2788) @@ -412,7 +412,7 @@ NSMutableDictionary *dict = [[[super fileAttributesToWriteToURL:absoluteURL ofType:typeName forSaveOperation:saveOperation originalContentsURL:absoluteOriginalContentsURL error:outError] mutableCopy] autorelease]; // only set the creator code for our native types - if ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKPDFBundleDocumentType] || [typeName isEqualToString:SKEmbeddedPDFDocumentType] || [typeName isEqualToString:SKBarePDFDocumentType] || [typeName isEqualToString:SKNotesDocumentType]) + if ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKPDFBundleDocumentType] || [typeName isEqualToString:SKNotesDocumentType]) [dict setObject:[NSNumber numberWithUnsignedLong:'SKIM'] forKey:NSFileHFSCreatorCode]; if ([[[absoluteURL path] pathExtension] isEqualToString:@"pdf"] || ([typeName isEqualToString:SKPDFDocumentType] || [typeName isEqualToString:SKEmbeddedPDFDocumentType] || [typeName isEqualToString:SKBarePDFDocumentType])) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-30 18:11:50
|
Revision: 2787 http://skim-app.svn.sourceforge.net/skim-app/?rev=2787&view=rev Author: hofman Date: 2007-08-30 11:11:48 -0700 (Thu, 30 Aug 2007) Log Message: ----------- Show tooltip preview in tables offset from item destination. Use correct outlineView to select an item for a contextual menu. Modified Paths: -------------- trunk/SKFindTableView.m trunk/SKMainWindowController.m Modified: trunk/SKFindTableView.m =================================================================== --- trunk/SKFindTableView.m 2007-08-30 17:19:50 UTC (rev 2786) +++ trunk/SKFindTableView.m 2007-08-30 18:11:48 UTC (rev 2787) @@ -77,7 +77,7 @@ for (row = rowRange.location; row < NSMaxRange(rowRange); row++) { if ([[self delegate] tableView:self shouldTrackTableColumn:tableColumn row:row]) { userData = row * [self numberOfColumns] + column; - tag = [self addTrackingRect:[self frameOfCellAtColumn:column row:row] owner:self userData:NULL assumeInside:NO]; + tag = [self addTrackingRect:[self frameOfCellAtColumn:column row:row] owner:self userData:(void *)userData assumeInside:NO]; CFArrayAppendValue(trackingRects, (const void *)tag); } } @@ -120,10 +120,8 @@ int numCols = [self numberOfColumns]; int column = userData % numCols; int row = userData / numCols; - if (column != -1 && row != -1) { - NSTableColumn *tableColumn = [[self tableColumns] objectAtIndex:column]; - [[self delegate] tableView:self mouseEnteredTableColumn:tableColumn row:row]; - } + NSTableColumn *tableColumn = [[self tableColumns] objectAtIndex:column]; + [[self delegate] tableView:self mouseEnteredTableColumn:tableColumn row:row]; } } @@ -133,10 +131,8 @@ int numCols = [self numberOfColumns]; int column = userData % numCols; int row = userData / numCols; - if (column != -1 && row != -1) { - NSTableColumn *tableColumn = [[self tableColumns] objectAtIndex:column]; - [[self delegate] tableView:self mouseExitedTableColumn:tableColumn row:row]; - } + NSTableColumn *tableColumn = [[self tableColumns] objectAtIndex:column]; + [[self delegate] tableView:self mouseExitedTableColumn:tableColumn row:row]; } } Modified: trunk/SKMainWindowController.m =================================================================== --- trunk/SKMainWindowController.m 2007-08-30 17:19:50 UTC (rev 2786) +++ trunk/SKMainWindowController.m 2007-08-30 18:11:48 UTC (rev 2787) @@ -3379,18 +3379,26 @@ return nil; } -- (BOOL)outlineView:(NSOutlineView *)anOutlineView shouldTrackTableColumn:(NSTableColumn *)aTableColumn item:(id)item { +- (BOOL)outlineView:(NSOutlineView *)ov shouldTrackTableColumn:(NSTableColumn *)aTableColumn item:(id)item { return YES; } -- (void)outlineView:(NSOutlineView *)anOutlineView mouseEnteredTableColumn:(NSTableColumn *)aTableColumn item:(id)item { - PDFAnnotationLink *link = [[[PDFAnnotationLink alloc] initWithBounds:NSZeroRect] autorelease]; - [link setDestination:[item destination]]; - [[SKPDFHoverWindow sharedHoverWindow] showForAnnotation:link atPoint:NSZeroPoint]; +- (void)outlineView:(NSOutlineView *)ov mouseEnteredTableColumn:(NSTableColumn *)aTableColumn item:(id)item { + if ([ov isEqual:outlineView]) { + PDFAnnotationLink *link = [[[PDFAnnotationLink alloc] initWithBounds:NSZeroRect] autorelease]; + PDFDestination *dest = [item destination]; + NSPoint point = [dest point]; + point.x -= 50.0; + point.y += 20.0; + [link setDestination:[[[PDFDestination alloc] initWithPage:[dest page] atPoint:point] autorelease]]; + [[SKPDFHoverWindow sharedHoverWindow] showForAnnotation:link atPoint:NSZeroPoint]; + } } -- (void)outlineView:(NSOutlineView *)anOutlineView mouseExitedTableColumn:(NSTableColumn *)aTableColumn item:(id)item { - [[SKPDFHoverWindow sharedHoverWindow] hide]; +- (void)outlineView:(NSOutlineView *)ov mouseExitedTableColumn:(NSTableColumn *)aTableColumn item:(id)item { + if ([ov isEqual:outlineView]) { + [[SKPDFHoverWindow sharedHoverWindow] hide]; + } } - (void)deleteNote:(id)sender { @@ -3417,7 +3425,7 @@ NSMenuItem *menuItem; if ([ov isEqual:noteOutlineView]) { - [outlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:[outlineView rowForItem:item]] byExtendingSelection:NO]; + [noteOutlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:[noteOutlineView rowForItem:item]] byExtendingSelection:NO]; PDFAnnotation *annotation = [item type] ? item : [(SKNoteText *)item annotation]; menu = [[[NSMenu allocWithZone:[NSMenu menuZone]] init] autorelease]; @@ -3571,10 +3579,11 @@ - (void)tableView:(NSTableView *)tv mouseEnteredTableColumn:(NSTableColumn *)aTableColumn row:(int)row { if ([tv isEqual:findTableView]) { PDFAnnotationLink *link = [[[PDFAnnotationLink alloc] initWithBounds:NSZeroRect] autorelease]; - PDFSelection *selection = [[[findArrayController arrangedObjects] objectAtIndex:row] copy]; - [selection extendSelectionAtStart:10]; - [link setDestination:[selection destination]]; - [selection release]; + PDFDestination *dest = [[[findArrayController arrangedObjects] objectAtIndex:row] destination]; + NSPoint point = [dest point]; + point.x -= 50.0; + point.y += 20.0; + [link setDestination:[[[PDFDestination alloc] initWithPage:[dest page] atPoint:point] autorelease]]; [[SKPDFHoverWindow sharedHoverWindow] showForAnnotation:link atPoint:NSZeroPoint]; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ho...@us...> - 2007-08-30 17:19:51
|
Revision: 2786 http://skim-app.svn.sourceforge.net/skim-app/?rev=2786&view=rev Author: hofman Date: 2007-08-30 10:19:50 -0700 (Thu, 30 Aug 2007) Log Message: ----------- add licence info. Modified Paths: -------------- trunk/SKFindTableView.h trunk/SKFindTableView.m Modified: trunk/SKFindTableView.h =================================================================== --- trunk/SKFindTableView.h 2007-08-30 16:59:11 UTC (rev 2785) +++ trunk/SKFindTableView.h 2007-08-30 17:19:50 UTC (rev 2786) @@ -2,10 +2,40 @@ // SKFindTableView.h // Skim // -// Created by Christiaan Hofman on 28/7/07. -// Copyright 2007 __MyCompanyName__. All rights reserved. -// +// Created by Christiaan Hofman on 7/28/07. +/* + This software is Copyright (c) 2007 + Christiaan Hofman. All rights reserved. + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Christiaan Hofman nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + #import <Cocoa/Cocoa.h> #import <Carbon/Carbon.h> #import "SKTableView.h" Modified: trunk/SKFindTableView.m =================================================================== --- trunk/SKFindTableView.m 2007-08-30 16:59:11 UTC (rev 2785) +++ trunk/SKFindTableView.m 2007-08-30 17:19:50 UTC (rev 2786) @@ -2,10 +2,40 @@ // SKFindTableView.m // Skim // -// Created by Christiaan Hofman on 28/7/07. -// Copyright 2007 __MyCompanyName__. All rights reserved. -// +// Created by Christiaan Hofman on 7/28/07. +/* + This software is Copyright (c) 2007 + Christiaan Hofman. All rights reserved. + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Christiaan Hofman nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + #import "SKFindTableView.h" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |