/* code was generated by Emperor */

#define CATCOMP_NUMBERS
#define CATCOMP_STRINGS
#define ALL_REACTION_CLASSES
#define ALL_REACTION_MACROS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <clib/alib_protos.h>
#include <clib/asl_protos.h>
#include <clib/dos_protos.h>
#include <clib/exec_protos.h>
#include <clib/gadtools_protos.h>
#include <clib/graphics_protos.h>
#include <clib/intuition_protos.h>
#include <clib/locale_protos.h>
#include <clib/resource_protos.h>
#include <clib/utility_protos.h>
#include <clib/colorwheel_protos.h>
#include <clib/datebrowser_protos.h>
#include <clib/texteditor_protos.h>
#include <clib/wb_protos.h>
#include <gadgets/colorwheel.h>
#include <gadgets/datebrowser.h>
#include <gadgets/gradientslider.h>
#include <gadgets/tapedeck.h>
#include <gadgets/texteditor.h>
#include <proto/texteditor.h>
#include <intuition/gadgetclass.h>
#include <intuition/icclass.h>
#include <intuition/imageclass.h>
#include <reaction/reaction.h>
#include <workbench/startup.h>
#include <wbstartup.h>

#define TapeDeckObject   NewObject(NULL, "tapedeck.gadget"
#define TextEditorObject NewObject(TEXTEDITOR_GetClass(), NULL

#define LOCALE_WINDOW_TITLE1 GetCatalogStr(Catalog, 0, "Window")
#define LOCALE_SCREEN_TITLE1 GetCatalogStr(Catalog, 1, "Workbench Screen")
#define LOCALE_ICONIFIED_TITLE1 GetCatalogStr(Catalog, 2, "Iconified Program")
#define Layout1 Gadget1[1]
#define Clicktab1 Gadget1[2]
#define Page1 Gadget1[3]
#define Page2 Gadget1[4]
#define Button1 Gadget1[5]
#define Button2 Gadget1[6]
#define Page3 Gadget1[7]
#define Checkbox1 Gadget1[8]
#define Checkbox2 Gadget1[9]
#define Page4 Gadget1[10]
#define Integer1 Gadget1[11]
#define Label1 Gadget1[12]
#define Integer2 Gadget1[13]
#define Label2 Gadget1[14]
#define Page5 Gadget1[15]
#define Bitmap1 Gadget1[16]
#define Page6 Gadget1[17]
#define Button3 Gadget1[18]
#define Bitmap2 Gadget1[19]
#define Button4 Gadget1[20]
#define Glyph1 Gadget1[21]
#define Page7 Gadget1[22]
#define Button5 Gadget1[23]
#define Button6 Gadget1[24]
#define Page8 Gadget1[25]
#define Layout3 Gadget1[26]
#define Bevel1 Gadget1[27]
#define Page9 Gadget1[28]
#define Clicktab2 Gadget1[29]
#define Page10 Gadget1[30]
#define Page11 Gadget1[31]
#define Scroller1 Gadget1[32]
#define Layout2 Gadget1[33]
#define Slider1 Gadget1[34]
#define Radiobutton1 Gadget1[35]
#define Tapedeck1 Gadget1[36]
#define Page12 Gadget1[37]
#define Listbrowser1 Gadget1[38]
BYTE Emperor_Gadgetkind1[41] = { 0, 12, 3, 12, 12, 0, 0, 12, 1, 1, 12, 11, 26, 11, 26, 12, 24, 12, 0, 24, 0, 25, 12, 0, 0, 12, 12, 23, 12, 3, 12, 12, 16, 12, 17, 15, 21, 12, 13, -1 };

void Window1_CloseWindow_Event(void);
BOOL Emperor_InitProgram(void);
void Emperor_QuitProgram(void);
void Emperor_CloseWindow_Window1(void);
void Emperor_IconifyWindow_Window1(void);
struct Window *Emperor_OpenWindow_Window1(void);
struct Window *Emperor_UniconifyWindow_Window1(void);
BOOL Emperor_GetMenuItemAttr(UWORD, UWORD);
void Emperor_SetMenuItemAttr(UWORD, UWORD, BOOL);
STRPTR Emperor_GetGadgetAttr(struct Gadget *);
void Emperor_SetGadgetAttr(struct Gadget *, STRPTR);
STRPTR Emperor_GetGadgetAttrComplex(struct Gadget *, ULONG);
void Emperor_SetGadgetAttrComplex(struct Gadget *, ULONG, STRPTR);
BOOL Emperor_GetGadgetDisabledAttr(struct Gadget *);
void Emperor_SetGadgetDisabledAttr(struct Gadget *, BOOL);
BOOL Emperor_GetGadgetReadOnlyAttr(struct Gadget *);
void Emperor_SetGadgetReadOnlyAttr(struct Gadget *, BOOL);
void Emperor_ActivateGadget(struct Gadget *);
void Emperor_RethinkLayout(struct Gadget *);
void Emperor_RefreshGList(struct Gadget *, WORD);
void Emperor_ChangeWindowPosition(struct Window *, WORD, WORD);
void Emperor_ChangeWindowSize(struct Window *, WORD, WORD);
void Emperor_SetWindowBusyPointer(struct Window *, BOOL);
void Emperor_SetWindowTitle(struct Window *, STRPTR);
void Emperor_SetScreenTitle(struct Window *, STRPTR);
void Emperor_AllocChooserNode(struct List *, char **, WORD *);
void Emperor_AllocClicktabNode(struct List *, char **, WORD *);
void Emperor_AllocListbrowserNode(struct List *, char **, WORD *);
void Emperor_AllocRadiobuttonNode(struct List *, char **, WORD *);
void Emperor_AllocListbrowserGadToolsNode(struct List *, char **);
STRPTR inttostring(LONG);
LONG stringtoint(STRPTR);
ULONG stringlength(STRPTR buffer);

struct Library *IntuitionBase = NULL;
struct Library *LocaleBase = NULL;
struct Library *GadToolsBase = NULL;
struct Library *ASLBase = NULL;
struct Library *DOSLibBase = NULL;
struct Library *ResourceBase = NULL;
struct Library *WindowBase = NULL;
struct Library *RequesterBase = NULL;
struct Library *ButtonBase = NULL;
struct Library *CheckBoxBase = NULL;
struct Library *ChooserBase = NULL;
struct Library *ClickTabBase = NULL;
struct Library *ColorWheelBase = NULL;
struct Library *DateBrowserBase = NULL;
struct Library *FuelGaugeBase = NULL;
struct Library *GetFileBase = NULL;
struct Library *GetFontBase = NULL;
struct Library *GetScreenModeBase = NULL;
struct Library *GradientSliderBase = NULL;
struct Library *IntegerBase = NULL;
struct Library *LayoutBase = NULL;
struct Library *ListBrowserBase = NULL;
struct Library *PaletteBase = NULL;
struct Library *RadioButtonBase = NULL;
struct Library *ScrollerBase = NULL;
struct Library *SliderBase = NULL;
struct Library *SpaceBase = NULL;
struct Library *SpeedBarBase = NULL;
struct Library *StringBase = NULL;
struct Library *TapeDeckBase = NULL;
struct Library *TextEditorBase = NULL;
struct Library *BevelBase = NULL;
struct Library *BitMapBase = NULL;
struct Library *GlyphBase = NULL;
struct Library *LabelBase = NULL;
struct List Chooser_ClicktabArray;
struct List Clicktab_ClicktabArray;
struct List Listbrowser_ClicktabArray;
struct List Radiobutton_ClicktabArray;
struct List Listbrowser_GadTools_ClicktabArray;
struct List Chooser_Clicktab2Array;
struct List Clicktab_Clicktab2Array;
struct List Listbrowser_Clicktab2Array;
struct List Radiobutton_Clicktab2Array;
struct List Listbrowser_GadTools_Clicktab2Array;

void *vinfo = NULL;
BOOL os35 = TRUE;
BOOL terminated = FALSE;
ULONG WindowSignals1 = 0L;
Object *WindowObject1 = NULL;
struct Catalog *Catalog = NULL;
struct Gadget *Gadget1[39];
struct MsgPort *AppPort = NULL;
struct MsgPort *MsgPort = NULL;
struct Screen *Screen = NULL;
struct Window *Window1 = NULL;

const char VERSION[] = "$VER: ClicktabExample 1.4 (16-Feb-2001)";
const char AUTHOR[] = "Matthias Gietzelt";

/* global variables declarations */

