NTab Class Reference

NTab is the 'workspace' providing the drawing area for vectors, the tree view to add and delete vectors, and the controls to rotate and scale the vectors. More...

#include <ntab.h>

List of all members.

Public Types

typedef sigc::signal< void,
const NTab &, bool > 
type_signal_tab_modified
 Convenience typedef. See m_signal_tab_modified.

Public Member Functions

 NTab ()
virtual ~NTab ()
void set_rotation_buttons (const GVectors::Rotation &r)
 Set the rotation values to the spin widgets.
void set_scale_button (double s)
 Set the scale to the scale spin widget.
void set_modified (bool m)
 Set the modified flag.
bool ismodified () const
 Get the state of the modified flag.
Glib::ustring get_filename () const
 Get the file name associated with this tab.
void save (const std::string &fn, FileType t)
 Save the vector store associated with this tab to a file.
void save ()
 Save the vector store associated with this tab to a file.
void load (const std::string &fn, FileType t)
 Load a vector store from a file.
type_signal_tab_modified signal_tab_modified ()
 Method for accessing the signal.
void vectortv_on_signal_add_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_add_child_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_remove_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_edit_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_connecting_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_middle_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_cross_vector ()
 Proxy method for passing the on_click event of a main menu entry.
void vectortv_on_signal_invert_vector ()
 Proxy method for passing the on_click event of a main menu entry.
VectorTV::type_signal_selected vectortv_signal_selected_none ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.
VectorTV::type_signal_selected vectortv_signal_selected_one ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.
VectorTV::type_signal_selected vectortv_signal_selected_two ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.
VectorTV::type_signal_selected vectortv_signal_selected_several ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.
VectorTV::type_signal_has_status vectortv_signal_has_status ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.
VectorTV::type_signal_has_no_status vectortv_signal_has_no_status ()
 Proxy method used to connect to a vector tree view signal without having direct access to the widget.

Protected Member Functions

void on_scale_spin_changed ()
 Connected to the on_changed signal of the scale spin widget.
void on_rotate_spin_changed ()
 Connected to the on_changed signal of the rotation spin widgets.

Protected Attributes

type_signal_tab_modified m_signal_tab_modified
 The signal emited when the tab has been modified.

Private Attributes

GVectors::VectorStore vstore
 The vector store.
VectorTV tv
 The vector tree view.
DA da
 The drawing area.
Gtk::ScrolledWindow sw1
 Scrolled window for the drawing area.
Gtk::ScrolledWindow sw2
 Scrolled window for the tree view.
Gtk::VBox vbox
Gtk::VBox view_ctrl
Gtk::HBox scale_box
Gtk::HBox rotate_x
Gtk::HBox rotate_y
Gtk::HBox rotate_z
Gtk::Label scalelabel
Gtk::SpinButton scalespin
Gtk::Adjustment scaleadj
Gtk::Label rotatexlabel
Gtk::Adjustment rotatexadj
Gtk::SpinButton rotatexspin
Gtk::Label rotateylabel
Gtk::Adjustment rotateyadj
Gtk::SpinButton rotateyspin
Gtk::Label rotatezlabel
Gtk::Adjustment rotatezadj
Gtk::SpinButton rotatezspin
bool spin_disregard_on_change
 Flag indicating whether or not the spin widgets should ignore the on_change event.
bool modified
 Flag indicating whether or not the tab has been modified.
FileType filetype
 The file type of the file loaded into this tab.
Glib::ustring filename
 The name of the file the vector store has loaded from into this tab.


Detailed Description

NTab is the 'workspace' providing the drawing area for vectors, the tree view to add and delete vectors, and the controls to rotate and scale the vectors.

It holds the vector store to store the vectors, and the tree view to show them to the users.

Todo:
See if we can make more use of signals in order to avoid using references to the vector store and tree view.


Member Typedef Documentation

typedef sigc::signal<void,const NTab&,bool> NTab::type_signal_tab_modified

Convenience typedef. See m_signal_tab_modified.


Constructor & Destructor Documentation

NTab::NTab (  ) 

