hoodle (empty) → 0.1
raw patch · 9 files changed
+274/−0 lines, 9 filesdep +basedep +cmdargsdep +configuratorbuild-type:Customsetup-changed
Dependencies added: base, cmdargs, configurator, containers, directory, dyre, filepath, hoodle, hoodle-core, mtl
Files
- CHANGES +33/−0
- LICENSE +25/−0
- Setup.lhs +9/−0
- exe/hoodle.hs +20/−0
- hoodle.cabal +47/−0
- lib/Hoodle/Command.hs +23/−0
- lib/Hoodle/Job.hs +34/−0
- lib/Hoodle/ProgType.hs +30/−0
- lib/Hoodle/StartUp.hs +53/−0
+ CHANGES view
@@ -0,0 +1,33 @@+0.5: 12 Dec 2011+ * First public release. basic pen operation, eraser operation, rectangular selection and file operations are implemented++0.5.1: 16 Dec 2011 + * Use of configuration file '.hxournal'. Enable Use X Input menu. Dependency on xournal-parser and xournal-render is restricted to 0.2.0.* only+ * checking gtk+-2.0 using pkg-config++0.6: 18 Dec 2011 + * pdf background support. Annotate PDF menu is activated. preloading pdf background images++0.6.0: 19 Dec 2011 + * some bug fixes (temporary yet) related to automatic scrollbar disappearing. Check when new, open, annotate pdf if xournal file is not saved yet. + +0.6.1: 25 Dec 2011+ * undo/redo support, double buffer rendering while scrolling++0.6.2: 15 Jan 2012+ * layer support++0.6.3: 24 Jan 2012 + * refine rendering while selection and scrolling. highlighter is implemented. Resizing selected strokes implemented++0.6.4: 6 Feb 2012+ * lasso selection, continuous page view. ++0.6.5: 12 Feb 2012+ * pen button support, pen pressure support, using faster xoj parser ++0.6.6: 28 Feb 2012 + * scripting support, zoom in/out implemented. page functions are implemented++0.6.7: ?+
+ LICENSE view
@@ -0,0 +1,25 @@+The following license covers this documentation, and the source code, except+where otherwise indicated.++Copyright 2011, 2012, Ian-Woo Kim. 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.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS "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 HOLDERS 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.
+ Setup.lhs view
@@ -0,0 +1,9 @@+#! /usr/bin/env runhaskell+>+> import Distribution.Simple+> import Distribution.PackageDescription+> +> main :: IO ()+> main = defaultMain+> -- main = defaultMainWithHooks myConfigHook+>
+ exe/hoodle.hs view
@@ -0,0 +1,20 @@+-----------------------------------------------------------------------------+-- |+-- Module : Main+-- Copyright : (c) 2011, 2012 Ian-Woo Kim+--+-- License : BSD3+-- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>+-- Stability : experimental+-- Portability : GHC+--+-----------------------------------------------------------------------------++module Main where++import Hoodle.Script +import Hoodle.StartUp++main :: IO () +main = hoodleStartMain defaultScriptConfig +
+ hoodle.cabal view
@@ -0,0 +1,47 @@+Name: hoodle+Version: 0.1+Synopsis: Executable for hoodle+Description: Hoodle is a pen notetaking program written in haskell. +Homepage: http://ianwookim.org/hoodle+License: BSD3+License-file: LICENSE+Author: Ian-Woo Kim+Maintainer: Ian-Woo Kim <ianwookim@gmail.com>+Category: Application+Tested-with: GHC == 7.0+Build-Type: Custom+Cabal-Version: >= 1.8+data-files: CHANGES+Source-repository head+ type: git+ location: http://www.github.com/wavewave/hoodle++Executable hoodle+ Main-is: hoodle.hs+ hs-source-dirs: exe+ ghc-options: -Wall -threaded -funbox-strict-fields -fno-warn-unused-do-bind+ ghc-prof-options: -caf-all -auto-all+ Build-Depends: + base>4, + cmdargs >= 0.7 && < 0.11, + hoodle-core >= 0.6.999 && < 0.8, + hoodle ++Library+ hs-source-dirs: lib+ ghc-options: -Wall -funbox-strict-fields -fno-warn-unused-do-bind+ ghc-prof-options: -caf-all -auto-all+ Build-Depends: base == 4.*, + mtl == 2.*,+ directory == 1.*,+ filepath == 1.*, + containers == 0.4.*,+ cmdargs >= 0.7 && < 0.11,+ configurator == 0.2.*,+ dyre == 0.8.*, + hoodle-core >= 0.6.999 && < 0.8+ Exposed-Modules: + Hoodle.ProgType+ Hoodle.Job+ Hoodle.Command + Hoodle.StartUp
+ lib/Hoodle/Command.hs view
@@ -0,0 +1,23 @@+-----------------------------------------------------------------------------+-- |+-- Module : Hoodle.Command +-- Copyright : (c) 2011, 2012 Ian-Woo Kim+--+-- License : BSD3+-- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>+-- Stability : experimental+-- Portability : GHC+--+-----------------------------------------------------------------------------++module Hoodle.Command where+++import Hoodle.ProgType+import Hoodle.Job+import Hoodle.Script.Hook++commandLineProcess :: Hoodle -> Maybe Hook -> IO ()+commandLineProcess (Test mfname) mhook = do + startJob mfname mhook+
+ lib/Hoodle/Job.hs view
@@ -0,0 +1,34 @@+{-# LANGUAGE ScopedTypeVariables #-}++-----------------------------------------------------------------------------+-- |+-- Module : Hoodle.Job +-- Copyright : (c) 2011, 2012 Ian-Woo Kim+--+-- License : BSD3+-- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>+-- Stability : experimental+-- Portability : GHC+--++module Hoodle.Job where++import Hoodle.Script.Hook++import Hoodle.GUI+-- import Hoodle.Builder++++startJob :: Maybe FilePath -> Maybe Hook -> IO () +startJob mfname mhook = do + putStrLn "job started"+ startGUI mfname mhook ++{-+startTestBuilder :: FilePath -> IO () +startTestBuilder fname = do + putStrLn fname+ xojcontent <- read_xojgz fname + L.writeFile "mytest.xoj" $ builder xojcontent+-}
+ lib/Hoodle/ProgType.hs view
@@ -0,0 +1,30 @@+{-# LANGUAGE DeriveDataTypeable #-}++-----------------------------------------------------------------------------+-- |+-- Module : Hoodle.ProgType +-- Copyright : (c) 2011, 2012 Ian-Woo Kim+--+-- License : BSD3+-- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>+-- Stability : experimental+-- Portability : GHC+--++module Hoodle.ProgType where ++import System.Console.CmdArgs++data Hoodle = Test { xojfile :: Maybe FilePath+ } + deriving (Show,Data,Typeable)++test :: Hoodle+test = Test { xojfile = def &= typ "FILENAME" &= args -- &= argPos 0 &= opt "OPTIONAL" + } &= auto +++mode :: Hoodle+mode = modes [test] ++
+ lib/Hoodle/StartUp.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE RecordWildCards #-}++-----------------------------------------------------------------------------+-- |+-- Module : Hoodle.StartUp+-- Copyright : (c) 2012 Ian-Woo Kim+--+-- License : BSD3+-- Maintainer : Ian-Woo Kim <ianwookim@gmail.com>+-- Stability : experimental+-- Portability : GHC+--+-----------------------------------------------------------------------------++module Hoodle.StartUp where ++-- from other packages +import qualified Config.Dyre as Dyre +import System.Console.CmdArgs+import System.FilePath+import System.Environment+-- from hoodle-platform +import Hoodle.Script+-- from this package+import Hoodle.ProgType+import Hoodle.Command++-- | +hoodleMain :: ScriptConfig -> IO ()+hoodleMain ScriptConfig {..} = do + case errorMsg of + Nothing -> return () + Just em -> putStrLn $ "Error: " ++ em + maybe (return ()) putStrLn message + param <- cmdArgs mode+ commandLineProcess param hook++-- | +hoodleStartMain :: ScriptConfig -> IO ()+hoodleStartMain = Dyre.wrapMain $ Dyre.defaultParams + { Dyre.projectName = "start"+ , Dyre.configDir = Just dirHoodled+ , Dyre.realMain = hoodleMain + , Dyre.showError = showError + } ++-- | +dirHoodled :: IO FilePath +dirHoodled = do+ homedir <- getEnv "HOME"+ return (homedir </> ".hoodle.d")++