char *ClicktabArrayraw[] = { "node1", "node2", "node3", "node4", "node5", "node6", "node7", "node8", NULL };
WORD ClicktabArrayattr[] = { 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL };
char *Clicktab2Arrayraw[] = { "some stuff", "other stuff", NULL };
WORD Clicktab2Arrayattr[] = { 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, NULL };

void main(void)
{
    BYTE Emperor_Exception = 0;
    ULONG Emperor_ExceptionStringLength;
    ULONG Emperor_Input, Emperor_Code;
    char Emperor_ExceptionString[200];
    struct EasyStruct EmperorRequest_InitializationErrorRequest;
    struct IntuiMessage *IntuiMessage = NULL;
    struct Gadget *GadgetMessage = NULL;

    Emperor_Input = 0L;
    Emperor_Code = 0L;
    if(!Emperor_InitProgram())
    {
        if(Screen = LockPubScreen(NULL))
        {
            if(vinfo = GetVisualInfo(Screen, TAG_DONE))
            {
                    if(os35) Emperor_AllocChooserNode(&Chooser_ClicktabArray, ClicktabArrayraw, ClicktabArrayattr);
                    if(os35) Emperor_AllocClicktabNode(&Clicktab_ClicktabArray, ClicktabArrayraw, ClicktabArrayattr);
                    if(os35) Emperor_AllocListbrowserNode(&Listbrowser_ClicktabArray, ClicktabArrayraw, ClicktabArrayattr);
                    if(os35) Emperor_AllocRadiobuttonNode(&Radiobutton_ClicktabArray, ClicktabArrayraw, ClicktabArrayattr);
                    Emperor_AllocListbrowserGadToolsNode(&Listbrowser_GadTools_ClicktabArray, ClicktabArrayraw);
                    if(os35) Emperor_AllocChooserNode(&Chooser_Clicktab2Array, Clicktab2Arrayraw, Clicktab2Arrayattr);
                    if(os35) Emperor_AllocClicktabNode(&Clicktab_Clicktab2Array, Clicktab2Arrayraw, Clicktab2Arrayattr);
                    if(os35) Emperor_AllocListbrowserNode(&Listbrowser_Clicktab2Array, Clicktab2Arrayraw, Clicktab2Arrayattr);
                    if(os35) Emperor_AllocRadiobuttonNode(&Radiobutton_Clicktab2Array, Clicktab2Arrayraw, Clicktab2Arrayattr);
                    Emperor_AllocListbrowserGadToolsNode(&Listbrowser_GadTools_Clicktab2Array, Clicktab2Arrayraw);
                    if(AppPort = CreateMsgPort())
                    {
                        if(MsgPort = CreatePort("ClicktabExample_Port", 0))
                        {
                            if(os35)
                            {
                                WindowObject1 = (Object *) WindowObject,
                                                WA_Left, 0,
                                                WA_Top, 17,
                                                WA_Width, 320,
                                                WA_Height, 400,
                                                WA_SizeGadget, TRUE,
                                                WA_DragBar, TRUE,
                                                WA_DepthGadget, TRUE,
                                                WA_CloseGadget, TRUE,
                                                WA_Activate, TRUE,
                                                WA_AutoAdjust, TRUE,
                                                WA_IDCMP, IDCMP_GADGETDOWN | IDCMP_GADGETUP | IDCMP_GADGETHELP | IDCMP_MENUPICK | IDCMP_MENUHELP | IDCMP_CLOSEWINDOW | IDCMP_ACTIVEWINDOW | IDCMP_INACTIVEWINDOW | IDCMP_RAWKEY | IDCMP_VANILLAKEY | IDCMP_MOUSEBUTTONS | IDCMP_MOUSEMOVE | IDCMP_NEWSIZE | IDCMP_CHANGEWINDOW | IDCMP_SIZEVERIFY | IDCMP_REFRESHWINDOW | IDCMP_INTUITICKS,
                                                WA_MinWidth, 0,
                                                WA_MinHeight, 0,
                                                WA_MaxWidth, 0,
                                                WA_MaxHeight, 0,
                                                WA_Title, LOCALE_WINDOW_TITLE1,
                                                WA_ScreenTitle, LOCALE_SCREEN_TITLE1,
                                                WA_PubScreen, Screen,
                                                WINDOW_GadgetHelp, TRUE,
                                                WINDOW_IconifyGadget, FALSE,
                                                WINDOW_IconTitle, LOCALE_ICONIFIED_TITLE1,
                                                WINDOW_AppPort, AppPort,
                                                WINDOW_ParentGroup, (Object *) Gadget1[0] = (Object *) VGroupObject,
                                                                        LAYOUT_SpaceOuter, TRUE,
                                                                        LAYOUT_DeferLayout, TRUE,
                                                                        LAYOUT_AddChild, (Object *) Gadget1[1] = (Object *) LayoutObject,
                                                                                         GA_ID, 0,
                                                                                         GA_RelVerify, TRUE,
                                                                                         GA_GadgetHelp, TRUE,
                                                                                         LAYOUT_Label, "",
                                                                                         LAYOUT_Orientation, 1,
                                                                                         LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                         LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                         LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                         LAYOUT_BevelState, IDS_NORMAL,
                                                                                         LAYOUT_BevelStyle, 4,
                                                                                         LAYOUT_AddChild, (Object *) Gadget1[2] = (Object *) ClickTabObject,
                                                                                                          GA_ID, 1,
                                                                                                          GA_RelVerify, TRUE,
                                                                                                          GA_GadgetHelp, TRUE,
                                                                                                          CLICKTAB_Labels, (ULONG) &Clicktab_ClicktabArray,
                                                                                                          CLICKTAB_Current, 0,
                                                                                                          CLICKTAB_PageGroup, (Object *) Gadget1[3] = (Object *) PageObject,
                                                                                                                           GA_ID, 2,
                                                                                                                           GA_RelVerify, TRUE,
                                                                                                                           GA_GadgetHelp, TRUE,
                                                                                                                           LAYOUT_Label, "",
                                                                                                                           LAYOUT_Orientation, 1,
                                                                                                                           LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                           LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                           LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                           LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                           LAYOUT_BevelStyle, 4,
                                                                                                                           LAYOUT_FixedVert, TRUE,
                                                                                                                           PAGE_Add, (Object *) Gadget1[4] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 3,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[5] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 4,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "",
                                                                                                                                                             BUTTON_AutoButton, 4,
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                            End,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[6] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 5,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "Button",
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[7] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 6,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[8] = (Object *) CheckBoxObject,
                                                                                                                                                             GA_ID, 7,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "Checkbox1",
                                                                                                                                                             CHECKBOX_TextPen, 1,
                                                                                                                                                             CHECKBOX_FillTextPen, 1,
                                                                                                                                                             CHECKBOX_BackgroundPen, 0,
                                                                                                                                                             CHECKBOX_TextPlace, PLACETEXT_RIGHT,
                                                                                                                                            End,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[9] = (Object *) CheckBoxObject,
                                                                                                                                                             GA_ID, 8,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "Checkbox2",
                                                                                                                                                             CHECKBOX_TextPen, 1,
                                                                                                                                                             CHECKBOX_FillTextPen, 1,
                                                                                                                                                             CHECKBOX_BackgroundPen, 0,
                                                                                                                                                             CHECKBOX_TextPlace, PLACETEXT_RIGHT,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[10] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 9,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[11] = (Object *) IntegerObject,
                                                                                                                                                             GA_ID, 23,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_TabCycle, TRUE,
                                                                                                                                                             INTEGER_Number, 0,
                                                                                                                                                             INTEGER_MaxChars, 10,
                                                                                                                                                             INTEGER_Minimum, -30000,
                                                                                                                                                             INTEGER_Maximum, 30000,
                                                                                                                                                             INTEGER_Arrows, TRUE,
                                                                                                                                            End,
                                                                                                                                            CHILD_Label, (Object *) Gadget1[12] = (Object *) LabelObject,
                                                                                                                                                             LABEL_Justification, 0,
                                                                                                                                                             LABEL_Text, "Integer #1",
                                                                                                                                            End,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[13] = (Object *) IntegerObject,
                                                                                                                                                             GA_ID, 24,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_TabCycle, TRUE,
                                                                                                                                                             INTEGER_Number, 0,
                                                                                                                                                             INTEGER_MaxChars, 10,
                                                                                                                                                             INTEGER_Minimum, -30000,
                                                                                                                                                             INTEGER_Maximum, 30000,
                                                                                                                                                             INTEGER_Arrows, TRUE,
                                                                                                                                            End,
                                                                                                                                            CHILD_Label, (Object *) Gadget1[14] = (Object *) LabelObject,
                                                                                                                                                             LABEL_Justification, 0,
                                                                                                                                                             LABEL_Text, "Integer #2",
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[15] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 12,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddImage, (Object *) Gadget1[16] = (Object *) BitMapObject,
                                                                                                                                                             BITMAP_SourceFile, "Emperor:Projects/ClicktabExample.jpg",
                                                                                                                                                             BITMAP_Screen, Screen,
                                                                                                                                                             BITMAP_Precision, PRECISION_EXACT,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[17] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 14,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[18] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 15,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "",
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                                             BUTTON_RenderImage, (Object *) Gadget1[19] = (Object *) BitMapObject,
                                                                                                                                                                              BITMAP_SourceFile, "Emperor:Projects/ClicktabExample.iff",
                                                                                                                                                                              BITMAP_Screen, Screen,
                                                                                                                                                                              BITMAP_Precision, PRECISION_EXACT,
                                                                                                                                                             End,
                                                                                                                                            End,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[20] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 17,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "",
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                                             BUTTON_RenderImage, (Object *) Gadget1[21] = (Object *) GlyphObject,
                                                                                                                                                                              GLYPH_Glyph, 11,
                                                                                                                                                             End,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[22] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 19,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[23] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 20,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "",
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                            End,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[24] = (Object *) ButtonObject,
                                                                                                                                                             GA_ID, 21,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             GA_Text, "",
                                                                                                                                                             BUTTON_Justification, 1,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[25] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 22,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[26] = (Object *) LayoutObject,
                                                                                                                                                             GA_ID, 26,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             LAYOUT_Label, "",
                                                                                                                                                             LAYOUT_Orientation, 0,
                                                                                                                                                             LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                                             LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                                             LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                                             LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                                             LAYOUT_BevelStyle, 4,
                                                                                                                                                             LAYOUT_AddImage, (Object *) Gadget1[27] = (Object *) BevelObject,
                                                                                                                                                                              BEVEL_Label, "",
                                                                                                                                                                              BEVEL_LabelPlace, 0,
                                                                                                                                                                              BEVEL_Style, 5,
                                                                                                                                                             End,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                                           PAGE_Add, (Object *) Gadget1[28] = (Object *) LayoutObject,
                                                                                                                                            GA_ID, 27,
                                                                                                                                            GA_RelVerify, TRUE,
                                                                                                                                            GA_GadgetHelp, TRUE,
                                                                                                                                            LAYOUT_Label, "",
                                                                                                                                            LAYOUT_Orientation, 1,
                                                                                                                                            LAYOUT_LeftSpacing, 10,
                                                                                                                                            LAYOUT_TopSpacing, 10,
                                                                                                                                            LAYOUT_BottomSpacing, 10,
                                                                                                                                            LAYOUT_RightSpacing, 10,
                                                                                                                                            LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                            LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                            LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                            LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                            LAYOUT_BevelStyle, 4,
                                                                                                                                            LAYOUT_FixedVert, TRUE,
                                                                                                                                            LAYOUT_AddChild, (Object *) Gadget1[29] = (Object *) ClickTabObject,
                                                                                                                                                             GA_ID, 28,
                                                                                                                                                             GA_RelVerify, TRUE,
                                                                                                                                                             GA_GadgetHelp, TRUE,
                                                                                                                                                             CLICKTAB_Labels, (ULONG) &Clicktab_Clicktab2Array,
                                                                                                                                                             CLICKTAB_Current, 0,
                                                                                                                                                             CLICKTAB_PageGroup, (Object *) Gadget1[30] = (Object *) PageObject,
                                                                                                                                                                              GA_ID, 29,
                                                                                                                                                                              GA_RelVerify, TRUE,
                                                                                                                                                                              GA_GadgetHelp, TRUE,
                                                                                                                                                                              LAYOUT_Label, "",
                                                                                                                                                                              LAYOUT_Orientation, 1,
                                                                                                                                                                              LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                                                              LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                                                              LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                                                              LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                                                              LAYOUT_BevelStyle, 4,
                                                                                                                                                                              LAYOUT_FixedVert, TRUE,
                                                                                                                                                                              PAGE_Add, (Object *) Gadget1[31] = (Object *) LayoutObject,
                                                                                                                                                                                               GA_ID, 30,
                                                                                                                                                                                               GA_RelVerify, TRUE,
                                                                                                                                                                                               GA_GadgetHelp, TRUE,
                                                                                                                                                                                               LAYOUT_Label, "",
                                                                                                                                                                                               LAYOUT_Orientation, 1,
                                                                                                                                                                                               LAYOUT_LeftSpacing, 10,
                                                                                                                                                                                               LAYOUT_TopSpacing, 10,
                                                                                                                                                                                               LAYOUT_BottomSpacing, 10,
                                                                                                                                                                                               LAYOUT_RightSpacing, 10,
                                                                                                                                                                                               LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                                                                               LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                                                                               LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                                                                               LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                                                                               LAYOUT_BevelStyle, 4,
                                                                                                                                                                                               LAYOUT_FixedVert, TRUE,
                                                                                                                                                                                               LAYOUT_AddChild, (Object *) Gadget1[32] = (Object *) ScrollerObject,
                                                                                                                                                                                                                GA_ID, 31,
                                                                                                                                                                                                                GA_RelVerify, TRUE,
                                                                                                                                                                                                                GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                SCROLLER_Orientation, SCROLLER_HORIZONTAL,
                                                                                                                                                                                                                SCROLLER_Arrows, TRUE,
                                                                                                                                                                                               End,
                                                                                                                                                                                               LAYOUT_AddChild, (Object *) Gadget1[33] = (Object *) LayoutObject,
                                                                                                                                                                                                                GA_ID, 37,
                                                                                                                                                                                                                GA_RelVerify, TRUE,
                                                                                                                                                                                                                GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                LAYOUT_Label, "",
                                                                                                                                                                                                                LAYOUT_Orientation, 0,
                                                                                                                                                                                                                LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                                                                                                LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                                                                                                LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                                                                                                LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                                                                                                LAYOUT_BevelStyle, 4,
                                                                                                                                                                                                                LAYOUT_AddChild, (Object *) Gadget1[34] = (Object *) SliderObject,
                                                                                                                                                                                                                                 GA_ID, 32,
                                                                                                                                                                                                                                 GA_RelVerify, TRUE,
                                                                                                                                                                                                                                 GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                                 SLIDER_Min, 0,
                                                                                                                                                                                                                                 SLIDER_Max, 100,
                                                                                                                                                                                                                                 SLIDER_Ticks, 9,
                                                                                                                                                                                                                                 SLIDER_TickSize, 5,
                                                                                                                                                                                                                                 SLIDER_Level, 0,
                                                                                                                                                                                                                                 SLIDER_Orientation, SLIDER_VERTICAL,
                                                                                                                                                                                                                                 SLIDER_ShortTicks, TRUE,
                                                                                                                                                                                                                End,
                                                                                                                                                                                                                LAYOUT_AddChild, (Object *) Gadget1[35] = (Object *) RadioButtonObject,
                                                                                                                                                                                                                                 GA_ID, 36,
                                                                                                                                                                                                                                 GA_RelVerify, TRUE,
                                                                                                                                                                                                                                 GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                                 RADIOBUTTON_Labels, (ULONG) &Radiobutton_ClicktabArray,
                                                                                                                                                                                                                                 RADIOBUTTON_LabelPlace, 0,
                                                                                                                                                                                                                                 RADIOBUTTON_Spacing, 0,
                                                                                                                                                                                                                End,
                                                                                                                                                                                               End,
                                                                                                                                                                                               LAYOUT_AddChild, (Object *) Gadget1[36] = (Object *) TapeDeckObject,
                                                                                                                                                                                                                GA_ID, 34,
                                                                                                                                                                                                                GA_RelVerify, TRUE,
                                                                                                                                                                                                                GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                TDECK_Frames, 1,
                                                                                                                                                                                                                TDECK_Mode, 0,
                                                                                                                                                                                               End,
                                                                                                                                                                              End,
                                                                                                                                                                              PAGE_Add, (Object *) Gadget1[37] = (Object *) LayoutObject,
                                                                                                                                                                                               GA_ID, 33,
                                                                                                                                                                                               GA_RelVerify, TRUE,
                                                                                                                                                                                               GA_GadgetHelp, TRUE,
                                                                                                                                                                                               LAYOUT_Label, "",
                                                                                                                                                                                               LAYOUT_Orientation, 1,
                                                                                                                                                                                               LAYOUT_LeftSpacing, 10,
                                                                                                                                                                                               LAYOUT_TopSpacing, 10,
                                                                                                                                                                                               LAYOUT_BottomSpacing, 10,
                                                                                                                                                                                               LAYOUT_RightSpacing, 10,
                                                                                                                                                                                               LAYOUT_HorizAlignment, LALIGN_LEFT,
                                                                                                                                                                                               LAYOUT_VertAlignment, LALIGN_TOP,
                                                                                                                                                                                               LAYOUT_LabelPlace, BVJ_TOP_LEFT,
                                                                                                                                                                                               LAYOUT_BevelState, IDS_NORMAL,
                                                                                                                                                                                               LAYOUT_BevelStyle, 4,
                                                                                                                                                                                               LAYOUT_FixedVert, TRUE,
                                                                                                                                                                                               LAYOUT_AddChild, (Object *) Gadget1[38] = (Object *) ListBrowserObject,
                                                                                                                                                                                                                GA_ID, 35,
                                                                                                                                                                                                                GA_RelVerify, TRUE,
                                                                                                                                                                                                                GA_GadgetHelp, TRUE,
                                                                                                                                                                                                                LISTBROWSER_AutoFit, TRUE,
                                                                                                                                                                                                                LISTBROWSER_ShowSelected, TRUE,
                                                                                                                                                                                                                LISTBROWSER_VerticalProp, TRUE,
                                                                                                                                                                                                                LISTBROWSER_HorizontalProp, TRUE,
                                                                                                                                                                                               End,
                                                                                                                                                                              End,
                                                                                                                                                             End,
                                                                                                                                            End,
                                                                                                                           End,
                                                                                                          End,
                                                                                         End,
                                                                        End,
                                                EndGroup,
                                EndWindow;
                            }

                            if(os35) SetAttrs(Button5, BUTTON_RenderImage, Bitmap2, TAG_DONE);
                            if(os35) SetAttrs(Button6, BUTTON_RenderImage, Glyph1, TAG_DONE);
                            SetProgramName("ClicktabExample");
                            Emperor_OpenWindow_Window1();
                            while(!terminated)
                            {
                                Wait(WindowSignals1);
                                while((Emperor_Input = RA_HandleInput(WindowObject1, &Emperor_Code)) != WMHI_LASTMSG)
                                {
                                    switch(Emperor_Input & WMHI_CLASSMASK)
                                    {
                                        case WMHI_GADGETUP:
                                            switch(Emperor_Input & WMHI_GADGETMASK)
                                            {
                                                default: break;
                                            }
                                            break;
                                        case WMHI_GADGETHELP:
                                            switch(Emperor_Input & WMHI_GADGETMASK)
                                            {
                                                default: break;
                                            }
                                            break;
                                        case WMHI_MENUPICK:
                                            switch(Emperor_Input & WMHI_MENUMASK)
                                            {
                                                default: break;
                                            }
                                            break;
                                        case WMHI_MENUHELP:
                                            switch(Emperor_Input & WMHI_MENUMASK)
                                            {
                                                default: break;
                                            }
                                            break;
                                        case WMHI_CLOSEWINDOW:
                                            Window1_CloseWindow_Event();
                                            break;
                                        case WMHI_ICONIFY:
                                            break;
                                        case WMHI_UNICONIFY:
                                            break;
                                        case WMHI_ACTIVE:
                                            break;
                                        case WMHI_INACTIVE:
                                            break;
                                        case WMHI_RAWKEY:
                                            break;
                                        case WMHI_VANILLAKEY:
                                            break;
                                        case WMHI_MOUSEBUTTONS:
                                            break;
                                        case WMHI_MOUSEMOVE:
                                            break;
                                        case WMHI_NEWSIZE:
                                            break;
                                        case WMHI_CHANGEWINDOW:
                                            break;
                                        case WMHI_DISPOSEDWINDOW:
                                            break;
                                        case WMHI_INTUITICK:
                                            break;
                                    }
                                }
                            }
                        }
                        else Emperor_Exception = 4;
                    }
                    else Emperor_Exception = 4;
            }
            else Emperor_Exception = 2;
        }
        else Emperor_Exception = 1;
    }
    if(Emperor_Exception)
    {
        strcpy(Emperor_ExceptionString, "Error during initialization:");
        Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
        Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
        Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = NULL;
        switch(Emperor_Exception)
        {
            case 1: strcat(Emperor_ExceptionString, "Can't lock your public-screen."); break;
            case 2: strcat(Emperor_ExceptionString, "Can't get visualinfo of your public-screen."); break;
            case 3: strcat(Emperor_ExceptionString, "Can't create menu."); break;
            case 4: strcat(Emperor_ExceptionString, "Can't create message-port."); break;
        }
        Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
        Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
        Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = (char) 10;
        Emperor_ExceptionString[Emperor_ExceptionStringLength + 2] = NULL;
        strcat(Emperor_ExceptionString, "Maybe there isn't enough memory !");
        EmperorRequest_InitializationErrorRequest.es_StructSize = sizeof(struct EasyStruct);
        EmperorRequest_InitializationErrorRequest.es_Flags = 0L;
        EmperorRequest_InitializationErrorRequest.es_Title = (UBYTE *) "Program error";
        EmperorRequest_InitializationErrorRequest.es_TextFormat = (UBYTE *) Emperor_ExceptionString;
        EmperorRequest_InitializationErrorRequest.es_GadgetFormat = (UBYTE *) "Okay";
        EasyRequest(Window1, &EmperorRequest_InitializationErrorRequest, NULL, NULL);
    }
    Emperor_QuitProgram();
}