virtual NTab::~NTab (  )  [inline, virtual]


Member Function Documentation

void NTab::on_scale_spin_changed (  )  [protected]

Connected to the on_changed signal of the scale spin widget.

void NTab::on_rotate_spin_changed (  )  [protected]

Connected to the on_changed signal of the rotation spin widgets.

void NTab::set_rotation_buttons ( const GVectors::Rotation &  r  ) 

Set the rotation values to the spin widgets.

Parameters:
r The Rotation to be set in the spin widgets.

void NTab::set_scale_button ( double  s  ) 

Set the scale to the scale spin widget.

void NTab::set_modified ( bool  m  ) 

Set the modified flag.

bool NTab::ismodified (  )  const [inline]

Get the state of the modified flag.

Glib::ustring NTab::get_filename (  )  const [inline]

Get the file name associated with this tab.

void NTab::save ( const std::string &  fn,
FileType  t 
)

Save the vector store associated with this tab to a file.

void NTab::save (  ) 

Save the vector store associated with this tab to a file.

void NTab::load ( const std::string &  fn,
FileType  t 
)

Load a vector store from a file.

NTab::type_signal_tab_modified NTab::signal_tab_modified (  ) 

Method for accessing the signal.

void NTab::vectortv_on_signal_add_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_add_child_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_remove_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_edit_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_connecting_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_middle_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_cross_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

void NTab::vectortv_on_signal_invert_vector (  )  [inline]

Proxy method for passing the on_click event of a main menu entry.

VectorTV::type_signal_selected NTab::vectortv_signal_selected_none (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.

VectorTV::type_signal_selected NTab::vectortv_signal_selected_one (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.

VectorTV::type_signal_selected NTab::vectortv_signal_selected_two (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.

VectorTV::type_signal_selected NTab::vectortv_signal_selected_several (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.

VectorTV::type_signal_has_status NTab::vectortv_signal_has_status (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.

VectorTV::type_signal_has_no_status NTab::vectortv_signal_has_no_status (  )  [inline]

Proxy method used to connect to a vector tree view signal without having direct access to the widget.


Member Data Documentation

GVectors::VectorStore NTab::vstore [private]

The vector store.

VectorTV NTab::tv [private]

The vector tree view.

DA NTab::da [private]

The drawing area.

Gtk::ScrolledWindow NTab::sw1 [private]

Scrolled window for the drawing area.

Gtk::ScrolledWindow NTab::sw2 [private]

Scrolled window for the tree view.

Gtk::VBox NTab::vbox [private]

Gtk::VBox NTab::view_ctrl [private]

Gtk::HBox NTab::scale_box [private]

Gtk::HBox NTab::rotate_x [private]

Gtk::HBox NTab::rotate_y [private]

Gtk::HBox NTab::rotate_z [private]

Gtk::Label NTab::scalelabel [private]

Gtk::SpinButton NTab::scalespin [private]

Gtk::Adjustment NTab::scaleadj [private]

Gtk::Label NTab::rotatexlabel [private]

Gtk::Adjustment NTab::rotatexadj [private]

Gtk::SpinButton NTab::rotatexspin [private]

Gtk::Label NTab::rotateylabel [private]

Gtk::Adjustment NTab::rotateyadj [private]

Gtk::SpinButton NTab::rotateyspin [private]

Gtk::Label NTab::rotatezlabel [private]

Gtk::Adjustment NTab::rotatezadj [private]

Gtk::SpinButton NTab::rotatezspin [private]

bool NTab::spin_disregard_on_change [private]

Flag indicating whether or not the spin widgets should ignore the on_change event.

bool NTab::modified [private]

Flag indicating whether or not the tab has been modified.

FileType NTab::filetype [private]

The file type of the file loaded into this tab.

Glib::ustring NTab::filename [private]

The name of the file the vector store has loaded from into this tab.

type_signal_tab_modified NTab::m_signal_tab_modified [protected]

The signal emited when the tab has been modified.


The documentation for this class was generated from the following files:
Generated on Tue Sep 11 01:14:32 2007 for gvectors by  doxygen 1.4.7