
                                                                    
                                                          
                                ۲۲                        
      ۲                         ۲۲                        
      ۲۲۲       
      ۲۲۲       
      ۲۲۲۲۲۲۲۲       
      ۲۲۲۱۲۲۲۲۲۲       
      ۲۲۲۱۲۲۲۲۲۲       
      ۲۲۲۱۲۲۲۲۲          
       ۲۲ ۲۱۲۲۲۲۲           
   ۲۲۲۱۲۲۲۲۲           
   ۲۲۲۱۲۲۲۲۲            
   ۲۲۲۲۲۲۲۲            
               
                    

--------------------------------------------------------------------------------

  Prosta biblioteka do tworzenia scroll'i oparta na czystym GDI.

--------------------------------------------------------------------------------

  Specyfikacja:

  ------------------------------------------------------------------------------

    SCROLLSTRUCT struc
        ;public:
        ddWidth     dd ?    ; szerokosc scroll'a
        ddROP       dd ?    ; Raster Operation - wiecej szczegolow w opisie
                            ; funkcji BitBlt (Platform SDK)
        X           dd ?    ; wspolrzedna x-owa scroll'a
        Y           dd ?    ; wspolrzedna y-owa scroll'a
        hBkgDC      dd ?    ; kontekst na ktorym bedzie rysowany scroll
        lpstrText   dd ?    ; offset do lancucha ASCIIZ
        hFont       dd ?    ; uchwyt czcionki uzywanej w scroll'u
        ddTxtColor  dd ?    ; kolor textu (00BBGGRRh)
        ddBkgColor  dd ?    ; kolor tla (00BBGGRRh)

        ;private:
        hTxtBmp     dd ?    ;\
        hTmpBmp     dd ?    ; \
        hBakTmpBmp  dd ?    ;  \
        hInDC       dd ?    ;   \ dane uzywane i inicjowane przez scroller
        ddHeight    dd ?    ;   / nie powinny byc modyfikowane z zewnatrz
        ddPos       dd ?    ;  /
        ddTxtWidth  dd ?    ; /
        dbStop      db ?    ;/
    SCROLLSTRUCT ends

  ------------------------------------------------------------------------------

    scrollCreate PROTO :DWORD

    parametry: offset do struktury opisujacej scroll

    opis: tworzy nowy scroller, uzupelnia prywatne skladniki w SCROLLSTRUCT

  ------------------------------------------------------------------------------

    scrollPaint PROTO :DWORD

    parametry: offset do struktury opisujacej scroll

    opis: rysuje jedna klatke scroll'a, inkrementuje pole ddPos, powinna byc
          wywolywana w watku rysujacym

  ------------------------------------------------------------------------------

    scrollPause PROTO :DWORD

    parametry: offset do struktury opisujacej scroll

    opis: zatrzymuje ruchomy scroll lub wznawia zatrzymany scroll

  ------------------------------------------------------------------------------

    scrollDestroy PROTO :DWORD

    parametry: offset do struktury opisujacej scroll

    opis: zwalnia niepotrzebne uchwyty

--------------------------------------------------------------------------------

  Przyklady:

    przyklad pokazujacy wykorzystanie scroll'a znajduje sie w katalogu ..\exp\

     - Masm - przyklad dla MASM'a
     - Vc   - przyklad w C++

    efekt przezroczystosci najlepiej dziala przy ustawieniach:

      - ddTxtColor = 0 ; ddBkgColor = 0FFFFFFh ; ddROP = SRCAND
        czarny text na dowolnym tle

      - ddTxtColor = 0FFFFFFh ; ddBkgColor = 0 ; ddROP = SRCPAINT
        bialy text na dowolnym tle

    pozostale kombinacje mozna probowac we wlasnym zakresie ;)

--------------------------------------------------------------------------------

  Zmiany:

    v1.01:

      + naglowek dla C/C++
      + przyklad dla C/C++

    v1.00:

      + pierwsza wersja (support tylko dla MASM'a)

--------------------------------------------------------------------------------