void wbmain(struct WBStartup *Emperor_ArgMsg)
{
    main();
}

#include <ClicktabExample.h>

BOOL Emperor_InitProgram(void)
{
    UWORD Emperor_InitVar = 0;
    ULONG Emperor_ExceptionStringLength;
    char Emperor_OccuredError[50], Emperor_ExceptionString[200];
    struct Task *Emperor_ThisTask = NULL;
    struct EasyStruct EmperorRequest_InitializationErrorRequest;

    if(!(IntuitionBase = OpenLibrary("intuition.library", 39L)))
    {
        Emperor_InitVar = 1;
        strcpy(Emperor_OccuredError, "intuition.library");
    }
    if(!(LocaleBase = OpenLibrary("locale.library", 39L)))
    {
        Emperor_InitVar = 1;
        strcpy(Emperor_OccuredError, "locale.library");
    }
    if(!(GadToolsBase = OpenLibrary("gadtools.library", 39L)))
    {
        Emperor_InitVar = 1;
        strcpy(Emperor_OccuredError, "gadtools.library");
    }
    if(!(ASLBase = OpenLibrary("asl.library", 39L)))
    {
        Emperor_InitVar = 1;
        strcpy(Emperor_OccuredError, "asl.library");
    }
    if(!(DOSLibBase = OpenLibrary("dos.library", 39L)))
    {
        Emperor_InitVar = 1;
        strcpy(Emperor_OccuredError, "dos.library");
    }
    if(!(ResourceBase = OpenLibrary("resource.library", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "resource.library");
    }
    if(!(WindowBase = OpenLibrary("window.class", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "window.class");
    }
    if(!(RequesterBase = OpenLibrary("requester.class", 42L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "requester.class");
    }
    if(!(ButtonBase = OpenLibrary("gadgets/button.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/button.gadget");
    }
    if(!(CheckBoxBase = OpenLibrary("gadgets/checkbox.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/checkbox.gadget");
    }
    if(!(ChooserBase = OpenLibrary("gadgets/chooser.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/chooser.gadget");
    }
    if(!(ClickTabBase = OpenLibrary("gadgets/clicktab.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/clicktab.gadget");
    }
    if(!(ColorWheelBase = OpenLibrary("gadgets/colorwheel.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/colorwheel.gadget");
    }
    if(!(DateBrowserBase = OpenLibrary("gadgets/datebrowser.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/datebrowser.gadget");
    }
    if(!(FuelGaugeBase = OpenLibrary("gadgets/fuelgauge.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/fuelgauge.gadget");
    }
    if(!(GetFileBase = OpenLibrary("gadgets/getfile.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/getfile.gadget");
    }
    if(!(GetFontBase = OpenLibrary("gadgets/getfont.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/getfont.gadget");
    }
    if(!(GetScreenModeBase = OpenLibrary("gadgets/getscreenmode.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/getscreenmode.gadget");
    }
    if(!(GradientSliderBase = OpenLibrary("gadgets/gradientslider.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/gradientslider.gadget");
    }
    if(!(IntegerBase = OpenLibrary("gadgets/integer.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/integer.gadget");
    }
    if(!(LayoutBase = OpenLibrary("gadgets/layout.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/layout.gadget");
    }
    if(!(ListBrowserBase = OpenLibrary("gadgets/listbrowser.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/listbrowser.gadget");
    }
    if(!(PaletteBase = OpenLibrary("gadgets/palette.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/palette.gadget");
    }
    if(!(RadioButtonBase = OpenLibrary("gadgets/radiobutton.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/radiobutton.gadget");
    }
    if(!(ScrollerBase = OpenLibrary("gadgets/scroller.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/scroller.gadget");
    }
    if(!(SliderBase = OpenLibrary("gadgets/slider.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/slider.gadget");
    }
    if(!(SpaceBase = OpenLibrary("gadgets/space.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/space.gadget");
    }
    if(!(SpeedBarBase = OpenLibrary("gadgets/speedbar.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/speedbar.gadget");
    }
    if(!(StringBase = OpenLibrary("gadgets/string.gadget", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/string.gadget");
    }
    if(!(TapeDeckBase = OpenLibrary("gadgets/tapedeck.gadget", 40L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/tapedeck.gadget");
    }
    if(!(TextEditorBase = OpenLibrary("gadgets/texteditor.gadget", 15L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "gadgets/texteditor.gadget");
    }
    if(!(BevelBase = OpenLibrary("images/bevel.image", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "images/bevel.image");
    }
    if(!(BitMapBase = OpenLibrary("images/bitmap.image", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "images/bitmap.image");
    }
    if(!(GlyphBase = OpenLibrary("images/glyph.image", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "images/glyph.image");
    }
    if(!(LabelBase = OpenLibrary("images/label.image", 44L)))
    {
        os35 = FALSE;
        strcpy(Emperor_OccuredError, "images/label.image");
    }
    Catalog = OpenCatalogA(NULL, "ClicktabExample.catalog", NULL);
    Emperor_ThisTask = FindTask(NULL);
    if(((ULONG) Emperor_ThisTask->tc_SPUpper - (ULONG) Emperor_ThisTask->tc_SPLower) < 4096) Emperor_InitVar = 4;
    if(Emperor_InitVar)
    {
        strcpy(Emperor_ExceptionString, "Error during initialization:");
        Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
        Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
        Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = (char) 10;
        Emperor_ExceptionString[Emperor_ExceptionStringLength + 2] = NULL;
        if(Emperor_InitVar == 1)
        {
            strcat(Emperor_ExceptionString, "Can't open Amiga-library");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = (char) 34;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 2] = NULL;
            strcat(Emperor_ExceptionString, Emperor_OccuredError);
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 34;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 2] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 3] = NULL;
            strcat(Emperor_ExceptionString, "Probably you haven't got a");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = NULL;
            strcat(Emperor_ExceptionString, "correct installed AmigaOS system !");
        }
        if(Emperor_InitVar == 4)
        {
            strcat(Emperor_ExceptionString, "This program needs about 4096");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = NULL;
            strcat(Emperor_ExceptionString, "bytes of stack to run.");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 2] = NULL;
            strcat(Emperor_ExceptionString, " * when using CLI: type <stack 4096>");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = NULL;
            strcat(Emperor_ExceptionString, " * when using Workbench: check icon information");
            Emperor_ExceptionStringLength = stringlength(Emperor_ExceptionString);
            Emperor_ExceptionString[Emperor_ExceptionStringLength] = (char) 10;
            Emperor_ExceptionString[Emperor_ExceptionStringLength + 1] = NULL;
            strcat(Emperor_ExceptionString, " * when using DOpus5: modify Menu-Preferences-Environment-CLI-Start");
        }
        EmperorRequest_InitializationErrorRequest.es_StructSize = sizeof(struct EasyStruct);
        EmperorRequest_InitializationErrorRequest.es_Flags = 0L;
        EmperorRequest_InitializationErrorRequest.es_Title = (UBYTE *) "Program error";
        EmperorRequest_InitializationErrorRequest.es_TextFormat = (UBYTE *) Emperor_ExceptionString;
        EmperorRequest_InitializationErrorRequest.es_GadgetFormat = (UBYTE *) "Okay";
        EasyRequest(Window1, &EmperorRequest_InitializationErrorRequest, NULL, NULL);
    }
    return(Emperor_InitVar);
}

void Emperor_QuitProgram(void)
{
    Emperor_CloseWindow_Window1();
    if(WindowObject1) DisposeObject(WindowObject1);
    if(AppPort) DeleteMsgPort(AppPort);
    if(MsgPort) DeletePort(MsgPort);
    if(vinfo) FreeVisualInfo(vinfo);
    if(Screen) UnlockPubScreen(NULL, Screen);
    if(Catalog) CloseCatalog(Catalog);
    if(LabelBase) CloseLibrary(LabelBase);
    if(GlyphBase) CloseLibrary(GlyphBase);
    if(BitMapBase) CloseLibrary(BitMapBase);
    if(BevelBase) CloseLibrary(BevelBase);
    if(TextEditorBase) CloseLibrary(TextEditorBase);
    if(TapeDeckBase) CloseLibrary(TapeDeckBase);
    if(StringBase) CloseLibrary(StringBase);
    if(SpeedBarBase) CloseLibrary(SpeedBarBase);
    if(SpaceBase) CloseLibrary(SpaceBase);
    if(SliderBase) CloseLibrary(SliderBase);
    if(ScrollerBase) CloseLibrary(ScrollerBase);
    if(RadioButtonBase) CloseLibrary(RadioButtonBase);
    if(PaletteBase) CloseLibrary(PaletteBase);
    if(ListBrowserBase) CloseLibrary(ListBrowserBase);
    if(LayoutBase) CloseLibrary(LayoutBase);
    if(IntegerBase) CloseLibrary(IntegerBase);
    if(GradientSliderBase) CloseLibrary(GradientSliderBase);
    if(GetScreenModeBase) CloseLibrary(GetScreenModeBase);
    if(GetFontBase) CloseLibrary(GetFontBase);
    if(GetFileBase) CloseLibrary(GetFileBase);
    if(FuelGaugeBase) CloseLibrary(FuelGaugeBase);
    if(DateBrowserBase) CloseLibrary(DateBrowserBase);
    if(ColorWheelBase) CloseLibrary(ColorWheelBase);
    if(ClickTabBase) CloseLibrary(ClickTabBase);
    if(ChooserBase) CloseLibrary(ChooserBase);
    if(CheckBoxBase) CloseLibrary(CheckBoxBase);
    if(ButtonBase) CloseLibrary(ButtonBase);
    if(RequesterBase) CloseLibrary(RequesterBase);
    if(WindowBase) CloseLibrary(WindowBase);
    if(ResourceBase) CloseLibrary(ResourceBase);
    if(DOSLibBase) CloseLibrary(DOSLibBase);
    if(ASLBase) CloseLibrary(ASLBase);
    if(GadToolsBase) CloseLibrary(GadToolsBase);
    if(LocaleBase) CloseLibrary(LocaleBase);
    if(IntuitionBase) CloseLibrary(IntuitionBase);
    exit(0);
}

void Emperor_CloseWindow_Window1(void)
{
    if(os35)
    {
        DoMethod(WindowObject1, WM_CLOSE, NULL);
        Window1 = NULL;
        WindowSignals1 = 0L;
    }
}

void Emperor_IconifyWindow_Window1(void)
{
    if(os35)
    {
        DoMethod(WindowObject1, WM_ICONIFY, NULL);
        Window1 = NULL;
        WindowSignals1 = 0L;
    }
}

struct Window *Emperor_OpenWindow_Window1(void)
{
    if(os35)
    {
        Window1 = RA_OpenWindow(WindowObject1);
        GetAttr(WINDOW_SigMask, WindowObject1, &WindowSignals1);
    }
    return(Window1);
}

struct Window *Emperor_UniconifyWindow_Window1(void)
{
    return(Emperor_OpenWindow_Window1());
}

STRPTR Emperor_GetGadgetAttr(struct Gadget *Emperor_GadgetName)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    STRPTR Emperor_GadgetAttrReturn = "";

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            switch(Emperor_Gadgetkind1[Emperor_GadgetCounter])
            {
                case 0:
                    GetAttr(GA_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 1:
                    GetAttr(GA_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 2:
                    GetAttr(CHOOSER_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 3:
                    GetAttr(CLICKTAB_Current, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 6:
                    GetAttr(FUELGAUGE_Level, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 10:
                    GetAttr(GRAD_CurVal, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 11:
                    GetAttr(INTEGER_Number, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 13:
                    GetAttr(LISTBROWSER_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 14:
                    GetAttr(PALETTE_Colour, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 15:
                    GetAttr(RADIOBUTTON_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 16:
                    GetAttr(SCROLLER_Top, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 17:
                    GetAttr(SLIDER_Level, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 19:
                    GetAttr(SPEEDBAR_Selected, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 20:
                    GetAttr(STRINGA_TextVal, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    break;
                case 22:
                    GetAttr(GA_TEXTEDITOR_Contents, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
                    strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    break;
            }
            break;
        }
    }
    return(Emperor_GadgetAttrReturn);
}

void Emperor_SetGadgetAttr(struct Gadget *Emperor_GadgetName, STRPTR Emperor_GadgetValue)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            switch(Emperor_Gadgetkind1[Emperor_GadgetCounter])
            {
                case 0:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Selected, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 1:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Selected, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 2:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CHOOSER_Selected, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 3:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CLICKTAB_Current, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 6:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, FUELGAUGE_Level, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 10:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, INTEGER_Number, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 11:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GRAD_CurVal, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 13:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, LISTBROWSER_Selected, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 14:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, PALETTE_Colour, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 15:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, RADIOBUTTON_Selected, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 16:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, SCROLLER_Top, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 17:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, SLIDER_Level, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 19:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, SPEEDBAR_Selected, Emperor_GadgetValue, TAG_DONE);
                    break;
                case 20:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, STRINGA_TextVal, Emperor_GadgetValue, TAG_DONE);
                    break;
                case 22:
                    Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_TEXTEDITOR_Contents, Emperor_GadgetValue, TAG_DONE);
                    break;
            }
            if(Emperor_GadgetAttrBuffer) RefreshGList(Emperor_GadgetName, Emperor_Whichwindow, NULL, 1);
            break;
        }
    }
}

STRPTR Emperor_GetGadgetAttrComplex(struct Gadget *Emperor_GadgetName, ULONG Emperor_GadgetFlagMask)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    STRPTR Emperor_GadgetAttrReturn = "";

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            GetAttr(Emperor_GadgetFlagMask, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
            switch(Emperor_Gadgetkind1[Emperor_GadgetCounter])
            {
                case 0:
                    if(Emperor_GadgetFlagMask == GA_Text) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 1:
                    if(Emperor_GadgetFlagMask == GA_Text) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 2:
                    if(Emperor_GadgetFlagMask == CHOOSER_Title) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 3: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 4:
                    if(Emperor_GadgetFlagMask == WHEEL_Abbrv) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else
                    {
                        if((Emperor_GadgetFlagMask == WHEEL_Red) || (Emperor_GadgetFlagMask == WHEEL_Green) || (Emperor_GadgetFlagMask == WHEEL_Blue) || (Emperor_GadgetFlagMask == WHEEL_Hue) || (Emperor_GadgetFlagMask == WHEEL_Saturation) || (Emperor_GadgetFlagMask == WHEEL_Brightness)) strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer >> 24));
                        else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    }
                    break;
                case 5:
                    if(Emperor_GadgetFlagMask == DATEBROWSER_DayTitles) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 6:
                    if(Emperor_GadgetFlagMask == GA_Text) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 7:
                    if((Emperor_GadgetFlagMask == GETFILE_TitleText) || (Emperor_GadgetFlagMask == GETFILE_File) || (Emperor_GadgetFlagMask == GETFILE_Drawer) || (Emperor_GadgetFlagMask == GETFILE_FullFile) || (Emperor_GadgetFlagMask == GETFILE_Pattern) || (Emperor_GadgetFlagMask == GETFILE_AcceptPattern) || (Emperor_GadgetFlagMask == GETFILE_RejectPattern)) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 8:
                    if(Emperor_GadgetFlagMask == GETFONT_TitleText) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 9:
                    if(Emperor_GadgetFlagMask == GETSCREENMODE_TitleText) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 10: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 11: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 13: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 14: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 15: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 16: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 17: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 18: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 19: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 20:
                    if((Emperor_GadgetFlagMask == STRINGA_TextVal) || (Emperor_GadgetFlagMask == STRINGA_Buffer) || (Emperor_GadgetFlagMask == STRINGA_UndoBuffer) || (Emperor_GadgetFlagMask == STRINGA_WorkBuffer)) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
                case 21: strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer)); break;
                case 22:
                    if(Emperor_GadgetFlagMask == GA_TEXTEDITOR_Contents) strcpy(Emperor_GadgetAttrReturn, (char *) Emperor_GadgetAttrBuffer);
                    else strcpy(Emperor_GadgetAttrReturn, inttostring(Emperor_GadgetAttrBuffer));
                    break;
            }
            break;
        }
    }
    return(Emperor_GadgetAttrReturn);
}

void Emperor_SetGadgetAttrComplex(struct Gadget *Emperor_GadgetName, ULONG Emperor_GadgetFlagMask, STRPTR Emperor_GadgetValue)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            switch(Emperor_Gadgetkind1[Emperor_GadgetCounter])
            {
                case 0:
                    if(Emperor_GadgetFlagMask == GA_Text) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Text, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 1:
                    if(Emperor_GadgetFlagMask == GA_Text) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Text, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 2:
                    if(Emperor_GadgetFlagMask == CHOOSER_Title) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CHOOSER_Title, Emperor_GadgetValue, TAG_DONE);
                    else
                    {
                        if(Emperor_GadgetFlagMask == CHOOSER_Labels)
                        {
                            SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CHOOSER_Labels, (ULONG) ~0, TAG_DONE);
                            if(Emperor_GadgetValue != NULL) SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CHOOSER_Labels, Emperor_GadgetValue, TAG_DONE);
                            Emperor_GadgetAttrBuffer = 1;
                        }
                        else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    }
                    break;
                case 3:
                    if(Emperor_GadgetFlagMask == CLICKTAB_Labels)
                    {
                        SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CLICKTAB_Labels, (ULONG) ~0, TAG_DONE);
                        if(Emperor_GadgetValue != NULL) SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, CLICKTAB_Labels, Emperor_GadgetValue, TAG_DONE);
                        Emperor_GadgetAttrBuffer = 1;
                    }
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 4:
                    if(Emperor_GadgetFlagMask == WHEEL_Abbrv) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, WHEEL_Abbrv, Emperor_GadgetValue, TAG_DONE);
                    else
                    {
                        if((Emperor_GadgetFlagMask == WHEEL_Red) || (Emperor_GadgetFlagMask == WHEEL_Green) || (Emperor_GadgetFlagMask == WHEEL_Blue) || (Emperor_GadgetFlagMask == WHEEL_Hue) || (Emperor_GadgetFlagMask == WHEEL_Saturation) || (Emperor_GadgetFlagMask == WHEEL_Brightness)) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue) << 24, TAG_DONE);
                        else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    }
                    break;
                case 5:
                    if(Emperor_GadgetFlagMask == DATEBROWSER_DayTitles) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, DATEBROWSER_DayTitles, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 6:
                    if(Emperor_GadgetFlagMask == GA_Text) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Text, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 7:
                    if((Emperor_GadgetFlagMask == GETFILE_TitleText) || (Emperor_GadgetFlagMask == GETFILE_File) || (Emperor_GadgetFlagMask == GETFILE_Drawer) || (Emperor_GadgetFlagMask == GETFILE_FullFile) || (Emperor_GadgetFlagMask == GETFILE_Pattern) || (Emperor_GadgetFlagMask == GETFILE_AcceptPattern) || (Emperor_GadgetFlagMask == GETFILE_RejectPattern)) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 8:
                    if(Emperor_GadgetFlagMask == GETFONT_TitleText) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GETFONT_TitleText, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 9:
                    if(Emperor_GadgetFlagMask == GETSCREENMODE_TitleText) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GETSCREENMODE_TitleText, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 10: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 11: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 13:
                    if(Emperor_GadgetFlagMask == LISTBROWSER_Labels)
                    {
                        SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, LISTBROWSER_Labels, (ULONG) ~0, TAG_DONE);
                        if(Emperor_GadgetValue != NULL) SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, LISTBROWSER_Labels, Emperor_GadgetValue, TAG_DONE);
                        Emperor_GadgetAttrBuffer = 1;
                    }
                    else
                    {
                        if(Emperor_GadgetFlagMask == LISTBROWSER_ColumnInfo)
                        {
                            SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, LISTBROWSER_ColumnInfo, (ULONG) ~0, TAG_DONE);
                            if(Emperor_GadgetValue != NULL) SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, LISTBROWSER_ColumnInfo, Emperor_GadgetValue, TAG_DONE);
                            Emperor_GadgetAttrBuffer = 1;
                        }
                        else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    }
                    break;
                case 14: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 15:
                    if(Emperor_GadgetFlagMask == RADIOBUTTON_Labels)
                    {
                        SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, RADIOBUTTON_Labels, (ULONG) ~0, TAG_DONE);
                        if(Emperor_GadgetValue != NULL) SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, RADIOBUTTON_Labels, Emperor_GadgetValue, TAG_DONE);
                        Emperor_GadgetAttrBuffer = 1;
                    }
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 16: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 17: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 18: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 19: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 20:
                    if((Emperor_GadgetFlagMask == STRINGA_TextVal) || (Emperor_GadgetFlagMask == STRINGA_Buffer) || (Emperor_GadgetFlagMask == STRINGA_UndoBuffer) || (Emperor_GadgetFlagMask == STRINGA_WorkBuffer)) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
                case 21: Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE); break;
                case 22:
                    if(Emperor_GadgetFlagMask == GA_TEXTEDITOR_Contents) Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_TEXTEDITOR_Contents, Emperor_GadgetValue, TAG_DONE);
                    else Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_GadgetFlagMask, stringtoint(Emperor_GadgetValue), TAG_DONE);
                    break;
            }
            if(Emperor_GadgetAttrBuffer) RefreshGList(Emperor_GadgetName, Emperor_Whichwindow, NULL, 1);
            break;
        }
    }
}

BOOL Emperor_GetGadgetDisabledAttr(struct Gadget *Emperor_GadgetName)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    BOOL Emperor_GadgetAttrReturn;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            GetAttr(GA_Disabled, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
            break;
        }
    }
    Emperor_GadgetAttrReturn = Emperor_GadgetAttrBuffer;
    return(Emperor_GadgetAttrReturn);
}

void Emperor_SetGadgetDisabledAttr(struct Gadget *Emperor_GadgetName, BOOL Emperor_GadgetValue)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_Disabled, Emperor_GadgetValue, TAG_DONE);
            if(Emperor_GadgetAttrBuffer) RefreshGList(Emperor_GadgetName, Emperor_Whichwindow, NULL, 1);
            break;
        }
    }
}

BOOL Emperor_GetGadgetAttrReadOnly(struct Gadget *Emperor_GadgetName)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    BOOL Emperor_GadgetAttrReturn;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            GetAttr(GA_ReadOnly, Emperor_GadgetName, (ULONG *) &Emperor_GadgetAttrBuffer);
            break;
        }
    }
    Emperor_GadgetAttrReturn = Emperor_GadgetAttrBuffer;
    return(Emperor_GadgetAttrReturn);
}

