ftp.nice.ch/pub/next/connectivity/news/NewsBase.3.02.s.tar.gz#/NewsBase302.source/MMEdit/IMMEditor.h

This is IMMEditor.h in view mode; [Download] [Up]

/*$Copyright:
 * Copyright (C) 1992.5.22. Recruit Co.,Ltd. 
 * Institute for Supercomputing Research
 * All rights reserved.
 * NewsBase  by ISR, Kazuto MIYAI, Gary ARAKAKI, Katsunori SUZUKI, Kok-meng Lue
 *
 * You may freely copy, distribute and reuse the code in this program under 
 * following conditions.
 * - to include this notice in the source code, if it is to be distributed 
 *   with source code.
 * - to add the file named "COPYING" within the code, which shall include 
 *   GNU GENERAL PUBLIC LICENSE(*).
 * - to display an acknowledgement in binary code as follows: "This product
 *   includes software developed by Recruit Co.,Ltd., ISR."
 * - to display a notice which shall state that the users may freely copy,
 *   distribute and reuse the code in this program under GNU GENERAL PUBLIC
 *   LICENSE(*)
 * - to indicate the way to access the copy of GNU GENERAL PUBLIC LICENSE(*)
 *
 *   (*)GNU GENERAL PUBLIC LICENSE is stored in the file named COPYING
 * 
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
$*/

#import <objc/Object.h>
#import <appkit/NXSplitView.h>
#import <appkit/ScrollView.h>
#import "INewsBaseText.h"
#import "IArticleD.h"
#import "ITextD.h"
#import "InfoD.h"
#import <appkit/Form.h>
#import <appkit/Button.h>

#define TMP_DIR "/tmp/"

@interface IMMEditor:Object
{
    NXSplitView		*oSplitView;           // contains the next 3 views
    View		*oAttributeView;       // top view in split view
    ScrollView		*oHeaderView;          // middle view in split view
    ScrollView		*oBodyView;            // bottom view in split view
    Window		*window;
    id          	headerForm;            // embedded in top view 
    INewsBaseText	*bodyText;             // embedded in botton view
    IArticleD	        *article;              // the article
    Form		*oArticleSizeField;     
    Button		*oPlainMultimediaButton;
    Button		*oSelectionButton;
    Button              *oPicture;             // button for sender picture's
    NXImage             *picture;              // sender's picture
    IArticleD	        *selectionList;
    unsigned int	selectionIndex;
    ITextD		*selectionRTFText;
    ITextD		*selectionPlainText;
    InfoD		*selectionHeader;
    int			selectionStart;
    int			selectionEnd;
    char 		selectionFileName[256];
}

// [IMMEditor displayArticle:] gives the ownership of the article to the
// IMMEditor object.

- displayArticle:(IArticleD *)theArticle;

- displayHeader;

- displayBody;

- printArticle;

- redisplayArticle;

- editNewArticle;

- makeNewArticleBody;

- makeNewArticleHeader;

- postResponseToArticle:currentArticleItem;

- postToNewsgroup:(const char *)newsgroup;

- makeNewArticleHeaderWithNewsGroup:(const char *)newsgroup
    withSubject:(const char *)subject withReferences:(const char *)references;

- registerEditWindow;

// [IMMEditor sendArticle] returns a pointer to an IOrderedListD.  The 
// list continues to be owned by the IMMEditor object.  The calling object
// should not free this list.

- (IArticleD *)sendArticle;

- changeToMultimedia:sender;

- (INewsBaseText *)text;

- setSizeAndPosition;

/* Window delegate methods */

- windowDidBecomeKey:sender;

- windowDidResignKey:sender;

// [IMMEditor windowWillClose] will free the article and the editor

- windowWillClose:sender;

- toggleFirstResponder;

- detachArticle;
  
/* outlet initialization methods */

- setOSplitView:splitView;

- setOBodyView:bodyView;

- setOHeaderView:headerView;

- (BOOL)textWillChange:sender;

- (const char *)getReferenceList;

- (const char *)getFilename:sender;

- (const char *)temporaryMultiMediaArticle:(IArticleD *)saveArticle;

- getSelection;

- setObjectInSelection:sender;

- getObjectInSelection;

- (INewsBaseText *)view;

@end






These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.