From 30ccfbf276b80e89d3317c4b77f390f2aaa73963 Mon Sep 17 00:00:00 2001 From: David Botton Date: Thu, 24 Feb 2022 22:04:35 -0500 Subject: [PATCH] last-fetch --- doc/clog-manual.html | 375 ++++++++++++++++++++++++++++++++++++++----- source/clog-dbi.lisp | 7 +- source/clog.lisp | 1 + 3 files changed, 346 insertions(+), 37 deletions(-) diff --git a/doc/clog-manual.html b/doc/clog-manual.html index c6921bc..92e594e 100644 --- a/doc/clog-manual.html +++ b/doc/clog-manual.html @@ -45,21 +45,22 @@
  • 8 Common CLOG Elements
  • 9 CLOG Presentations
  • 10 CLOG Data
  • -
  • 11 CLOG Panels
  • -
  • 12 CLOG Style Blocks
  • -
  • 13 CLOG Form Objects
  • -
  • 14 CLOG Canvas Objects
  • -
  • 15 CLOG Multimedia Objects
  • -
  • 16 CLOG GUI Objects
  • -
  • 17 CLOG Web Objects
  • -
  • 18 CLOG Body Objects
  • -
  • 19 CLOG Window Objects
  • -
  • 20 CLOG Document Objects
  • -
  • 21 CLOG Location Objects
  • -
  • 22 CLOG Navigator Objects
  • -
  • 23 CLOG jQuery Objects
  • -
  • 24 CLOG Helper Functions
  • -
  • 25 CLOG Framework internals and extensions
  • +
  • 11 CLOG DBI
  • +
  • 12 CLOG Panels
  • +
  • 13 CLOG Style Blocks
  • +
  • 14 CLOG Form Objects
  • +
  • 15 CLOG Canvas Objects
  • +
  • 16 CLOG Multimedia Objects
  • +
  • 17 CLOG GUI Objects
  • +
  • 18 CLOG Web Objects
  • +
  • 19 CLOG Body Objects
  • +
  • 20 CLOG Window Objects
  • +
  • 21 CLOG Document Objects
  • +
  • 22 CLOG Location Objects
  • +
  • 23 CLOG Navigator Objects
  • +
  • 24 CLOG jQuery Objects
  • +
  • 25 CLOG Helper Functions
  • +
  • 26 CLOG Framework internals and extensions
  • [in package CLOG]
    @@ -3868,32 +3869,334 @@ element can be bound at a time to a lisp object.

    -

    +

    10 CLOG Data

    -

    CLOG-Data - CLOG Data Binding

    +

    Load and Write to objects and CLOG-Elements

    + +

    +

    + + + +

    +

    + + + +

    SQL Writing Helpers

    + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + +

    + +

    11 CLOG DBI

    + +

    CLOG-Database - CLOG Database Connection

    + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + + + +

    +

    + +

    -

    +

    -

    11 CLOG Panels

    +

    12 CLOG Panels

    CLOG-Panel - CLOG Panels

    @@ -4044,7 +4347,7 @@ if :HTML-ID "myid" then the HTML-ID for cent

    -

    12 CLOG Style Blocks

    +

    13 CLOG Style Blocks

    CLOG-Style-Block - CLOG Style Blocks

    @@ -4087,7 +4390,7 @@ selector. For example:

    -

    13 CLOG Form Objects

    +

    14 CLOG Form Objects

    CLOG-Form-Data

    @@ -4812,7 +5115,7 @@ optionally fill in with contents of data-list.

    -

    14 CLOG Canvas Objects

    +

    15 CLOG Canvas Objects

    CLOG-Canvas - Class for CLOG canvas objects

    @@ -5204,7 +5507,7 @@ https://developer.mozilla.org/en-US/docs/Web/CSS/font

    -

    15 CLOG Multimedia Objects

    +

    16 CLOG Multimedia Objects

    CLOG-Multimedia - Base Class for CLOG multimedia objects

    @@ -5650,7 +5953,7 @@ is nil unbind the event.

    -

    16 CLOG GUI Objects

    +

    17 CLOG GUI Objects

    [in package CLOG-GUI]
    @@ -6153,7 +6456,7 @@ machine, upon close ON-FILE-NAME called with filename or nil if fai

    -

    17 CLOG Web Objects

    +

    18 CLOG Web Objects

    [in package CLOG-WEB]
    @@ -6741,7 +7044,7 @@ if confirmed or nil if canceled. CANCEL-TEXT is only displayed if m

    -

    18 CLOG Body Objects

    +

    19 CLOG Body Objects

    CLOG-Body - CLOG Body Objects

    @@ -6818,7 +7121,7 @@ with HTML.

    -

    19 CLOG Window Objects

    +

    20 CLOG Window Objects

    CLOG-Window - CLOG Window Objects

    @@ -7223,7 +7526,7 @@ on-storage event is fired for changes to :local storage keys.

    -

    20 CLOG Document Objects

    +

    21 CLOG Document Objects

    CLOG-Document - CLOG Document Objects

    @@ -7395,7 +7698,7 @@ If ON-FULL-SCREEN-CHANGE-HANDLER is nil unbind the event.

    -

    21 CLOG Location Objects

    +

    22 CLOG Location Objects

    Clog-Location - CLOG Location Objects

    @@ -7525,7 +7828,7 @@ If ON-FULL-SCREEN-CHANGE-HANDLER is nil unbind the event.

    -

    22 CLOG Navigator Objects

    +

    23 CLOG Navigator Objects

    CLOG-Navigator - CLOG Navigator Objects

    @@ -7581,7 +7884,7 @@ If ON-FULL-SCREEN-CHANGE-HANDLER is nil unbind the event.

    -

    23 CLOG jQuery Objects

    +

    24 CLOG jQuery Objects

    CLOG-jQuery - Base class for CLOG jQuery Objects

    @@ -7648,7 +7951,7 @@ result or DEFAULT-ANSWER on time out.

    -

    24 CLOG Helper Functions

    +

    25 CLOG Helper Functions

    Tutorial and demo helpers

    @@ -7766,7 +8069,7 @@ clog-user:body to last window openned to /repl.

    -

    25 CLOG Framework internals and extensions

    +

    26 CLOG Framework internals and extensions

    * Introduction to Internals *

    diff --git a/source/clog-dbi.lisp b/source/clog-dbi.lisp index efe7b94..3fe2f3c 100644 --- a/source/clog-dbi.lisp +++ b/source/clog-dbi.lisp @@ -89,6 +89,10 @@ CLOG-Builder. If not using builder use to connect: :accessor queryid :initform nil :documentation "Current query (private)") + (last-fetch + :accessor last-fetch + :initform nil + :documentation "Last fetch plist") (columns :accessor table-columns :initform nil @@ -149,8 +153,9 @@ be set using DATA-LOAD-PLIST.")) made for get-row. All PANEL items or custom rows on panel will be set using DATA-LOAD-PLIST.")) (defmethod next-row ((obj clog-obj) panel) + (setf (last-fetch obj) (dbi:fetch (queryid obj))) (setf (rowid obj) (data-load-plist panel - (dbi:fetch (queryid obj)) + (last-fetch obj) :row-id-name (row-id-name obj)))) (defgeneric insert-row (clog-obj panel) diff --git a/source/clog.lisp b/source/clog.lisp index 8756448..197ffcf 100644 --- a/source/clog.lisp +++ b/source/clog.lisp @@ -554,6 +554,7 @@ embedded in a native template application.)" (row-id-name generic-function) (rowid generic-function) (table-columns generic-function) + (last-fetch generic-function) (query-row generic-function) (get-row generic-function) (next-row generic-function)