void Emperor_SetGadgetReadOnlyAttr(struct Gadget *Emperor_GadgetName, BOOL Emperor_GadgetValue)
{
    LONG Emperor_GadgetAttrBuffer, Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    Emperor_GadgetAttrBuffer = 0L;
    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            Emperor_GadgetAttrBuffer = SetGadgetAttrs(Emperor_GadgetName, Emperor_Whichwindow, NULL, GA_ReadOnly, Emperor_GadgetValue, TAG_DONE);
            if(Emperor_GadgetAttrBuffer) RefreshGList(Emperor_GadgetName, Emperor_Whichwindow, NULL, 1);
            break;
        }
    }
}

void Emperor_ActivateGadget(struct Gadget *Emperor_GadgetName)
{
    LONG Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            break;
        }
    }
    ActivateGadget(Emperor_GadgetName, Emperor_Whichwindow, NULL);
}

void Emperor_RethinkLayout(struct Gadget *Emperor_GadgetName)
{
    LONG Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            break;
        }
    }
    RethinkLayout(Emperor_GadgetName, Emperor_Whichwindow, NULL, TRUE);
}

void Emperor_RefreshGList(struct Gadget *Emperor_GadgetName, WORD Emperor_NumberRefresh)
{
    LONG Emperor_GadgetCounter;
    struct Window *Emperor_Whichwindow = NULL;

    for(Emperor_GadgetCounter = 0;Emperor_GadgetCounter < 255;Emperor_GadgetCounter++)
    {
        if(Gadget1[Emperor_GadgetCounter] == Emperor_GadgetName)
        {
            Emperor_Whichwindow = Window1;
            break;
        }
    }
    RefreshGList(Emperor_GadgetName, Emperor_Whichwindow, NULL, Emperor_NumberRefresh);
}

