Separate selection list items from display parameters
This commit is contained in:
@@ -7,18 +7,20 @@ import Control.Lens
|
||||
import Data.Set (Set)
|
||||
import Dodge.Data.CardinalPoint
|
||||
|
||||
data ListDisplayParams = ListDisplayParams
|
||||
{ _ldpPosX :: Float
|
||||
, _ldpPosY :: Float
|
||||
, _ldpScale :: Float
|
||||
, _ldpVerticalGap :: Float
|
||||
, _ldpCursorType :: CursorType
|
||||
, _ldpWidth :: SelectionWidth
|
||||
, _ldpSizeRestriction :: SelectionSizeRestriction
|
||||
}
|
||||
|
||||
data SelectionList = SelectionList
|
||||
{ _slPosX :: Float
|
||||
, _slPosY :: Float
|
||||
, _slScale :: Float
|
||||
, _slVerticalGap :: Float
|
||||
, _slItems :: [SelectionItem]
|
||||
, _slShownItems :: [(SelectionItem,SelectionItemIndex)]
|
||||
{ _slItems :: [SelectionItem]
|
||||
, _slSelPos :: Maybe Int
|
||||
, _slCursorType :: CursorType
|
||||
, _slWidth :: SelectionWidth
|
||||
, _slLength :: Int
|
||||
, _slSizeRestriction :: SelectionSizeRestriction
|
||||
}
|
||||
|
||||
data SelectionItemIndex = ListedSelectionItem Int
|
||||
@@ -51,6 +53,7 @@ data SelectionItem = SelectionItem
|
||||
, _siOffX :: Int
|
||||
}
|
||||
|
||||
makeLenses ''ListDisplayParams
|
||||
makeLenses ''SelectionList
|
||||
makeLenses ''SelectionItem
|
||||
makeLenses ''SpecialSelectionItem
|
||||
|
||||
@@ -57,6 +57,8 @@ data ScreenLayer
|
||||
, _scOptionFlag :: OptionScreenFlag
|
||||
, _scSelectionList :: SelectionList
|
||||
, _scAvailableLines :: Int
|
||||
, _scShownItems :: [(SelectionItem,SelectionItemIndex)]
|
||||
, _scListDisplayParams :: ListDisplayParams
|
||||
}
|
||||
| ColumnsScreen
|
||||
{ _scTitle :: String
|
||||
|
||||
Reference in New Issue
Block a user