Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
The EntryBuffer
class contains the actual text displayed in a
Entry
widget.
A single EntryBuffer
object can be shared by multiple Entry
widgets which will then share the same text content, but not the cursor
position, visibility attributes, icon etc.
EntryBuffer
may be derived from. Such a derived class might allow
text to be stored in an alternate location, such as non-pageable memory,
useful in the case of important passwords. Or a derived class could
integrate with an application’s concept of undo/redo.
Synopsis
- newtype EntryBuffer = EntryBuffer (ManagedPtr EntryBuffer)
- class GObject o => IsEntryBuffer o
- toEntryBuffer :: (MonadIO m, IsEntryBuffer o) => o -> m EntryBuffer
- noEntryBuffer :: Maybe EntryBuffer
- entryBufferDeleteText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Word32 -> Int32 -> m Word32
- entryBufferEmitDeletedText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Word32 -> Word32 -> m ()
- entryBufferEmitInsertedText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Word32 -> Text -> Word32 -> m ()
- entryBufferGetBytes :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> m Word64
- entryBufferGetLength :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> m Word32
- entryBufferGetMaxLength :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> m Int32
- entryBufferGetText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> m Text
- entryBufferInsertText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Word32 -> Text -> Int32 -> m Word32
- entryBufferNew :: (HasCallStack, MonadIO m) => Maybe Text -> Int32 -> m EntryBuffer
- entryBufferSetMaxLength :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Int32 -> m ()
- entryBufferSetText :: (HasCallStack, MonadIO m, IsEntryBuffer a) => a -> Text -> Int32 -> m ()
- getEntryBufferLength :: (MonadIO m, IsEntryBuffer o) => o -> m Word32
- constructEntryBufferMaxLength :: IsEntryBuffer o => Int32 -> IO (GValueConstruct o)
- getEntryBufferMaxLength :: (MonadIO m, IsEntryBuffer o) => o -> m Int32
- setEntryBufferMaxLength :: (MonadIO m, IsEntryBuffer o) => o -> Int32 -> m ()
- clearEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> m ()
- constructEntryBufferText :: IsEntryBuffer o => Text -> IO (GValueConstruct o)
- getEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> m Text
- setEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> Text -> m ()
- type C_EntryBufferDeletedTextCallback = Ptr () -> Word32 -> Word32 -> Ptr () -> IO ()
- type EntryBufferDeletedTextCallback = Word32 -> Word32 -> IO ()
- afterEntryBufferDeletedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferDeletedTextCallback -> m SignalHandlerId
- genClosure_EntryBufferDeletedText :: EntryBufferDeletedTextCallback -> IO Closure
- mk_EntryBufferDeletedTextCallback :: C_EntryBufferDeletedTextCallback -> IO (FunPtr C_EntryBufferDeletedTextCallback)
- noEntryBufferDeletedTextCallback :: Maybe EntryBufferDeletedTextCallback
- onEntryBufferDeletedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferDeletedTextCallback -> m SignalHandlerId
- wrap_EntryBufferDeletedTextCallback :: EntryBufferDeletedTextCallback -> C_EntryBufferDeletedTextCallback
- type C_EntryBufferInsertedTextCallback = Ptr () -> Word32 -> CString -> Word32 -> Ptr () -> IO ()
- type EntryBufferInsertedTextCallback = Word32 -> Text -> Word32 -> IO ()
- afterEntryBufferInsertedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferInsertedTextCallback -> m SignalHandlerId
- genClosure_EntryBufferInsertedText :: EntryBufferInsertedTextCallback -> IO Closure
- mk_EntryBufferInsertedTextCallback :: C_EntryBufferInsertedTextCallback -> IO (FunPtr C_EntryBufferInsertedTextCallback)
- noEntryBufferInsertedTextCallback :: Maybe EntryBufferInsertedTextCallback
- onEntryBufferInsertedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferInsertedTextCallback -> m SignalHandlerId
- wrap_EntryBufferInsertedTextCallback :: EntryBufferInsertedTextCallback -> C_EntryBufferInsertedTextCallback
Exported types
newtype EntryBuffer Source #
Memory-managed wrapper type.
Instances
GObject EntryBuffer Source # | |
Defined in GI.Gtk.Objects.EntryBuffer gobjectType :: EntryBuffer -> IO GType # | |
IsObject EntryBuffer Source # | |
Defined in GI.Gtk.Objects.EntryBuffer | |
IsEntryBuffer EntryBuffer Source # | |
Defined in GI.Gtk.Objects.EntryBuffer |
class GObject o => IsEntryBuffer o Source #
Type class for types which can be safely cast to EntryBuffer
, for instance with toEntryBuffer
.
Instances
(GObject a, (UnknownAncestorError EntryBuffer a :: Constraint)) => IsEntryBuffer a Source # | |
Defined in GI.Gtk.Objects.EntryBuffer | |
IsEntryBuffer EntryBuffer Source # | |
Defined in GI.Gtk.Objects.EntryBuffer |
toEntryBuffer :: (MonadIO m, IsEntryBuffer o) => o -> m EntryBuffer Source #
Cast to EntryBuffer
, for types for which this is known to be safe. For general casts, use castTo
.
noEntryBuffer :: Maybe EntryBuffer Source #
A convenience alias for Nothing
:: Maybe
EntryBuffer
.
Methods
deleteText
entryBufferDeleteText Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Word32 |
|
-> Int32 |
|
-> m Word32 | Returns: The number of characters deleted. |
Deletes a sequence of characters from the buffer. nChars
characters are
deleted starting at position
. If nChars
is negative, then all characters
until the end of the text are deleted.
If position
or nChars
are out of bounds, then they are coerced to sane
values.
Note that the positions are specified in characters, not bytes.
Since: 2.18
emitDeletedText
entryBufferEmitDeletedText Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Word32 |
|
-> Word32 |
|
-> m () |
Used when subclassing EntryBuffer
Since: 2.18
emitInsertedText
entryBufferEmitInsertedText Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Word32 |
|
-> Text |
|
-> Word32 |
|
-> m () |
Used when subclassing EntryBuffer
Since: 2.18
getBytes
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> m Word64 | Returns: The byte length of the buffer. |
Retrieves the length in bytes of the buffer.
See entryBufferGetLength
.
Since: 2.18
getLength
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> m Word32 | Returns: The number of characters in the buffer. |
Retrieves the length in characters of the buffer.
Since: 2.18
getMaxLength
entryBufferGetMaxLength Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> m Int32 | Returns: the maximum allowed number of characters
in |
Retrieves the maximum allowed length of the text in
buffer
. See entryBufferSetMaxLength
.
Since: 2.18
getText
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> m Text | Returns: a pointer to the contents of the widget as a string. This string points to internally allocated storage in the buffer and must not be freed, modified or stored. |
Retrieves the contents of the buffer.
The memory pointer returned by this call will not change unless this object emits a signal, or is finalized.
Since: 2.18
insertText
entryBufferInsertText Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Word32 |
|
-> Text |
|
-> Int32 |
|
-> m Word32 | Returns: The number of characters actually inserted. |
Inserts nChars
characters of chars
into the contents of the
buffer, at position position
.
If nChars
is negative, then characters from chars will be inserted
until a null-terminator is found. If position
or nChars
are out of
bounds, or the maximum buffer text length is exceeded, then they are
coerced to sane values.
Note that the position and length are in characters, not in bytes.
Since: 2.18
new
:: (HasCallStack, MonadIO m) | |
=> Maybe Text |
|
-> Int32 |
|
-> m EntryBuffer | Returns: A new GtkEntryBuffer object. |
Create a new GtkEntryBuffer object.
Optionally, specify initial text to set in the buffer.
Since: 2.18
setMaxLength
entryBufferSetMaxLength Source #
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Int32 |
|
-> m () |
Sets the maximum allowed length of the contents of the buffer. If the current contents are longer than the given length, then they will be truncated to fit.
Since: 2.18
setText
:: (HasCallStack, MonadIO m, IsEntryBuffer a) | |
=> a |
|
-> Text |
|
-> Int32 |
|
-> m () |
Sets the text in the buffer.
This is roughly equivalent to calling entryBufferDeleteText
and entryBufferInsertText
.
Note that nChars
is in characters, not in bytes.
Since: 2.18
Properties
length
The length (in characters) of the text in buffer.
Since: 2.18
getEntryBufferLength :: (MonadIO m, IsEntryBuffer o) => o -> m Word32 Source #
Get the value of the “length
” property.
When overloading is enabled, this is equivalent to
get
entryBuffer #length
maxLength
The maximum length (in characters) of the text in the buffer.
Since: 2.18
constructEntryBufferMaxLength :: IsEntryBuffer o => Int32 -> IO (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “max-length
” property. This is rarely needed directly, but it is used by new
.
getEntryBufferMaxLength :: (MonadIO m, IsEntryBuffer o) => o -> m Int32 Source #
Get the value of the “max-length
” property.
When overloading is enabled, this is equivalent to
get
entryBuffer #maxLength
setEntryBufferMaxLength :: (MonadIO m, IsEntryBuffer o) => o -> Int32 -> m () Source #
Set the value of the “max-length
” property.
When overloading is enabled, this is equivalent to
set
entryBuffer [ #maxLength:=
value ]
text
The contents of the buffer.
Since: 2.18
clearEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> m () Source #
Set the value of the “text
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#text
constructEntryBufferText :: IsEntryBuffer o => Text -> IO (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “text
” property. This is rarely needed directly, but it is used by new
.
getEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> m Text Source #
Get the value of the “text
” property.
When overloading is enabled, this is equivalent to
get
entryBuffer #text
setEntryBufferText :: (MonadIO m, IsEntryBuffer o) => o -> Text -> m () Source #
Set the value of the “text
” property.
When overloading is enabled, this is equivalent to
set
entryBuffer [ #text:=
value ]
Signals
deletedText
type C_EntryBufferDeletedTextCallback = Ptr () -> Word32 -> Word32 -> Ptr () -> IO () Source #
Type for the callback on the (unwrapped) C side.
type EntryBufferDeletedTextCallback Source #
= Word32 |
|
-> Word32 |
|
-> IO () |
This signal is emitted after text is deleted from the buffer.
Since: 2.18
afterEntryBufferDeletedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferDeletedTextCallback -> m SignalHandlerId Source #
Connect a signal handler for the “deleted-text
” signal, to be run after the default handler.
When overloading is enabled, this is equivalent to
after
entryBuffer #deletedText callback
genClosure_EntryBufferDeletedText :: EntryBufferDeletedTextCallback -> IO Closure Source #
Wrap the callback into a Closure
.
mk_EntryBufferDeletedTextCallback :: C_EntryBufferDeletedTextCallback -> IO (FunPtr C_EntryBufferDeletedTextCallback) Source #
Generate a function pointer callable from C code, from a C_EntryBufferDeletedTextCallback
.
noEntryBufferDeletedTextCallback :: Maybe EntryBufferDeletedTextCallback Source #
A convenience synonym for
.Nothing
:: Maybe
EntryBufferDeletedTextCallback
onEntryBufferDeletedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferDeletedTextCallback -> m SignalHandlerId Source #
Connect a signal handler for the “deleted-text
” signal, to be run before the default handler.
When overloading is enabled, this is equivalent to
on
entryBuffer #deletedText callback
wrap_EntryBufferDeletedTextCallback :: EntryBufferDeletedTextCallback -> C_EntryBufferDeletedTextCallback Source #
Wrap a EntryBufferDeletedTextCallback
into a C_EntryBufferDeletedTextCallback
.
insertedText
type C_EntryBufferInsertedTextCallback = Ptr () -> Word32 -> CString -> Word32 -> Ptr () -> IO () Source #
Type for the callback on the (unwrapped) C side.
type EntryBufferInsertedTextCallback Source #
= Word32 |
|
-> Text |
|
-> Word32 |
|
-> IO () |
This signal is emitted after text is inserted into the buffer.
Since: 2.18
afterEntryBufferInsertedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferInsertedTextCallback -> m SignalHandlerId Source #
Connect a signal handler for the “inserted-text
” signal, to be run after the default handler.
When overloading is enabled, this is equivalent to
after
entryBuffer #insertedText callback
genClosure_EntryBufferInsertedText :: EntryBufferInsertedTextCallback -> IO Closure Source #
Wrap the callback into a Closure
.
mk_EntryBufferInsertedTextCallback :: C_EntryBufferInsertedTextCallback -> IO (FunPtr C_EntryBufferInsertedTextCallback) Source #
Generate a function pointer callable from C code, from a C_EntryBufferInsertedTextCallback
.
noEntryBufferInsertedTextCallback :: Maybe EntryBufferInsertedTextCallback Source #
A convenience synonym for
.Nothing
:: Maybe
EntryBufferInsertedTextCallback
onEntryBufferInsertedText :: (IsEntryBuffer a, MonadIO m) => a -> EntryBufferInsertedTextCallback -> m SignalHandlerId Source #
Connect a signal handler for the “inserted-text
” signal, to be run before the default handler.
When overloading is enabled, this is equivalent to
on
entryBuffer #insertedText callback