void Emperor_ChangeWindowPosition(struct Window *Emperor_ApplicationWindow, WORD Emperor_Left, WORD Emperor_Top)
{
    WORD Emperor_Width, Emperor_Height;

    Emperor_Width = Emperor_ApplicationWindow->Width;
    Emperor_Height = Emperor_ApplicationWindow->Height;
    ChangeWindowBox(Emperor_ApplicationWindow, Emperor_Left, Emperor_Top, Emperor_Width, Emperor_Height);
}

void Emperor_ChangeWindowSize(struct Window *Emperor_ApplicationWindow, WORD Emperor_Width, WORD Emperor_Height)
{
    WORD Emperor_Left, Emperor_Top;

    Emperor_Left = Emperor_ApplicationWindow->LeftEdge;
    Emperor_Top = Emperor_ApplicationWindow->TopEdge;
    ChangeWindowBox(Emperor_ApplicationWindow, Emperor_Left, Emperor_Top, Emperor_Width, Emperor_Height);
}

void Emperor_SetWindowBusyPointer(struct Window *Emperor_ApplicationWindow, BOOL Emperor_SetReset)
{
    if(Emperor_SetReset) SetWindowPointer(Emperor_ApplicationWindow, WA_BusyPointer, TRUE, WA_PointerDelay, TRUE, TAG_DONE);
    else SetWindowPointer(Emperor_ApplicationWindow, TAG_DONE);
}

