Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

VDKTreeViewColumn Class Reference

Provides a wrapper for GtkTreeColumn. More...

#include <vdktreeview.h>

Inheritance diagram for VDKTreeViewColumn:

VDKNotCopyAble List of all members.

Public Methods

Public Attributes


Detailed Description

Provides a wrapper for GtkTreeColumn.


Constructor & Destructor Documentation

VDKTreeViewColumn::VDKTreeViewColumn VDKTreeView   owner,
int    column,
char *    title = NULL,
bool    editable = false,
int    editcol = -1
 

Constructor

Parameters:
owner  treeview owner
column  model column number from which data should be gathered
title  column title
editable  if true column cells can be edited provided that related editcol cell has a true value (has meaning only if column type is G_TYPE_STRING)
editcol  model column number that must contain boolean value that flags editable (has meaning only if editable is true)
\section these types of columns are supported:
  • G_TYPE_STRING
  • G_TYPE_BOOLEAN
  • GDK_TYPE_PIXBUF \section
  • A column cell of G_TYPE_BOOLEAN can answer to "toggled" signal using LS extended signal system (see treeviewcompo.cc on ./testvdk).
        //..
        tree->OnCellToggled.connect(slot(*this,&TreeViewComponent::OnCellToggled));
        //..
        void TreeViewComponent::OnCellToggled(VDKObject* sender,
                                    GtkTreeIter* iter, 
                                    int col, bool toggled)
        {
        VDKTreeView* tree = dynamic_cast<VDKTreeView*>(sender);
        if(!sender)
          return;
        else
          {
          VDKTreeViewModel* model = tree->Model;
          toggled = !toggled;
          model->SetCell(iter, col, toggled ? "true" : "false");
          printf("\ntoggled column:%d\n\tvalue:%s", col, toggled ? "true" : "false");
          fflush(stdout);
         }
       }
    
  • If a column cell of G_TYPE_STRING is editable it can answer to "edited" signal using LS extended signal system (see treeviewcompo.cc on ./testvdk):
        // ...
        tree->OnCellEdited.connect(slot(*this,&TreeViewComponent::OnCellEdited));
        //..
        void
        TreeViewComponent::OnCellEdited(VDKObject* sender,
                                    GtkTreeIter* iter, 
                                    int col, char* new_text)
        {
        VDKTreeView* tree = dynamic_cast<VDKTreeView*>(sender);
        if(!sender)
          return;
        else
          {
          VDKTreeViewModel* model = tree->Model;
          char* old_text = model->GetCell(iter,col);
          printf("\nedited column:%d\n\told text:%s\n\tnew text:%s",
                 col, old_text,new_text);
          fflush(stdout);
          model->SetCell(iter, col, new_text);
         }
        }
    

VDKTreeViewColumn::~VDKTreeViewColumn  
 

Destructor


Member Function Documentation

void VDKTreeViewColumn::ActiveTitle bool    flag = true
 

Enable/Disable title, if enabled title can be selected with a click

GtkTreeViewColumn* VDKTreeViewColumn::GtkColumn   [inline]
 

Return underlying GtkColumn

VDKTreeView* VDKTreeViewColumn::Owner   [inline]
 

Returns column owner

GtkCellRenderer* VDKTreeViewColumn::Renderer   [inline]
 

Returns underlying GtkRenderer


Member Data Documentation

VDKReadWriteValueProp<VDKTreeViewColumn,VDKFont*> VDKTreeViewColumn::Font
 

Font

VDKReadWriteValueProp<VDKTreeViewColumn,VDKRgb> VDKTreeViewColumn::Foreground
 

Foreground

VDKReadWriteValueProp<VDKTreeViewColumn,VDKRgb> VDKTreeViewColumn::NormalBackground
 

NormalBackground

VDKReadWriteValueProp<VDKTreeViewColumn,bool> VDKTreeViewColumn::Sortable
 

Sortable

VDKReadWriteValueProp<VDKTreeViewColumn,const char*> VDKTreeViewColumn::Title
 

Title

VDKReadWriteValueProp<VDKTreeViewColumn,int> VDKTreeViewColumn::Width
 

Width Setting this property to a value greater than 0 sets column to a fixed size, setting to 0 makes it auto resizeable


The documentation for this class was generated from the following files:
Generated on Sat May 4 23:45:56 2002 for vdk 2.0.1 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002