main (int argc, char *argv[]) { int rc = 10, x; Object *App, *o, *win, *vg, *tcp[ntcp]; App = ApplicationObject, MUIA_Application_Title , "NTCPListTest", MUIA_Application_Version , "$VER: NTCPListTest 01.1 (09.01.96)", MUIA_Application_Copyright , "©1997 by Steve Koren", MUIA_Application_Author , "Steve Koren", MUIA_Application_Description, "Test of NTCPList class", MUIA_Application_Base , "TCPLISTTEST", SubWindow, win = WindowObject, MUIA_Window_Title, "Show the NTCPList class", MUIA_Window_ID , MAKE_ID('T','s','i','v'), WindowContents, vg = VGroup, End, End, End; if (!App) goto Done; if (!(o = MUI_NewObject(SWC_NTCPList, TAG_DONE))) goto Done; DoMethod(vg, OM_ADDMEMBER, o); for (x=0; x<ntcp; x++) { UBYTE Name[64]; sprintf(Name, "Connect: %ld", x+1); tcp[x] = MUI_NewObject(SWC_NTCP, SWA_NTCP_Host, CHOST, SWA_NTCP_Port, CPORT, SWA_NTCP_Timeout, 10, SWA_NTCP_Title, Name, TAG_DONE); if (!tcp[x]) goto Done; DoMethod(o, MUIM_List_InsertSingle, tcp[x], MUIV_List_Insert_Bottom); } DoMethod(tcp[1], SWM_NTCP_Connect); DoMethod(tcp[2], SWM_NTCP_Connect); DoMethod(tcp[1], SWM_NTCP_SendStr, "HELP\n"); SW_NOTIFYQUIT(win); SWEventLoop(App, win, NULL, o, TRUE); rc = 0; Done: if (App) MUI_DisposeObject(App); exit (rc); }
Object *CreateGUI(struct IClass *cl, Object *obj, struct ObjStore *os, struct DnetcLibrary *LibBase) { UBYTE about[512]; ULONG array[] = { (ULONG) LibBase->Version, LibBase->Library.lib_Version, LibBase->Library.lib_Revision }; //#define SysBase LibBase->MySysBase RawDoFmt( "\33cdistributed.net client - a product of distributed.net\n" "%s\n" "Copyright 1997-2011 distributed.net\n" "\n" "\n" "MorphOS client maintained by\n" "Harry Sintonen\n" "<*****@*****.**>\n" "\n" "\n" "MUI GUI module (v%ld.%ld) maintained by\n" "Ilkka Lehtoranta\n" "<*****@*****.**>", array, NULL, about); //#undef SysBase return (Object*)DoSuperNew(cl, obj, MUIA_Application_DiskObject, (IPTR)LibBase->dobj, MUIA_Application_Commands, (IPTR)commands, MUIA_Application_Version, (IPTR)&VerString[1], MUIA_Application_Copyright, (IPTR)"distributed.net", MUIA_Application_Author, (IPTR)"Ilkka Lehtoranta", MUIA_Application_Base, (IPTR)"DNETC", MUIA_Application_UsedClasses, (IPTR)ClassList, MUIA_Application_Title, (IPTR)"dnetc", MUIA_Application_Description, (IPTR)"GUI for distributed.net client", MUIA_Application_Window, (IPTR)(os->wnd = MUI_NewObject(MUIC_Window, MUIA_Window_Title, (IPTR)"distributed.net client", MUIA_Window_ID, MAKE_ID('M','A','I','N'), MUIA_Window_Width, MUIV_Window_Width_Visible(55), MUIA_Window_Height, MUIV_Window_Height_Visible(45), MUIA_Window_Menustrip, (IPTR)MUI_MakeObject(MUIO_MenustripNM, (IPTR)&Menus, 0), MUIA_Window_RootObject, (IPTR)MUI_NewObject(MUIC_Group, MUIA_Group_Child, (IPTR)(os->lst = NewObject(LibBase->ListMCC->mcc_Class, NULL, MUIA_Background, MUII_ReadListBack, MUIA_Frame, MUIV_Frame_ReadList, MUIA_CycleChain, TRUE, TAG_END)), TAG_END), TAG_END)), MUIA_Application_Window, (IPTR)(os->req = MUI_NewObject(MUIC_Aboutbox, MUIA_Aboutbox_Credits, (IPTR)about, TAG_END)), TAG_END); }
static ULONG CreateListCol(Object *o, SW_IDATA *idata) { ULONG x; static STRPTR ColNames[16]; for (x=0; ColSpecs[x]; x++) ColNames[x] = GetS(SWS_L_Default + x) + sizeof(MUIX_U MUIX_B) - 1; ColNames[x] = NULL; if (!(idata->SWA_NServerList_ListCol = MUI_NewObject(SWC_ListCol, SWA_ListCol_ColSpecs, ColSpecs, SWA_ListCol_ColNames, ColNames, SWA_ListCol_Hook, &idata->DspHook, SWA_ListCol_List, o, TAG_DONE))) return FAILURE; DoMethod(idata->SWA_NServerList_ListCol, SWM_ListCol_HideCols, 8, 9, 10, 11, -1); return SUCCESS; }
main (int argc, char *argv[]) { int rc = 10; Object *App, *TCPList, *Srv = NULL, *win, *vg; App = ApplicationObject, MUIA_Application_Title , "NTCPListTest", MUIA_Application_Version , "$VER: NTCPListTest 01.1 (09.01.96)", MUIA_Application_Copyright , "©1997 by Steve Koren", MUIA_Application_Author , "Steve Koren", MUIA_Application_Description, "Test of NTCPList class", MUIA_Application_Base , "TCPLISTTEST", SubWindow, win = WindowObject, MUIA_Window_Title, "Show the NTCPList class", MUIA_Window_ID , MAKE_ID('T','s','i','v'), WindowContents, vg = VGroup, End, End, End; if (!App) goto Done; if (!(TCPList = MUI_NewObject(SWC_NTCPList, TAG_DONE))) goto Done; if (!(Srv = MUI_NewObject(SWC_NServer, SWA_NServer_Host, "news", SWA_NServer_TCPList, TCPList, TAG_DONE))) goto Done; DoMethod(vg, OM_ADDMEMBER, TCPList); DoMethod(Srv, SWM_NServer_SendCmd, SWT_NServer_Cmd, "HELP\n", TAG_DONE); SW_NOTIFYQUIT(win); SWEventLoop(App, win, NULL, TCPList, TRUE); rc = 0; Done: if (App) MUI_DisposeObject(App); if (Srv) MUI_DisposeObject(Srv); exit (rc); }
static Object *NewGlobSel(Object *o, SW_IDATA *idata, ULONG Use) { return MUI_NewObject(SWC_NSFList, SWA_NSFList_ShowGroups, TRUE, SWA_NSFList_Use, Use, AppBaseTopObj(o), TAG_DONE); }
static Object *MkInsObj(SW_IDATA *idata) { Object *no = MUI_NewObject(SWC_NPost, AppBaseDefTop(idata), SWA_NPost_PostDir, idata->SWA_NPostList_PostDir, SWA_NPost_NewPost, TRUE, TAG_DONE); return no; }
static ULONG CreateGlobFlt(Object *o, SW_IDATA *idata) { if (!idata->SWA_NNews_GlobSel) idata->SWA_NNews_GlobSel = NewGlobSel(o, idata, SWV_NSFList_Use_Select); if (!idata->SWA_NNews_GlobHL) idata->SWA_NNews_GlobHL = NewGlobSel(o, idata, SWV_NSFList_Use_Hlight); if (!idata->SWA_NNews_GlobKill) idata->SWA_NNews_GlobKill = NewGlobSel(o, idata, SWV_NSFList_Use_Kill); if (!idata->SWA_NNews_GlobDsp) idata->SWA_NNews_GlobDsp = MUI_NewObject(SWC_NSFList, SWA_NSFList_ShowGroups, TRUE, SWA_NSFList_FltType, "#?NDFilter#?", AppBaseTopObj(o), TAG_DONE); if (!idata->SWA_NNews_GlobAct) idata->SWA_NNews_GlobAct = MUI_NewObject(SWC_NSFList, SWA_NSFList_ShowGroups, TRUE, SWA_NSFList_FltType, "#?NAFilter#?", AppBaseTopObj(o), TAG_DONE); if (!idata->SWA_NNews_GlobSel || !idata->SWA_NNews_GlobHL || !idata->SWA_NNews_GlobKill || !idata->SWA_NNews_GlobDsp || !idata->SWA_NNews_GlobAct) { MUI_DisposeObject(idata->SWA_NNews_GlobSel); MUI_DisposeObject(idata->SWA_NNews_GlobHL); MUI_DisposeObject(idata->SWA_NNews_GlobKill); MUI_DisposeObject(idata->SWA_NNews_GlobDsp); MUI_DisposeObject(idata->SWA_NNews_GlobAct); return FAILURE; } return SUCCESS; }
Object *MkNewGrp(Object *o, SW_IDATA *idata, STRPTR Name) { if (SWGetUL(idata->SWA_NList_L, MUIA_List_Entries) < SWV_NGroupList_MaxUnreg || NN_RegMsg(idata, GetS(SWS_L_UnregMsg), _win(o)) == SUCCESS) return MUI_NewObject(SWC_NGroup, AppBaseDefTop(idata), SWA_NGroup_Name, SW_STRDEF(Name, ""), TAG_DONE); return NULL; }
static Object *MkInsObj(SW_IDATA *idata, STRPTR Name) { Object *no = MUI_NewObject(SWC_NServer, AppBaseDefTop(idata), SWA_NServer_Host, Name, TAG_DONE); if (SWGetUL(idata->SWA_NList_L, MUIA_List_Entries) == 0) set(no, SWA_NServer_Default, TRUE); return no; }
Object* CreateMenu(void) { Object *o; o = MUI_NewObject(MUIC_Menustrip, MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menu, MUIA_Menu_Title, (ULONG)"Project", MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menuitem, MUIA_Menuitem_Title, (ULONG)"Clear", MUIA_Menuitem_Shortcut, (ULONG)"C", MUIA_UserData, MENU_CLEAR, TAG_END), /* MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menuitem, MUIA_Menuitem_Title, (ULONG)"Save as...", MUIA_Menuitem_Shortcut, (ULONG)"S", MUIA_UserData, MENU_SAVEAS, TAG_END),*/ MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menuitem, MUIA_Menuitem_Title, (ULONG)"Settings...", MUIA_UserData, MENU_SETTINGS, TAG_END), MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menuitem, MUIA_Menuitem_Title, MENUBAR, TAG_END), MUIA_Family_Child, (ULONG)MUI_NewObject(MUIC_Menuitem, MUIA_Menuitem_Title, (ULONG)"Quit", MUIA_Menuitem_Shortcut, (ULONG)"Q", MUIA_UserData, MENU_QUIT, TAG_END), TAG_END), TAG_END); return o; }
BOOL BuildGui(void) { Object *lv; App = MUI_NewObject(MUIC_Application, MUIA_Application_Author, (ULONG)"Grzegorz \"Krashan\" Kraszewski, Pavel \"Sonic\" Fedin, Nick \"Kalamatee\" Andrews", MUIA_Application_Base, (ULONG)"SysLog", MUIA_Application_Copyright, (ULONG)"(c) 2005 by Grzegorz Kraszewski, Pavel Fedin, Nick Andrews", MUIA_Application_Description, (ULONG)"AROSTCP syslog viewer", MUIA_Application_SingleTask, TRUE, MUIA_Application_Title, (ULONG)"SysLog", MUIA_Application_Version, (ULONG)"$VER: SysLog 1.2 (15.11.2005)\n", MUIA_Application_Menustrip, (ULONG)CreateMenu(), MUIA_Application_Window, (ULONG)(Win = MUI_NewObject(MUIC_Window, MUIA_Window_Title, (ULONG)"AROSTCP syslog viewer", MUIA_Window_ScreenTitle, (ULONG)"SysLog 1.2 (c) 2005-2007 Grzegorz Kraszewski, Pavel Fedin, Nick Andrews", MUIA_Window_ID, 0x4D444C47, MUIA_Window_RootObject, (ULONG)MUI_NewObject(MUIC_Group, MUIA_Group_Child, (ULONG)(lv = MUI_NewObject(MUIC_Listview, MUIA_Listview_List, (ULONG)(List = NewObject(ColorList->mcc_Class, NULL, MUIA_Frame, MUIV_Frame_ReadList, MUIA_List_Format, (ULONG)"BAR,BAR,BAR,", MUIA_List_Title, TRUE, TAG_END)), MUIA_Listview_Input, FALSE, TAG_END)), MUIA_Group_Child, MUI_NewObject(MUIC_Group, MUIA_Group_Horiz, TRUE, MUIA_Group_Child, MUI_NewObject(MUIC_Text, MUIA_Text_SetMax, TRUE, MUIA_Text_Contents, (ULONG)"Debug level", TAG_END), MUIA_Group_Child, DbgLevel = MUI_NewObject(MUIC_Cycle, MUIA_Cycle_Entries, (ULONG)DebugLevels, MUIA_Weight, 1, TAG_END), MUIA_Group_Child, MUI_NewObject(MUIC_Rectangle, TAG_END), TAG_END), TAG_END), MUIA_Window_DefaultObject, (ULONG)lv, TAG_END)), MUIA_Application_Window, SWin = BuildSettingsWindow(), TAG_END); if (App) return TRUE; else return FALSE; }
APTR ImageButton(CONST_STRPTR text, CONST_STRPTR image) { APTR obj, img; img = MUI_NewObject("Dtpic.mui", MUIA_Dtpic_Name, image, TAG_DONE); if (text) { obj = VGroup, Child, HCenter(img), Child, TextObject, text, MUIA_Text_PreParse, "\033c", End, End; } else { obj = img; } return obj; }
STATIC APTR MakeKeyAdjust(LONG label, ULONG id) { APTR obj = NULL; #if !defined(__AROS__) obj = MUI_NewObject(MUIC_Keyadjust, MUIA_Keyadjust_AllowMultipleKeys, FALSE, MUIA_CycleChain, 1, TAG_DONE); #endif if (obj) { FORCHILD(obj, MUIA_Group_ChildList) { set(child, MUIA_ObjectID, id); // hack... break; } NEXTCHILD }
main (int argc, char *argv[]) { int rc = 10; Object *App, *win, *b, *ls; App = ApplicationObject, MUIA_Application_Title , "ListSearchTest", MUIA_Application_Version , "$VER: ListSearchTest 01.1 (09.01.96)", MUIA_Application_Copyright , "©1997 by Steve Koren", MUIA_Application_Author , "Steve Koren", MUIA_Application_Description, "Test of ListSearch class", SubWindow, win = WindowObject, MUIA_Window_Title, "Show the Listsearch class", MUIA_Window_ID , MAKE_ID('T','s','l','s'), WindowContents, VGroup, Child, b = SimpleButton("SearchWin"), End, End, End; if (!App) goto Done; ls = MUI_NewObject(SWC_ListSearch, TAG_DONE); if (!ls) goto Done; DoMethod(b, MUIM_Notify, MUIA_Pressed, FALSE, ls, 2, SWM_ListSearch_OpenWin, App); SW_NOTIFYQUIT(win); SWEventLoop(App, win, NULL, TRUE); rc = 0; Done: MUI_DisposeObject(ls); MUI_DisposeObject(App); exit (rc); }
static ULONG CreateListCol(Object *o, SW_IDATA *idata) { ULONG x; static STRPTR ColNames[8]; for (x=0; ColSpecs[x]; x++) ColNames[x] = GetS(SWS_T_Lines + x) + sizeof(MUIX_U MUIX_B) - 1; ColNames[x] = NULL; if (!(idata->SWA_NPostList_ListCol = MUI_NewObject(SWC_ListCol, SWA_ListCol_ColSpecs, ColSpecs, SWA_ListCol_ColNames, ColNames, SWA_ListCol_Hook, &idata->DspHook, SWA_ListCol_List, o, TAG_DONE))) return FAILURE; return SUCCESS; }
Object *BuildSettingsWindow(void) { Object *win; win = MUI_NewObject(MUIC_Window, MUIA_Window_Title, (ULONG)"SysLog settings", MUIA_Window_ID, 0x4D444C50, MUIA_Window_RootObject, (ULONG)MUI_NewObject(MUIC_Group, MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Group, MUIA_Group_Columns, 2, MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"\33rColor of error messages", MUIA_Weight, 0, TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Poppen, MUIA_FixWidthTxt, (ULONG)"6EDA", MUIA_InnerSpacing(1), MUIA_ObjectID, 1, MUIA_UserData, PREFS_POPPEN_ERRORS, MUIA_Window_Title, (ULONG)"Error messages", TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"\33rColor of important information", MUIA_Weight, 0, TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Poppen, MUIA_FixWidthTxt, (ULONG)"6EDA", MUIA_InnerSpacing(1), MUIA_ObjectID, 2, MUIA_UserData, PREFS_POPPEN_IMPORTANT, MUIA_Window_Title, (ULONG)"Important information", TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"\33rColor of debug information", MUIA_Weight, 0, TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Poppen, MUIA_FixWidthTxt, (ULONG)"6EDA", MUIA_InnerSpacing(1), MUIA_ObjectID, 3, MUIA_UserData, PREFS_POPPEN_OTHERS, MUIA_Window_Title, (ULONG)"Debug information", TAG_END), TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Group, MUIA_Group_Horiz, TRUE, MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"Save", MUIA_Text_PreParse, (ULONG)"\33c", MUIA_Text_HiChar, 's', MUIA_ControlChar, 's', MUIA_InputMode, MUIV_InputMode_RelVerify, MUIA_Background, MUII_ButtonBack, MUIA_Frame, MUIV_Frame_Button, MUIA_Font, MUIV_Font_Button, MUIA_UserData, PREFS_BUTTON_SAVE, TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"Use", MUIA_Text_PreParse, (ULONG)"\33c", MUIA_Text_HiChar, 'u', MUIA_ControlChar, 'u', MUIA_InputMode, MUIV_InputMode_RelVerify, MUIA_Background, MUII_ButtonBack, MUIA_Frame, MUIV_Frame_Button, MUIA_Font, MUIV_Font_Button, MUIA_UserData, PREFS_BUTTON_USE, TAG_END), MUIA_Group_Child, (ULONG)MUI_NewObject(MUIC_Text, MUIA_Text_Contents, (ULONG)"Cancel", MUIA_Text_PreParse, (ULONG)"\33c", MUIA_Text_HiChar, 'c', MUIA_ControlChar, 'c', MUIA_InputMode, MUIV_InputMode_RelVerify, MUIA_Background, MUII_ButtonBack, MUIA_Frame, MUIV_Frame_Button, MUIA_Font, MUIV_Font_Button, MUIA_UserData, PREFS_BUTTON_CANCEL, TAG_END), TAG_END), TAG_END), TAG_END); return win; }
IPTR Popimage__MUIM_Popimage_OpenWindow(struct IClass *cl, Object *obj, Msg msg) { struct Popimage_DATA *data = INST_DATA(cl, obj); if (!data->wnd) { Object *ok_button, *cancel_button; char *img_spec; ULONG x = 0, y = 0; get(_win(obj), MUIA_Window_LeftEdge, &x); get(_win(obj), MUIA_Window_TopEdge, &y); get(obj,MUIA_Imagedisplay_Spec, &img_spec); data->wnd = (Object *)WindowObject, MUIA_Window_Title, (IPTR) data->wintitle, MUIA_Window_Activate, TRUE, MUIA_Window_IsSubWindow, TRUE, MUIA_Window_LeftEdge, _left(obj) + x, MUIA_Window_TopEdge, _bottom(obj) + y + 1, WindowContents, (IPTR) VGroup, Child, (IPTR) (data->imageadjust = MUI_NewObject ( MUIC_Imageadjust, MUIA_CycleChain, 1, MUIA_Imageadjust_Spec, (IPTR) img_spec, MUIA_Imageadjust_Type, data->adjust_type, MUIA_Imageadjust_Originator, (IPTR) obj, TAG_DONE )), Child, (IPTR) HGroup, MUIA_Group_SameWidth, TRUE, Child, (IPTR) (ok_button = MUI_MakeObject ( MUIO_Button, (IPTR) "_Ok" )), Child, (IPTR) HVSpace, Child, (IPTR) HVSpace, Child, (IPTR) (cancel_button = MUI_MakeObject ( MUIO_Button, (IPTR) "_Cancel" )), End, End, End; if (data->wnd) { set(ok_button, MUIA_CycleChain, 1); set(cancel_button, MUIA_CycleChain, 1); DoMethod(_app(obj),OM_ADDMEMBER,(IPTR)data->wnd); DoMethod ( ok_button, MUIM_Notify, MUIA_Pressed, FALSE, (IPTR) _app(obj), 5, MUIM_Application_PushMethod, (IPTR) obj, 2, MUIM_Popimage_CloseWindow, TRUE ); DoMethod ( cancel_button, MUIM_Notify, MUIA_Pressed, FALSE, (IPTR) _app(obj), 5, MUIM_Application_PushMethod, (IPTR) obj, 2, MUIM_Popimage_CloseWindow, FALSE ); DoMethod ( data->wnd, MUIM_Notify, MUIA_Window_CloseRequest, TRUE, (IPTR) _app(obj), 5, MUIM_Application_PushMethod, (IPTR) obj, 2, MUIM_Popimage_CloseWindow, FALSE ); } } if (data->wnd) { ULONG opened; set(data->wnd, MUIA_Window_Open,TRUE); get(data->wnd, MUIA_Window_Open, &opened); if (!opened) { DoMethod(obj, MUIM_Popimage_CloseWindow, FALSE); } } return 1; }
static ULONG MakeObjs(Object *o, SW_IDATA *idata) { if (!(idata->SWA_NNews_TCPList = MUI_NewObject(SWC_NTCPList, AppBaseTopObj(o), TAG_DONE)) || !(idata->SWA_NNews_ArtMgr = MUI_NewObject(SWC_NArticleMgr, AppBaseTopObj(o), TAG_DONE)) || !(idata->SWA_NNews_ArtTpl = MUI_NewObject(SWC_NArticle, SWA_NArticle_MemPool, idata->SWA_NNews_MemPool, TAG_DONE)) || !(idata->SWA_NNews_ServList = MUI_NewObject(SWC_NServerList, AppBaseTopObj(o), TAG_DONE)) || !(idata->SWA_NNews_PostList = MUI_NewObject(SWC_NPostList, AppBaseTopObj(o), TAG_DONE)) || !(idata->SWA_NNews_SvPostList = MUI_NewObject(SWC_NPostList, AppBaseTopObj(o), SWA_NPostList_Saved, TRUE, TAG_DONE)) || !(idata->SWA_NNews_MMList = MUI_NewObject(SWC_FileTypes, TAG_DONE)) || !(idata->SWA_NNews_FAList = MUI_NewObject(SWC_FileActs, TAG_DONE)) || !(idata->SWA_NNews_GroupList = MUI_NewObject(SWC_NGroupList, AppBaseTopObj(o), TAG_DONE))) { return FAILURE; } idata->Obj = o; idata->Win[SWV_GrpListWin].Contents = &idata->SWA_NNews_GroupList; idata->Win[SWV_SrvListWin].Contents = &idata->SWA_NNews_ServList; idata->Win[SWV_TcpListWin].Contents = &idata->SWA_NNews_TCPList; idata->Win[SWV_PstListWin].Contents = &idata->PLGrp; idata->Win[SWV_MMListWin].Contents = &idata->MMGrp; idata->Win[SWV_CfgListWin].Contents = &idata->Config; idata->Win[SWV_NNewsWin].Contents = &idata->Obj; idata->Win[SWV_GrpListWin].Title = GetS(SWS_T_Groups); idata->Win[SWV_SrvListWin].Title = GetS(SWS_T_Servers); idata->Win[SWV_TcpListWin].Title = GetS(SWS_T_TCP); idata->Win[SWV_PstListWin].Title = GetS(SWS_T_Post); idata->Win[SWV_MMListWin].Title = GetS(SWS_T_MM); idata->Win[SWV_CfgListWin].Title = GetS(SWS_T_Cfg); idata->Win[SWV_NNewsWin].Title = GetS(SWS_T_NNews); idata->Win[SWV_GrpListWin].ID = MAKE_ID('G','r','p','l'); idata->Win[SWV_SrvListWin].ID = MAKE_ID('S','r','v','l'); idata->Win[SWV_TcpListWin].ID = MAKE_ID('T','c','p','l'); idata->Win[SWV_PstListWin].ID = MAKE_ID('P','s','t','l'); idata->Win[SWV_MMListWin].ID = MAKE_ID('M','m','T','y'); idata->Win[SWV_CfgListWin].ID = MAKE_ID('C','o','n','f'); idata->Win[SWV_NNewsWin].ID = MAKE_ID('B','l','r','g'); idata->Win[SWV_GrpListWin].LastVar = SWA_NNews_GrpListLast; idata->Win[SWV_SrvListWin].LastVar = SWA_NNews_SrvListLast; idata->Win[SWV_TcpListWin].LastVar = SWA_NNews_TCPListLast; idata->Win[SWV_PstListWin].LastVar = SWA_NNews_PstListLast; idata->Win[SWV_MMListWin].LastVar = SWA_NNews_MMListLast; idata->Win[SWV_CfgListWin].LastVar = SWA_NNews_CfgWinLast; idata->Win[SWV_NNewsWin].LastVar = NULL; idata->Win[SWV_GrpListWin].OpenVar = SWA_NNews_GrpListOpen; idata->Win[SWV_SrvListWin].OpenVar = SWA_NNews_SrvListOpen; idata->Win[SWV_TcpListWin].OpenVar = SWA_NNews_TCPListOpen; idata->Win[SWV_PstListWin].OpenVar = SWA_NNews_PstListOpen; idata->Win[SWV_MMListWin].OpenVar = SWA_NNews_MMListOpen; idata->Win[SWV_CfgListWin].OpenVar = SWA_NNews_CfgWinOpen; idata->Win[SWV_NNewsWin].OpenVar = NULL; return SUCCESS; }
static ULONG CreateObj(Object *o, SW_IDATA *idata) { ULONG x, rc = FAILURE; if (!idata->SWA_AppBase_TopObj) idata->SWA_AppBase_TopObj = o; idata->ArtLst = MUI_NewObject(SWC_NArticleList, SWA_NArticleList_NoUI, TRUE, TAG_DONE); if (!idata->ArtLst) goto Done; idata->DTImg = DTImgObject, End; if (!idata->DTImg) goto Done; if (!(idata->SWA_NNews_DTImages = (DTImgCache*)DoMethod(idata->DTImg, SWM_DTImg_MakeImgCache))) goto Done; if (!(idata->SWA_NNews_ArtListCol = MUI_NewObject(SWC_ListCol, SWA_ListCol_ColSpecs, SWGetUL(idata->ArtLst, SWA_NArticleList_ColSpecs), SWA_ListCol_ColNames, SWGetUL(idata->ArtLst, SWA_NArticleList_ColNames), SWA_ListCol_FixWidth, FALSE, TAG_DONE))) goto Done; SetColSpecs(idata); DoMethod(idata->SWA_NNews_ArtListCol, SWM_ListCol_HideCols, 8, 9, -1); if (!(idata->SWA_NNews_VarList = MUI_NewObject(SWC_VarList, AppBaseDefTop(idata), TAG_DONE))) goto Done; if (!(idata->SWA_NNews_HdrList = MUI_NewObject(SWC_NHdrList, AppBaseDefTop(idata), TAG_DONE))) goto Done; GetUserJunk(o, idata); SetAttrs(o, SWA_AppBase_ExitMode, SWV_AppBase_EM_Save, TAG_DONE); if (!(idata->SWA_NNews_MemPool = SWPoolCreate(MEMF_ANY|MEMF_CLEAR, 1024*80, 512, NULL))) goto Done; for (x=0; x<(SWS_L_CfgLast - SWS_L_CfgTab0 + 1); x++) idata->CfgTabs[x] = GetS(SWS_L_CfgTab0 + x), idata->CfgTabs[x+1] = NULL; for (x=0; x<(SWS_L_FltLast - SWS_L_FltTab0 + 1); x++) idata->FltTabs[x] = GetS(SWS_L_FltTab0 + x), idata->FltTabs[x+1] = NULL; idata->MMTabs[0] = GetS(SWS_L_FTypes); idata->MMTabs[1] = GetS(SWS_L_FActs); idata->MMTabs[2] = NULL; idata->PLTabs[0] = GetS(SWS_L_PToSend); idata->PLTabs[1] = GetS(SWS_L_PSent); idata->PLTabs[2] = NULL; if (CreateGlobFlt(o, idata) != SUCCESS) goto Done; if (MakeObjs(o, idata) != SUCCESS) goto Done; SetAttrs(o, GroupFrame, MUIA_Group_Horiz, TRUE, MUIA_Background, MUII_GroupBack, TAG_DONE); SetAttrs(o, SWA_AppBase_Cost1, 30, SWA_AppBase_Cost2, 35, SWA_AppBase_AppName, APPNAME, SWA_AppBase_UnregSave, FALSE, TAG_DONE); DoMethod(SWGetObj(o, SWA_AppBase_App), MUIM_Notify, MUIA_Application_DoubleStart, TRUE, o, 5, MUIM_Application_PushMethod, o, 2, MUIV_Application_ReturnID_Quit, MUIV_Application_ReturnID_Quit); rc = SUCCESS; Done: return rc; }