VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
fileListDialog.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
7 
8 #pragma once
9 
14 
16 #include <QtWidgets/QDialog>
17 #include <QtCore/QEvent>
18 
19 class QListWidget;
20 class QPushButton;
21 class QLineEdit;
22 class QVBoxLayout;
23 class QHBoxLayout;
24 class QLayout;
25 class QToolButton;
26 
27 namespace makVrv
28 {
29  class DtDe;
30 }
31 
32 namespace makVrf
33 {
35  {
36  Q_OBJECT
37 
38  public:
39  DtFileListDialog(makVrv::DtDe&, QWidget* parent, const Qt::WindowFlags& flags = 0);
40  virtual ~DtFileListDialog();
41 
42  virtual void init(const QStringList& = QStringList(), bool createButtons = true);
43 
45  virtual void setFiles(const QStringList& files);
46 
48  void setFilter(const QString&);
49  const QString& filter() const;
50 
53  void setStartingDirectory(const QString&);
54  const QString& startingDirectory() const;
55 
57  virtual QStringList files(bool allIncludingEmpty = false) const;
58  virtual QString mergedFiles(const QChar& separator = ';') const;
59 
61  virtual void setDirectoryMode(bool);
62  bool directoryMode() const;
63 
65  virtual void setPathsRelativeToApplication(bool);
66  bool pathsRelativeToApplication() const;
67 
68  QListWidget* fileList() const;
69 
70  static QString makeRelativeTo(QString origFile);
71 
74  static QString makeRelativeTo(QString filename, QString path);
75 
77  static QString relativePath();
78 
81  static QString dataFolder();
82 
83  virtual QString cleanPath(const QString& path) const;
84 
85  protected:
86  virtual void createAcceptButtons();
87  virtual QLayout* createAddRemoveButtons(QHBoxLayout* fileLayout);
88  virtual QLayout* createAddRemoveButtonLayout();
89  virtual QString relativeFilename(const QString& file) const;
90  virtual bool eventFilter(QObject* p, QEvent* e);
91 
92  signals:
93  void filesChanged(const QStringList&);
94 
95  public slots:
96  virtual void addItem();
97  virtual void removeItem();
98  virtual QString changeSlashes(const QString&);
99 
100  protected slots:
101  virtual void fileChanged();
102  virtual void itemSelectionChanged();
103  virtual void selectFile();
104 
105  public:
106  QListWidget* myFileList;
109 
112  QWidget* myFilePanel;
113 
114  protected:
115  QString myFilter;
117 
121  };
122 
126  {
127  public:
128  DtFileListWidget(makVrv::DtDe&, QWidget*);
129 
130  virtual void init(const QStringList& = QStringList(), bool createButtons = true);
131 
132  protected:
133  virtual void createAcceptButtons();
134  virtual QLayout* createAddRemoveButtonLayout();
135  virtual QLayout* createAddRemoveButtons(QHBoxLayout* fileLayout);
136  };
137 
138  inline void DtFileListDialog::setFilter(const QString& f)
139  {
140  myFilter = f;
141  }
142 
143  inline const QString& DtFileListDialog::filter() const
144  {
145  return myFilter;
146  }
147 
148  inline void DtFileListDialog::setStartingDirectory(const QString& f)
149  {
151  }
152 
153  inline const QString& DtFileListDialog::startingDirectory() const
154  {
155  return myStartingDirectory;
156  }
157 
159  {
160  return myDirectoryMode;
161  }
162 
164  {
166  }
167 
168  inline QListWidget* DtFileListDialog::fileList() const
169  {
170  return myFileList;
171  }
172 }
void setStartingDirectory(const QString &)
Sets starting directory to be used when selecting file, if the file is an &lt;empty file&gt;=&quot;&quot;&gt; ...
Definition: fileListDialog.h:148
bool myDirectoryMode
Definition: fileListDialog.h:118
bool directoryMode() const
Definition: fileListDialog.h:158
QToolButton * myFileSelect
Definition: fileListDialog.h:110
void setFilter(const QString &)
Sets filter to be used when selecting file.
Definition: fileListDialog.h:138
QListWidget * fileList() const
Definition: fileListDialog.h:168
QString myFilter
Definition: fileListDialog.h:115
const QString & filter() const
Definition: fileListDialog.h:143
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:20
QWidget * myFilePanel
Definition: fileListDialog.h:112
bool myPathsRelativeToApplication
Definition: fileListDialog.h:119
QListWidget * myFileList
Definition: fileListDialog.h:106
QToolButton * myAdd
Definition: fileListDialog.h:108
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
Widget version of the dialog. Use this class if you want the file selection in another dialog...
Definition: fileListDialog.h:125
Definition: fileListDialog.h:34
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
bool pathsRelativeToApplication() const
Definition: fileListDialog.h:163
makVrv::DtDe & myDe
Definition: fileListDialog.h:120
const QString & startingDirectory() const
Definition: fileListDialog.h:153
QToolButton * myRemove
Definition: fileListDialog.h:107
QString myStartingDirectory
Definition: fileListDialog.h:116
QLineEdit * myFileEdit
Definition: fileListDialog.h:111

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)