void BrowserBar::polish() { DEBUG_FUNC_INFO QWidget::polish(); uint M = 0; foreachType( BrowserList, m_browsers ) { const uint m = (*it)->minimumWidth(); if (m > M) M = m; if (m > 250) { warning() << "Browser is too large, mxcl says castrate the developer: " << (*it)->name() << ", " << M << endl; M = 250; } } m_browserBox->setMinimumWidth( M ); const int index = restoreWidth(); if (index != -1) // if we did it for -1 it ruins the browserBox size showHideBrowser( index ); }
void BrowserBar::polish() { DEBUG_FUNC_INFO QWidget::polish(); uint M = 0; foreachType( BrowserList, m_browsers ) { const uint m = (*it)->minimumWidth(); if( m > M ) M = m; } KConfig* const config = amaroK::config( "BrowserBar" ); const int index = indexForName( config->readEntry( "CurrentPane" ) ); const int width = config->readNumEntry( "Width", browser( index )->sizeHint().width() ); if( M > 250 ) { warning() << "Some browsers are insisting on a silly minimum size! " << M << endl; M = 250; } m_browserBox->setMinimumWidth( M ); m_browserBox->resize( width, height() ); if( index != -1 ) // if we did it for -1 it ruins the browserBox size showHideBrowser( index ); }
void BrowserBar::showHideVisibleBrowser( int index ) { int realindex = -1; QPtrList<MultiTabBarTab> tabs = *m_tabBar->tabs(); for( int i = 0, n = tabs.count(); i < n; ++i ) { if( tabs.at( i )->visible() ) index--; if( index < 0 ) { realindex = i; break; } } if( realindex >= 0 ) showHideBrowser( realindex ); }
extern "C" int addToGui(gpointer data) { plugData* plugdata=(plugData*)data; GtkTreeViewColumn* column; GtkTreeModel* model=NULL; GtkCellRenderer* renderer; GtkTreeIter iter; GtkWidget* menu; setTextDomain(true,plugdata); menu=gtk_menu_item_get_submenu((GtkMenuItem*)plugdata->mlist.menuView); hideMenu=gtk_menu_item_new_with_label(gettext("Hide Browser")); g_signal_connect(G_OBJECT(hideMenu),"activate",G_CALLBACK(toggleBrowser),plugdata); gtk_menu_shell_append(GTK_MENU_SHELL(menu),hideMenu); gtk_widget_show_all(plugdata->mlist.menuView); store=gtk_tree_store_new(NUM_COLUMNS,GDK_TYPE_PIXBUF,G_TYPE_STRING,G_TYPE_STRING); addFolderContents("/",&iter,true); model=GTK_TREE_MODEL(store); treeview=gtk_tree_view_new_with_model(model); gtk_tree_view_set_enable_tree_lines((GtkTreeView*)treeview,true); scrollbox=gtk_scrolled_window_new(NULL,NULL); gtk_scrolled_window_set_policy((GtkScrolledWindow*)scrollbox,GTK_POLICY_AUTOMATIC,GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER(scrollbox),(GtkWidget*)treeview); gtk_box_pack_start((GtkBox*)plugdata->leftUserBox,scrollbox,true,true,0); gtk_widget_show_all(plugdata->leftUserBox); gtk_widget_set_size_request((GtkWidget*)scrollbox,100,-1); //pixbuf renderer=gtk_cell_renderer_pixbuf_new(); column=gtk_tree_view_column_new_with_attributes("path",renderer,"pixbuf",COLUMN_PIXBUF,NULL); gtk_tree_view_column_set_resizable(column,false); gtk_tree_view_column_set_sizing(column,GTK_TREE_VIEW_COLUMN_AUTOSIZE); gtk_tree_view_append_column((GtkTreeView*)treeview,column); gtk_tree_view_column_set_spacing(column,0); gtk_tree_view_column_set_expand(column,false); //colom file renderer=gtk_cell_renderer_text_new(); column=gtk_tree_view_column_new_with_attributes(NULL,renderer,"text",COLUMN_FILENAME,NULL); gtk_tree_view_column_set_resizable(column,true); gtk_tree_view_column_set_sizing(column,GTK_TREE_VIEW_COLUMN_AUTOSIZE); gtk_tree_view_append_column((GtkTreeView*)treeview,column); gtk_tree_view_column_set_expand(column,true); gtk_tree_view_column_set_spacing(column,0); gtk_tree_view_set_headers_visible((GtkTreeView*)treeview,false); g_signal_connect(treeview,"row-expanded",G_CALLBACK(expandRow),column); g_signal_connect(treeview,"row-collapsed",G_CALLBACK(collapseRow),column); g_signal_connect(treeview,"row-activated",G_CALLBACK(onRowActivated),NULL); leftBox=(GtkWidget*)plugdata->leftUserBox; doStartUpCheck(plugdata); showHideBrowser(plugdata,true); if(showing==true) showSide(true); else hideSide(true); setTextDomain(false,plugdata); return(0); }
void toggleBrowser(GtkWidget* widget,gpointer data) { showing=!showing; showHideBrowser((plugData*)data,false); }