void Emperor_SetWindowTitle(struct Window *Emperor_ApplicationWindow, STRPTR Emperor_Title)
{
    SetWindowTitles(Emperor_ApplicationWindow, (UBYTE *) Emperor_Title, ((UBYTE *) ~0));
}

void Emperor_SetScreenTitle(struct Window *Emperor_ApplicationWindow, STRPTR Emperor_Title)
{
    SetWindowTitles(Emperor_ApplicationWindow, ((UBYTE *) ~0), (UBYTE *) Emperor_Title);
}

void Emperor_AllocChooserNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes)
{
    WORD Emperor_Counter1 = 0;
    struct Node *Emperor_Node;

    if(os35)
    {
        NewList(Emperor_List);
        while(*Emperor_Labels)
        {
            Emperor_Node = AllocChooserNode(CNA_Text, *Emperor_Labels, CNA_Disabled, Emperor_Attributes[Emperor_Counter1], CNA_ReadOnly, Emperor_Attributes[Emperor_Counter1 + 1], TAG_DONE);
            AddTail(Emperor_List, Emperor_Node);
            Emperor_Labels++;
            Emperor_Counter1 += 12;
        }
    }
}

void Emperor_AllocClicktabNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes)
{
    WORD Emperor_Counter1 = 0, Emperor_Counter2 = 0;
    struct Node *Emperor_Node;

    if(os35)
    {
        NewList(Emperor_List);
        while(*Emperor_Labels)
        {
            Emperor_Node = AllocClickTabNode(TNA_Text, *Emperor_Labels, TNA_Disabled, Emperor_Attributes[Emperor_Counter1], TNA_Number, Emperor_Counter2, TAG_DONE);
            AddTail(Emperor_List, Emperor_Node);
            Emperor_Labels++;
            Emperor_Counter1 += 12;
            Emperor_Counter2++;
        }
    }
}

