home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 113 / EnigmaAmiga113CD.iso / software / sviluppo / fm2000 / gadgets.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-02-04  |  2.7 KB  |  74 lines

  1. /*
  2.      Filemaster - Multitasking directory utility.
  3.      Copyright (C) 2000  Toni Wilen
  4.      
  5.      This program is free software; you can redistribute it and/or
  6.      modify it under the terms of the GNU General Public License
  7.      as published by the Free Software Foundation; either version 2
  8.      of the License, or (at your option) any later version.
  9.      
  10.      This program is distributed in the hope that it will be useful,
  11.      but WITHOUT ANY WARRANTY; without even the implied warranty of
  12.      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13.      GNU General Public License for more details.
  14.      
  15.      You should have received a copy of the GNU General Public License
  16.      along with this program; if not, write to the Free Software
  17.      Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  18. */
  19.  
  20.  
  21. struct IntString {
  22.     LONG value;
  23.     LONG max;
  24.     LONG min;
  25. };
  26.  
  27. #define TOGGLE_KIND 10
  28. #define GADGDEFAULT 0x8000    // default (return) gadget
  29. #define GADGMAXSIZE 0x4000    // make gadgets as wide as possible
  30. #define GADGTEXTNUC 0x2000    // no underscore converting on TEXT_KIND
  31. #define GADGTEXTLEFT 0x1000    // left justify TEXT_KIND (default=center)
  32. #define GADGTEXTRIGHT 0x0800    // right justify TEXT_KIND (default=center)
  33. #define GADGEOF 0x0001        // end of line
  34.  
  35. // bits 16-23 = same size number
  36. // bits 24-31 = gadgetid number
  37.  
  38. #define GADSCREEN 0        // open on struct Screen*
  39. #define GADCENTER 1        // center window
  40. #define GADSUPER 2        // super table
  41.  
  42. //supertable;
  43. //16-24 = clicked gadget,8-15=gadget's value,0-7=number of modify lines
  44. //SENABLE/SDISABLE/SCHANGE,0-7 gadget to be modified
  45.  
  46. #define SDISABLE 0x80000000
  47. #define SCHANGE 0x40000000
  48. #define SENABLE 0
  49.  
  50. WORD reqwindow(ULONG*);
  51. void reqwindowtext(UBYTE*);
  52. void dobutton(WORD*,ULONG*,WORD,ULONG);
  53. void donumbutton(WORD*,ULONG*,WORD,WORD,ULONG);
  54. void donumbuttonstring(WORD*,ULONG*,UBYTE*,WORD,ULONG);
  55. void doletterbutton(WORD*,ULONG*,WORD,WORD,ULONG);
  56. void doletterbuttonstring(WORD*,ULONG*,UBYTE*,WORD,ULONG);
  57. void dotext(WORD*,ULONG*,WORD,ULONG);
  58. void dostring(WORD*,ULONG*,UBYTE*,ULONG);
  59. void dobuttonstring(WORD*,ULONG*,UBYTE*,ULONG);
  60. ULONG *doswitch(WORD*,ULONG*,WORD,WORD,ULONG);
  61. ULONG *doswitchstring(WORD*,ULONG*,UBYTE*,WORD,ULONG);
  62. ULONG *dotoggle(WORD*,ULONG*,WORD,WORD,ULONG);
  63. ULONG *dotogglestring(WORD*,ULONG*,UBYTE*,WORD,ULONG);
  64. ULONG *dointegergad(WORD*,ULONG*,struct IntString*,ULONG);
  65. void dostringgad(WORD*,ULONG*,UBYTE*,WORD,ULONG);
  66. ULONG *docyclenumber(WORD*,ULONG*,ULONG,WORD,WORD,WORD);
  67. ULONG *docyclestring(WORD*,ULONG*,WORD,ULONG,WORD,UBYTE*,...);
  68. ULONG *docycle(WORD*,ULONG*,WORD,ULONG,WORD,WORD,...);
  69. WORD pressgadget(struct Window*,struct Gadget*);
  70. void unpressgadget(struct Window*,struct Gadget*);
  71.  
  72. ULONG bguirequest(UBYTE*,UBYTE*,WORD,UBYTE**,void*,...);
  73.  
  74.