OpendTect  6.6
uitextfile.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: A.H. Lammertink
8  Date: 09/02/2001
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uitoolsmod.h"
15 #include "uidialog.h"
16 #include "file.h"
17 #include "uistring.h"
18 class uiTextEdit;
19 class uiTextBrowser;
20 class uiTable;
21 
22 
23 mExpClass(uiTools) uiTextFile : public CallBacker
25 public:
26 
28 
29  uiTextFile( uiParent* p, const char* fnm,
30  const Setup& s=Setup() )
31  : setup_(s)
32  , filename_(fnm)
33  , fileNmChg(this) { init(p); }
34 
35  const char* fileName() const { return filename_; }
36  bool isModified () const { return ismodified_; }
37  int maxLines() const { return setup_.maxnrlines_; }
38  virtual bool isEditable() const { return setup_.editable_; }
39  virtual bool isTable() const { return setup_.style_ ==
40  File::Table; }
41 
42  bool open(const char*);
43  bool reLoad();
44  bool save();
45  bool saveAs(const char*);
46 
47  int nrLines() const;
48  void toLine(int);
49 
50  const char* text() const;
51 
52  uiTextEdit* textEdit() { return txted_; }
53  uiTextBrowser* textBrowser() { return txtbr_; }
54  uiTable* tableEditor() { return tbl_; }
56 
58 
59 protected:
60 
63  mutable bool ismodified_;
64 
68 
69  void init(uiParent*);
70  void setFileName(const char*);
71 
73 
74 };
75 
76 
77 mExpClass(uiTools) uiTextFileDlg : public uiDialog
79 public:
80 
81  mExpClass(uiTools) Setup : public uiDialog::Setup
82  {
83  public:
84  Setup( const uiString& winttl = uiString::emptyString() )
85  : uiDialog::Setup(winttl.isSet() ? winttl : tr("File viewer"),
87  , scroll2bottom_(false)
88  , allowopen_(false)
89  , allowsave_(false)
90  {
91  oktext(uiStrings::sClose())
92  .canceltext( uiStrings::sReload() )
93  .separator(false).modal(false).menubar(true);
94  }
95 
96  mDefSetupMemb(bool, scroll2bottom)
97  mDefSetupMemb(bool, allowopen)
98  mDefSetupMemb(bool, allowsave)
99 
100  };
101 
102  uiTextFileDlg(uiParent* p,const char* fnm,
103  bool rdonly=false,bool tbl=false);
106  const Setup& s, const char* fnm )
107  : uiDialog(p,s) { init(s,ts,fnm); }
108 
109  uiTextFile* editor() { return editor_; }
110  void setFileName(const char*);
111  const char* fileName() const { return editor_->fileName(); }
112 
113 protected:
114 
117 
118  void open(CallBacker*);
119  void save(CallBacker*);
125 
127  void init(const Setup&,const uiTextFile::Setup&,const char*);
128  bool okToExit();
129  int doMsg(const char*,bool iserr=true);
130 };
131 
132 
uiTextFile::txtbr_
uiTextBrowser * txtbr_
Definition: uitextfile.h:66
Strat::init
void init()
uiTextFile
Definition: uitextfile.h:24
uiTextFileDlg::Setup::Setup
Setup(const uiString &winttl=uiString::emptyString())
Definition: uitextfile.h:84
uiTextFile::isEditable
virtual bool isEditable() const
Definition: uitextfile.h:38
uiTextFile::toLine
void toLine(int)
uistring.h
uiTextFile::valChg
void valChg(CallBacker *)
uiTable::setup_
Setup setup_
Definition: uitable.h:352
uiTextFile::filename_
BufferString filename_
Definition: uitextfile.h:62
uiTextFileDlg::rejectOK
bool rejectOK(CallBacker *)
confirm reject
uiTextFile::Setup
File::ViewPars Setup
Definition: uitextfile.h:27
uiTextFile::init
void init(uiParent *)
uiTextFile::fileNmChg
Notifier< uiTextFile > fileNmChg
Definition: uitextfile.h:57
uiTextFileDlg::init
void init(const Setup &, const uiTextFile::Setup &, const char *)
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiTextFileDlg::acceptOK
bool acceptOK(CallBacker *)
confirm accept
uiStrings::sClose
static uiString sClose()
Definition: uistrings.h:297
uiTextFile::textEdit
uiTextEdit * textEdit()
Definition: uitextfile.h:52
uiTextEdit
Definition: uitextedit.h:75
uiTextFile::tableEditor
uiTable * tableEditor()
Definition: uitextfile.h:54
mDefSetupMemb
#define mDefSetupMemb(typ, memb)
Definition: commondefs.h:154
uiTextFile::txted_
uiTextEdit * txted_
Definition: uitextfile.h:65
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
sKey::Setup
FixedString Setup()
Definition: keystrs.h:139
uiTextFileDlg::mODTextTranslationClass
mODTextTranslationClass(uiTextFileDlg)
uiTextFile::setup_
Setup setup_
Definition: uitextfile.h:61
File::Table
@ Table
Definition: file.h:122
uiTextFile::open
bool open(const char *)
uiTextFileDlg::Setup
Definition: uitextfile.h:82
uiTextFile::uiObj
uiObject * uiObj()
uiTextFileDlg::setFileName
void setFileName(const char *)
mNoDlgTitle
#define mNoDlgTitle
Stand-alone dialog window with optional 'OK', 'Cancel' and 'Save defaults' button.
Definition: uidialog.h:36
uiStrings::sReload
static uiString sReload()
Definition: uistrings.h:524
uiTextFile::isModified
bool isModified() const
Definition: uitextfile.h:36
uiTextFile::isTable
virtual bool isTable() const
Definition: uitextfile.h:39
uiTextFile::nrLines
int nrLines() const
uiTextFile::textBrowser
uiTextBrowser * textBrowser()
Definition: uitextfile.h:53
uiDialog::Setup
description of properties of dialog.
Definition: uidialog.h:50
uiTextFile::fileName
const char * fileName() const
Definition: uitextfile.h:35
uiTextFileDlg::editor_
uiTextFile * editor_
Definition: uitextfile.h:115
uiTextFile::tbl_
uiTable * tbl_
Definition: uitextfile.h:67
Notifier< uiTextFile >
uiTextFileDlg::save
void save(CallBacker *)
uiTextFile::reLoad
bool reLoad()
uiTextFile::save
bool save()
uiTextBrowser
Definition: uitextedit.h:103
uidialog.h
uiTextFileDlg
Definition: uitextfile.h:78
uiTextFile::uiTextFile
uiTextFile(uiParent *p, const char *fnm, const Setup &s=Setup())
Definition: uitextfile.h:29
uiTextFileDlg::saveAs
void saveAs(CallBacker *)
uiTextFileDlg::captionisfilename_
bool captionisfilename_
Definition: uitextfile.h:116
uiTextFileDlg::dismiss
void dismiss(CallBacker *)
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
uiTextFile::text
const char * text() const
uiTextFileDlg::editor
uiTextFile * editor()
Definition: uitextfile.h:109
uiObject
The base class for most UI elements.
Definition: uiobj.h:38
uiTable
Definition: uitable.h:31
uiTextFileDlg::open
void open(CallBacker *)
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
uiString::emptyString
static const uiString & emptyString()
Definition: uistring.h:300
uiTextFile::saveAs
bool saveAs(const char *)
uiTextFileDlg::uiTextFileDlg
uiTextFileDlg(uiParent *p, const char *fnm, bool rdonly=false, bool tbl=false)
uiTextFileDlg::finalizeCB
void finalizeCB(CallBacker *)
uiTextFileDlg::fileName
const char * fileName() const
Definition: uitextfile.h:111
uiTextFileDlg::Setup::mDefSetupMemb
mDefSetupMemb(bool, scroll2bottom) mDefSetupMemb(bool
uiTextFileDlg::doMsg
int doMsg(const char *, bool iserr=true)
uiTextFileDlg::uiTextFileDlg
uiTextFileDlg(uiParent *p, const uiTextFile::Setup &ts, const Setup &s, const char *fnm)
Definition: uitextfile.h:105
uiTextFile::ismodified_
bool ismodified_
Definition: uitextfile.h:63
file.h
uiParent
Definition: uiparent.h:26
uiTextFileDlg::okToExit
bool okToExit()
uiTextFile::maxLines
int maxLines() const
Definition: uitextfile.h:37
File::ViewPars
Definition: file.h:126
uiTextFile::setFileName
void setFileName(const char *)
uiTextFileDlg::uiTextFileDlg
uiTextFileDlg(uiParent *p, const Setup &)
uiDialog
Definition: uidialog.h:42
uiTextFile::mODTextTranslationClass
mODTextTranslationClass(uiTextFile)
uiTextFileDlg::fileNmChgd
void fileNmChgd(CallBacker *)
mNoHelpKey
#define mNoHelpKey
Definition: uidialog.h:38

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021