void Emperor_AllocListbrowserNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes)
{
    WORD Emperor_Counter1 = 0, Emperor_Counter2 = 0;
    struct Node *Emperor_Node;

    if(os35)
    {
        NewList(Emperor_List);
        while(*Emperor_Labels)
        {
            Emperor_Counter2 = 0;
            if(Emperor_Attributes[Emperor_Counter1 + 1]) Emperor_Counter2 += 1;
            if(Emperor_Attributes[Emperor_Counter1 + 2]) Emperor_Counter2 += 4;
            if(Emperor_Attributes[Emperor_Counter1 + 3]) Emperor_Counter2 += 8;
            if(Emperor_Attributes[Emperor_Counter1 + 4]) Emperor_Counter2 += 16;
            Emperor_Node = AllocListBrowserNode(1, LBNCA_Text, *Emperor_Labels, LBNCA_CopyText, TRUE, LBNA_Generation, Emperor_Attributes[Emperor_Counter1 + 10], LBNA_Column, Emperor_Attributes[Emperor_Counter1 + 11], LBNA_Flags, Emperor_Counter2, LBNA_Selected, Emperor_Attributes[Emperor_Counter1 + 5], LBNA_CheckBox, Emperor_Attributes[Emperor_Counter1 + 6], LBNA_Checked, Emperor_Attributes[Emperor_Counter1 + 7], TAG_DONE);
            AddTail(Emperor_List, Emperor_Node);
            Emperor_Labels++;
            Emperor_Counter1 += 12;
        }
    }
}

