/usr/include/qgis/qgssvgselectorwidget.h is in libqgis-dev 2.8.6+dfsg-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 | /***************************************************************************
qgssvgselectorwidget.h - group and preview selector for SVG files
built off of work in qgssymbollayerv2widget
---------------------
begin : April 2, 2013
copyright : (C) 2013 by Larry Shaffer
email : larrys at dakcarto dot com
***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef QGSSVGSELECTORWIDGET_H
#define QGSSVGSELECTORWIDGET_H
#include "ui_widget_svgselector.h"
#include "qgisgui.h"
#include <QAbstractListModel>
#include <QDialog>
#include <QDialogButtonBox>
#include <QLayout>
#include <QStandardItemModel>
#include <QWidget>
class QCheckBox;
class QLayout;
class QLineEdit;
class QListView;
class QPushButton;
class QTreeView;
class GUI_EXPORT QgsSvgSelectorListModel : public QAbstractListModel
{
public:
QgsSvgSelectorListModel( QObject* parent );
// Constructor to create model for icons in a specific path
QgsSvgSelectorListModel( QObject* parent, QString path );
int rowCount( const QModelIndex & parent = QModelIndex() ) const override;
QVariant data( const QModelIndex & index, int role = Qt::DisplayRole ) const override;
protected:
QStringList mSvgFiles;
};
class GUI_EXPORT QgsSvgSelectorGroupsModel : public QStandardItemModel
{
public:
QgsSvgSelectorGroupsModel( QObject* parent );
private:
void createTree( QStandardItem* &parentGroup );
};
class GUI_EXPORT QgsSvgSelectorWidget : public QWidget, private Ui::WidgetSvgSelector
{
Q_OBJECT
public:
QgsSvgSelectorWidget( QWidget* parent = 0 );
~QgsSvgSelectorWidget();
static QgsSvgSelectorWidget* create( QWidget* parent = 0 ) { return new QgsSvgSelectorWidget( parent ); }
QString currentSvgPath() const;
QString currentSvgPathToName() const;
QTreeView* groupsTreeView() { return mGroupsTreeView; }
QListView* imagesListView() { return mImagesListView; }
QLineEdit* filePathLineEdit() { return mFileLineEdit; }
QPushButton* filePathButton() { return mFilePushButton; }
QCheckBox* relativePathCheckbox() { return mRelativePathChkBx; }
QLayout* selectorLayout() { return this->layout(); }
public slots:
/** Accepts absolute and relative paths */
void setSvgPath( const QString& svgPath );
signals:
void svgSelected( const QString& path );
protected:
void populateList();
private slots:
void populateIcons( const QModelIndex& idx );
void svgSelectionChanged( const QModelIndex& idx );
void updateCurrentSvgPath( const QString& svgPath );
void on_mFilePushButton_clicked();
void updateLineEditFeedback( bool ok, QString tip = QString( "" ) );
void on_mFileLineEdit_textChanged( const QString& text );
private:
QString mCurrentSvgPath; // always stored as absolute path
};
class GUI_EXPORT QgsSvgSelectorDialog : public QDialog
{
Q_OBJECT
public:
QgsSvgSelectorDialog( QWidget* parent = 0, Qt::WindowFlags fl = QgisGui::ModalDialogFlags,
QDialogButtonBox::StandardButtons buttons = QDialogButtonBox::Close | QDialogButtonBox::Ok,
Qt::Orientation orientation = Qt::Horizontal );
~QgsSvgSelectorDialog();
//! Returns the central layout. Widgets added to it must have this dialog as parent
QVBoxLayout* layout() { return mLayout; }
//! Returns the button box
QDialogButtonBox* buttonBox() { return mButtonBox; }
//! Returns pointer to the embedded SVG selector widget
QgsSvgSelectorWidget* svgSelector() { return mSvgSelector; }
protected:
QVBoxLayout* mLayout;
QDialogButtonBox* mButtonBox;
QgsSvgSelectorWidget* mSvgSelector;
};
#endif // QGSSVGSELECTORWIDGET_H
|