void Emperor_AllocListbrowserGadToolsNode(struct List *Emperor_List, char **Emperor_Labels)
{
    struct Node *Emperor_Node;
    struct Remember *Emperor_RememberKey;

    NewList(Emperor_List);
    while(*Emperor_Labels)
    {
        Emperor_Node = (struct Node *) AllocRemember(&Emperor_RememberKey, sizeof(struct Node), MEMF_CLEAR);
        Emperor_Node->ln_Name = *Emperor_Labels;
        AddTail(Emperor_List, Emperor_Node);
        Emperor_Labels++;
    }
}

void Emperor_AllocRadiobuttonNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes)
{
    struct Node *Emperor_Node;

    if(os35)
    {
        NewList(Emperor_List);
        while(*Emperor_Labels)
        {
            Emperor_Node = AllocRadioButtonNode(1, RBNA_Labels, *Emperor_Labels, TAG_DONE);
            AddTail(Emperor_List, Emperor_Node);
            Emperor_Labels++;
        }
    }
}

ULONG stringlength(STRPTR Emperor_StringBuffer)
{
    ULONG Emperor_Counter = 0;

    while(Emperor_StringBuffer[Emperor_Counter] != NULL) Emperor_Counter++;
    return(Emperor_Counter);
}

LONG stringtoint(STRPTR Emperor_StringBuffer)
{
    BOOL Emperor_NegativeBuffer = FALSE;
    BYTE Emperor_NumberBuffer = 0;
    LONG Emperor_ReturnBuffer = 0;
    ULONG Emperor_StringLength = 0;

    if(*Emperor_StringBuffer == '-')
    {
        Emperor_StringBuffer++;
        Emperor_NegativeBuffer = TRUE;
    }
    if(*Emperor_StringBuffer == '0') Emperor_ReturnBuffer = 0;
    else
    {
        Emperor_StringLength = stringlength(Emperor_StringBuffer);
        for(;Emperor_StringLength > 0;Emperor_StringLength--)
        {
            Emperor_NumberBuffer = 0;
            if(*Emperor_StringBuffer == '1') Emperor_NumberBuffer = 1;
            if(*Emperor_StringBuffer == '2') Emperor_NumberBuffer = 2;
            if(*Emperor_StringBuffer == '3') Emperor_NumberBuffer = 3;
            if(*Emperor_StringBuffer == '4') Emperor_NumberBuffer = 4;
            if(*Emperor_StringBuffer == '5') Emperor_NumberBuffer = 5;
            if(*Emperor_StringBuffer == '6') Emperor_NumberBuffer = 6;
            if(*Emperor_StringBuffer == '7') Emperor_NumberBuffer = 7;
            if(*Emperor_StringBuffer == '8') Emperor_NumberBuffer = 8;
            if(*Emperor_StringBuffer == '9') Emperor_NumberBuffer = 9;
            if(Emperor_StringLength == 1)  Emperor_ReturnBuffer += Emperor_NumberBuffer;
            if(Emperor_StringLength == 2)  Emperor_ReturnBuffer += 10 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 3)  Emperor_ReturnBuffer += 100 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 4)  Emperor_ReturnBuffer += 1000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 5)  Emperor_ReturnBuffer += 10000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 6)  Emperor_ReturnBuffer += 100000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 7)  Emperor_ReturnBuffer += 1000000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 8)  Emperor_ReturnBuffer += 10000000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 9)  Emperor_ReturnBuffer += 100000000 * Emperor_NumberBuffer;
            if(Emperor_StringLength == 10) Emperor_ReturnBuffer += 1000000000 * Emperor_NumberBuffer;
            Emperor_StringBuffer++;
        }
    }
    if(Emperor_NegativeBuffer) Emperor_ReturnBuffer = -Emperor_ReturnBuffer;
    return(Emperor_ReturnBuffer);
}

STRPTR inttostring(LONG Emperor_NumberBuffer1)
{
    LONG Emperor_NumberBuffer2;
    BYTE Emperor_NumberLength = 0;
    BYTE Emperor_Counter = 0;
    char *Emperor_ReturnBuffer = "abcdefghij";

    strcpy(Emperor_ReturnBuffer, "");
    Emperor_ReturnBuffer[0] = NULL;
    if(Emperor_NumberBuffer1 < 0)
    {
        strcpy(Emperor_ReturnBuffer, "-");
        Emperor_NumberBuffer1 = -Emperor_NumberBuffer1;
    }
    if(Emperor_NumberBuffer1 > 0) Emperor_NumberLength = 1;
    if(Emperor_NumberBuffer1/10 > 0) Emperor_NumberLength = 2;
    if(Emperor_NumberBuffer1/100 > 0) Emperor_NumberLength = 3;
    if(Emperor_NumberBuffer1/1000 > 0) Emperor_NumberLength = 4;
    if(Emperor_NumberBuffer1/10000 > 0) Emperor_NumberLength = 5;
    if(Emperor_NumberBuffer1/100000 > 0) Emperor_NumberLength = 6;
    if(Emperor_NumberBuffer1/1000000 > 0) Emperor_NumberLength = 7;
    if(Emperor_NumberBuffer1/10000000 > 0) Emperor_NumberLength = 8;
    if(Emperor_NumberBuffer1/100000000 > 0) Emperor_NumberLength = 9;
    if(Emperor_NumberBuffer1 == 0)  strcpy(Emperor_ReturnBuffer, "0");
    else
    {
        Emperor_Counter = Emperor_NumberLength;
        for(;Emperor_Counter > 0;Emperor_Counter--)
        {
            if(Emperor_Counter == 9) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/100000000;
            if(Emperor_Counter == 8) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/10000000;
            if(Emperor_Counter == 7) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/1000000;
            if(Emperor_Counter == 6) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/100000;
            if(Emperor_Counter == 5) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/10000;
            if(Emperor_Counter == 4) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/1000;
            if(Emperor_Counter == 3) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/100;
            if(Emperor_Counter == 2) Emperor_NumberBuffer2 = Emperor_NumberBuffer1/10;
            if(Emperor_Counter == 1) Emperor_NumberBuffer2 = Emperor_NumberBuffer1;
            if(Emperor_NumberBuffer2 == 0) strcat(Emperor_ReturnBuffer, "0");
            if(Emperor_NumberBuffer2 == 1) strcat(Emperor_ReturnBuffer, "1");
            if(Emperor_NumberBuffer2 == 2) strcat(Emperor_ReturnBuffer, "2");
            if(Emperor_NumberBuffer2 == 3) strcat(Emperor_ReturnBuffer, "3");
            if(Emperor_NumberBuffer2 == 4) strcat(Emperor_ReturnBuffer, "4");
            if(Emperor_NumberBuffer2 == 5) strcat(Emperor_ReturnBuffer, "5");
            if(Emperor_NumberBuffer2 == 6) strcat(Emperor_ReturnBuffer, "6");
            if(Emperor_NumberBuffer2 == 7) strcat(Emperor_ReturnBuffer, "7");
            if(Emperor_NumberBuffer2 == 8) strcat(Emperor_ReturnBuffer, "8");
            if(Emperor_NumberBuffer2 == 9) strcat(Emperor_ReturnBuffer, "9");
            if(Emperor_Counter == 9) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*100000000;
            if(Emperor_Counter == 8) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*10000000;
            if(Emperor_Counter == 7) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*1000000;
            if(Emperor_Counter == 6) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*100000;
            if(Emperor_Counter == 5) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*10000;
            if(Emperor_Counter == 4) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*1000;
            if(Emperor_Counter == 3) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*100;
            if(Emperor_Counter == 2) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2*10;
            if(Emperor_Counter == 1) Emperor_NumberBuffer1 -= Emperor_NumberBuffer2;
        }
    }
    return(Emperor_ReturnBuffer);
}
