Commit 02d4b59c authored by jean-pierre charras's avatar jean-pierre charras

Bitmaps cosmetic enhancements

parent 3f5478ee
...@@ -59,6 +59,7 @@ set(BITMAP_SRCS ...@@ -59,6 +59,7 @@ set(BITMAP_SRCS
Browse_Files.xpm Browse_Files.xpm
cancel_tool.xpm cancel_tool.xpm
Cancel.xpm Cancel.xpm
create_cmp_file.xpm
checked_ok.xpm checked_ok.xpm
component_select_unit.xpm component_select_unit.xpm
component_select_alternate_shape.xpm component_select_alternate_shape.xpm
...@@ -125,6 +126,7 @@ set(BITMAP_SRCS ...@@ -125,6 +126,7 @@ set(BITMAP_SRCS
ercwarn.xpm ercwarn.xpm
erc.xpm erc.xpm
Exit.xpm Exit.xpm
export_footprint_names.xpm
Export_Module.xpm Export_Module.xpm
Export_Options_Pad.xpm Export_Options_Pad.xpm
export.xpm export.xpm
...@@ -171,6 +173,7 @@ set(BITMAP_SRCS ...@@ -171,6 +173,7 @@ set(BITMAP_SRCS
icon_txt.xpm icon_txt.xpm
import3d.xpm import3d.xpm
import_cmp_from_lib.xpm import_cmp_from_lib.xpm
import_footprint_names.xpm
import_hierarchical_label.xpm import_hierarchical_label.xpm
Import_Module.xpm Import_Module.xpm
import.xpm import.xpm
...@@ -368,7 +371,6 @@ set(BITMAP_SRCS ...@@ -368,7 +371,6 @@ set(BITMAP_SRCS
rotate-z.xpm rotate-z.xpm
rotate+z.xpm rotate+z.xpm
save_as.xpm save_as.xpm
Save_CmpStuff.xpm
Save_Library.xpm Save_Library.xpm
Save_NetList.xpm Save_NetList.xpm
Save_Project.xpm Save_Project.xpm
...@@ -381,6 +383,7 @@ set(BITMAP_SRCS ...@@ -381,6 +383,7 @@ set(BITMAP_SRCS
shape_3d.xpm shape_3d.xpm
sheetset.xpm sheetset.xpm
showdcode.xpm showdcode.xpm
show_footprint.xpm
showmodedge.xpm showmodedge.xpm
showtrack.xpm showtrack.xpm
Show_Zone.xpm Show_Zone.xpm
......
/* XPM */ /* XPM */
#ifndef XPMMAIN const char * create_cmp_file_xpm[] = {
extern const char *save_cmpstuff_xpm[];
#else
const char * save_cmpstuff_xpm[] = {
"16 16 99 2", "16 16 99 2",
" c None", " c None",
". c #160A00", ". c #160A00",
...@@ -120,4 +116,3 @@ const char * save_cmpstuff_xpm[] = { ...@@ -120,4 +116,3 @@ const char * save_cmpstuff_xpm[] = {
" @ P Q @ R v S T U V W V X X ", " @ P Q @ R v S T U V W V X X ",
" @ # @ R Y Y Z ` . . ...+.", " @ # @ R Y Y Z ` . . ...+.",
" . @ R Y @.#.G E $.N r %."}; " . @ R Y @.#.G E $.N r %."};
#endif
/* XPM */
const char *export_footprint_names_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 16 1",
"+ c #4C4C54",
"& c #898AEB",
"$ c #3A397D",
"= c #0C0A06",
"o c #342A11",
"O c #695007",
"X c #6E6F71",
"# c #2D2C50",
"- c #505179",
" c None",
"@ c #BE9004",
"* c #9C9AFC",
": c #5757A1",
"; c #4040B6",
"% c #696AA9",
". c #898A8C",
/* pixels */
" . ",
" Xo ",
" XOo ",
" .X+o@O# ",
" .oO@@@@@O+",
" X$o@@@@@@@o.",
" X%&&o@@@O+#@o#X",
"+&*&#O@@=%&-=#;#",
"$;%$=@@o$&%##;-#",
"$;;:====$;;$$..+",
"#;;;;;-$;$-.-+X+",
".+$;;;:-.X#-+#XX",
" .#;;$#-X#++.XX",
" .###++ X+ + ",
" . X+ +. ",
" ++ "
};
/* XPM */
const char *import_footprint_names_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 16 1",
"X c #525279",
"@ c #83848C",
"* c #242349",
"O c #4E4FB9",
" c None",
"- c #5F4A08",
": c #2B281E",
"o c #535456",
"& c #3F3E4C",
". c #6F6F6F",
"; c #C29204",
"= c #130F06",
"$ c #ACAAFC",
"+ c #8484F2",
"% c #3C3AA6",
"# c #383779",
/* pixels */
" .XXo ",
" .XO++++OX. ",
" @O+++++++++++#@",
"#++++$+++++++O%&",
"#O@##O++*==*%%#*",
"#OOOX+X-;;-*#@@&",
"#OOOO#-;;;-&X&.o",
".X%O%-;;;:=:o:..",
" @@#*;;;=::oo ..",
" :;;-&o .o o@",
" -;;o.o o. ",
"@oo&-;;:::@ ",
" o-;;;;;=o ",
" .:;;;=. ",
" @:-=@ ",
" & "
};
/* XPM */
char *show_footprint_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 16 1",
"* c #4E4F5E",
"O c #797C84",
"; c #4343B7",
"= c #7F7FF8",
". c #AAABB0",
"+ c #7197E4",
" c None",
"& c #62616F",
"o c #6E92B7",
"X c #95969C",
": c #363557",
"@ c #90C7EA",
"$ c #6B79B8",
"# c #7FACE8",
"% c #B4D8E6",
"- c #424286",
/* pixels */
" .X.. ",
" .XoooOX ",
" X+@@@#$X ",
"Xo#@@@@#X ",
"X#@%%%@o$&*. ",
"X#@ oo++$$=$-O ",
"Xoo####+o=====-O",
"*.###@#+X===$;;:",
"-O.o$+#.%o$-;;-:",
"-;-X..X$&%o--OX*",
":;;;;;$;-& .&:O*",
"O*;;;;-*X&O .:&O",
" .X:;;-:*&:O. &O",
" O:::*& &X. .",
" O.&& *O.. ",
" ** .X "
};
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
#endif #endif
#ifndef KICAD_BUILD_VERSION #ifndef KICAD_BUILD_VERSION
#define KICAD_BUILD_VERSION "(2011-03-28)" #define KICAD_BUILD_VERSION "(2011-03-29)"
#endif #endif
// uncomment this line only when creating a stable version // uncomment this line only when creating a stable version
......
...@@ -32,11 +32,9 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() ...@@ -32,11 +32,9 @@ void CVPCB_MAINFRAME::ReCreateMenuBar()
// Recreate all menus: // Recreate all menus:
wxMenu* filesMenu = new wxMenu; wxMenu* filesMenu = new wxMenu;
item = new wxMenuItem( filesMenu, ID_LOAD_PROJECT, ADD_MENUITEM_WITH_HELP( filesMenu, ID_LOAD_PROJECT,
_( "&Open" ), _( "&Open" ), _( "Open a net list file" ),
_( "Open a net list file" ) ); open_document_xpm );
item->SetBitmap( open_document_xpm );
filesMenu->Append( item );
/* Open Recent submenu */ /* Open Recent submenu */
wxMenu* openRecentMenu = new wxMenu(); wxMenu* openRecentMenu = new wxMenu();
...@@ -48,27 +46,26 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() ...@@ -48,27 +46,26 @@ void CVPCB_MAINFRAME::ReCreateMenuBar()
filesMenu->AppendSeparator(); filesMenu->AppendSeparator();
item = new wxMenuItem( filesMenu, ID_SAVE_PROJECT, ADD_MENUITEM_WITH_HELP( filesMenu, ID_SAVE_PROJECT,
_( "&Save As..." ), _( "&Save As..." ),
_( "Save new net list and footprint list files" ) ); _( "Save new net list and footprint list files" ),
item->SetBitmap( save_xpm ); save_xpm );
filesMenu->Append( item );
/* Quit on all platforms except WXMAC */ /* Quit on all platforms except WXMAC */
#if !defined(__WXMAC__) #if !defined(__WXMAC__)
filesMenu->AppendSeparator(); filesMenu->AppendSeparator();
item = new wxMenuItem( filesMenu, wxID_EXIT, _( "&Quit" ), _( "Quit CvPCB" ) ); ADD_MENUITEM_WITH_HELP( filesMenu, wxID_EXIT,
filesMenu->Append( item ); _( "&Quit" ), _( "Quit CvPCB" ),
exit_xpm );
#endif /* !defined( __WXMAC__) */ #endif /* !defined( __WXMAC__) */
// Menu Configuration: // Menu Configuration:
wxMenu* configmenu = new wxMenu; wxMenu* configmenu = new wxMenu;
item = new wxMenuItem( configmenu, ID_CONFIG_REQ, _( "&Configuration" ), ADD_MENUITEM_WITH_HELP( configmenu, ID_CONFIG_REQ, _( "&Configuration" ),
_( "Set libraries and library search paths" ) ); _( "Set libraries and library search paths" ),
item->SetBitmap( config_xpm ); config_xpm );
configmenu->Append( item );
wxGetApp().AddMenuLanguageList( configmenu ); wxGetApp().AddMenuLanguageList( configmenu );
...@@ -77,31 +74,29 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() ...@@ -77,31 +74,29 @@ void CVPCB_MAINFRAME::ReCreateMenuBar()
_( "Prevent CVPcb from exiting after saving netlist file" ), _( "Prevent CVPcb from exiting after saving netlist file" ),
wxITEM_CHECK ); wxITEM_CHECK );
configmenu->Append( item ); configmenu->Append( item );
configmenu->AppendSeparator(); configmenu->AppendSeparator();
item = new wxMenuItem( configmenu, ID_CONFIG_SAVE, ADD_MENUITEM_WITH_HELP( configmenu, ID_CONFIG_SAVE,
_( "&Save Project File" ), _( "&Save Project File" ),
_( "Save changes to the project file" ) ); _( "Save changes to the project file" ),
item->SetBitmap( save_setup_xpm ); save_setup_xpm );
configmenu->Append( item );
// Menu Help: // Menu Help:
wxMenu* helpMenu = new wxMenu; wxMenu* helpMenu = new wxMenu;
AddHelpVersionInfoMenuEntry( helpMenu ); AddHelpVersionInfoMenuEntry( helpMenu );
item = new wxMenuItem( helpMenu, ID_GENERAL_HELP, _( "&Contents" ), ADD_MENUITEM_WITH_HELP( helpMenu, ID_GENERAL_HELP, _( "&Contents" ),
_( "Open the cvpcb manual" ) ); _( "Open the cvpcb manual" ),
item->SetBitmap( online_help_xpm ); online_help_xpm );
helpMenu->Append( item );
/* About on all platforms except WXMAC */ /* About on all platforms except WXMAC */
#if !defined(__WXMAC__) #if !defined(__WXMAC__)
item = new wxMenuItem( helpMenu, ID_KICAD_ABOUT, ADD_MENUITEM_WITH_HELP( helpMenu, ID_KICAD_ABOUT,
_( "&About" ), _( "&About" ),
_( "About cvpcb schematic to pcb converter" ) ); _( "About cvpcb schematic to pcb converter" ),
item->SetBitmap( info_xpm ); info_xpm );
helpMenu->Append( item );
#endif /* !defined(__WXMAC__) */ #endif /* !defined(__WXMAC__) */
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
#include "fctsys.h" #include "fctsys.h"
#include "appl_wxstruct.h" #include "appl_wxstruct.h"
#include "common.h" #include "common.h"
#include "trigo.h"
#include "bitmaps.h" #include "bitmaps.h"
#include "cvpcb.h" #include "cvpcb.h"
...@@ -23,63 +22,64 @@ void CVPCB_MAINFRAME::ReCreateHToolbar() ...@@ -23,63 +22,64 @@ void CVPCB_MAINFRAME::ReCreateHToolbar()
m_HToolBar = new WinEDA_Toolbar( TOOLBAR_MAIN, this, ID_H_TOOLBAR, TRUE ); m_HToolBar = new WinEDA_Toolbar( TOOLBAR_MAIN, this, ID_H_TOOLBAR, TRUE );
m_HToolBar->AddTool( ID_CVPCB_READ_INPUT_NETLIST, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_READ_INPUT_NETLIST, wxEmptyString,
wxBitmap( open_document_xpm ), wxBitmap( open_document_xpm ),
_( "Open a net list file" ) ); _( "Open a net list file" ) );
m_HToolBar->AddTool( ID_CVPCB_SAVEQUITCVPCB, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_SAVEQUITCVPCB, wxEmptyString,
wxBitmap( save_xpm ), wxBitmap( save_xpm ),
_( "Save net list and footprint files" ) ); _( "Save net list and footprint files" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_CVPCB_CREATE_CONFIGWINDOW, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_CREATE_CONFIGWINDOW, wxEmptyString,
wxBitmap( config_xpm ), wxBitmap( config_xpm ),
_( "Configuration" ) ); _( "Configuration" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_CVPCB_CREATE_SCREENCMP, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_CREATE_SCREENCMP, wxEmptyString,
wxBitmap( module_xpm ), wxBitmap( show_footprint_xpm ),
_( "View selected footprint" ) ); _( "View selected footprint" ) );
m_HToolBar->AddTool( ID_CVPCB_AUTO_ASSOCIE, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_AUTO_ASSOCIE, wxEmptyString,
wxBitmap( auto_associe_xpm ), wxBitmap( auto_associe_xpm ),
_( "Perform automatic footprint association" ) ); _( "Perform automatic footprint association" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_CVPCB_GOTO_PREVIOUSNA, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_GOTO_PREVIOUSNA, wxEmptyString,
wxBitmap( left_xpm ), wxBitmap( left_xpm ),
_( "Select previous free component" ) ); _( "Select previous free component" ) );
m_HToolBar->AddTool( ID_CVPCB_GOTO_FIRSTNA, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_GOTO_FIRSTNA, wxEmptyString,
wxBitmap( right_xpm ), wxBitmap( right_xpm ),
_( "Select next free component" ) ); _( "Select next free component" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_CVPCB_DEL_ASSOCIATIONS, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_DEL_ASSOCIATIONS, wxEmptyString,
wxBitmap( delete_association_xpm ), wxBitmap( delete_association_xpm ),
_( "Delete all associations" ) ); _( "Delete all associations" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_CVPCB_CREATE_STUFF_FILE, wxEmptyString, m_HToolBar->AddTool( ID_CVPCB_CREATE_STUFF_FILE, wxEmptyString,
wxBitmap( save_cmpstuff_xpm ), wxBitmap( export_footprint_names_xpm ),
_( "Create export file (component/footprint list, \ _(
used by eeschema to fill the footprint field of components)" ) ); "Create export file (component/footprint list, \
used by eeschema to fill the footprint field of components)" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddTool( ID_PCB_DISPLAY_FOOTPRINT_DOC, wxEmptyString, m_HToolBar->AddTool( ID_PCB_DISPLAY_FOOTPRINT_DOC, wxEmptyString,
wxBitmap( datasheet_xpm ), wxBitmap( datasheet_xpm ),
_( "Display footprints list documentation" ) ); _( "Display footprints list documentation" ) );
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddSeparator(); m_HToolBar->AddSeparator();
m_HToolBar->AddRadioTool( ID_CVPCB_FOOTPRINT_DISPLAY_FILTERED_LIST, m_HToolBar->AddRadioTool( ID_CVPCB_FOOTPRINT_DISPLAY_FILTERED_LIST,
wxEmptyString, wxEmptyString,
wxBitmap( module_filtered_list_xpm ), wxBitmap( module_filtered_list_xpm ),
wxNullBitmap, wxNullBitmap,
_( "Display the filtered footprint list for the current component" ) ); _( "Display the filtered footprint list for the current component" ) );
m_HToolBar->AddRadioTool( ID_CVPCB_FOOTPRINT_DISPLAY_FULL_LIST, m_HToolBar->AddRadioTool( ID_CVPCB_FOOTPRINT_DISPLAY_FULL_LIST,
wxEmptyString, wxBitmap( module_full_list_xpm ), wxEmptyString, wxBitmap( module_full_list_xpm ),
wxNullBitmap, wxNullBitmap,
_( "Display the full footprint list (without filtering)" ) ); _( "Display the full footprint list (without filtering)" ) );
if( config ) if( config )
{ {
......
...@@ -111,7 +111,7 @@ void SCH_EDIT_FRAME::ReCreateHToolbar() ...@@ -111,7 +111,7 @@ void SCH_EDIT_FRAME::ReCreateHToolbar()
m_HToolBar->AddTool( ID_GET_TOOLS, wxEmptyString, wxBitmap( tools_xpm ), m_HToolBar->AddTool( ID_GET_TOOLS, wxEmptyString, wxBitmap( tools_xpm ),
_( "Generate bill of materials and/or cross references" ) ); _( "Generate bill of materials and/or cross references" ) );
m_HToolBar->AddTool( ID_BACKANNO_ITEMS, wxEmptyString, wxBitmap( backanno_xpm ), m_HToolBar->AddTool( ID_BACKANNO_ITEMS, wxEmptyString, wxBitmap( import_footprint_names_xpm ),
_( "Back annotate component foot prints" ) ); _( "Back annotate component foot prints" ) );
// after adding the tools to the toolbar, must call Realize() to reflect the changes // after adding the tools to the toolbar, must call Realize() to reflect the changes
......
...@@ -62,6 +62,7 @@ extern const char* copper_layers_setup_xpm[]; ...@@ -62,6 +62,7 @@ extern const char* copper_layers_setup_xpm[];
extern const char* copyblock_xpm[]; extern const char* copyblock_xpm[];
extern const char* copyComponent_xpm[]; extern const char* copyComponent_xpm[];
extern const char* copy_button[]; extern const char* copy_button[];
extern const char* create_cmp_file_xpm[];
extern const char* cursor_shape_xpm[]; extern const char* cursor_shape_xpm[];
extern const char* cursor_xpm[]; extern const char* cursor_xpm[];
extern const char* cut_button[]; extern const char* cut_button[];
...@@ -119,6 +120,7 @@ extern const char* erc_xpm[]; ...@@ -119,6 +120,7 @@ extern const char* erc_xpm[];
extern const char* erc_green_xpm[]; extern const char* erc_green_xpm[];
extern const char* error_xpm[]; extern const char* error_xpm[];
extern const char* exit_xpm[]; extern const char* exit_xpm[];
extern const char* export_footprint_names_xpm[];
extern const char* export_module_xpm[]; extern const char* export_module_xpm[];
extern const char* export_options_pad_xpm[]; extern const char* export_options_pad_xpm[];
extern const char* export_xpm[]; extern const char* export_xpm[];
...@@ -162,6 +164,7 @@ extern const char* icon_modedit_xpm[]; ...@@ -162,6 +164,7 @@ extern const char* icon_modedit_xpm[];
extern const char* icon_txt_xpm[]; extern const char* icon_txt_xpm[];
extern const char* icon_w3d_xpm[]; extern const char* icon_w3d_xpm[];
extern const char* import_cmp_from_lib_xpm[]; extern const char* import_cmp_from_lib_xpm[];
extern const char* import_footprint_names_xpm[];
extern const char* import_hierarchical_label_xpm[]; extern const char* import_hierarchical_label_xpm[];
extern const char* import_module_xpm[]; extern const char* import_module_xpm[];
extern const char* import_xpm[]; extern const char* import_xpm[];
...@@ -362,7 +365,6 @@ extern const char* rotate_pos_Y_xpm[]; ...@@ -362,7 +365,6 @@ extern const char* rotate_pos_Y_xpm[];
extern const char* rotate_neg_Z_xpm[]; extern const char* rotate_neg_Z_xpm[];
extern const char* rotate_pos_Z_xpm[]; extern const char* rotate_pos_Z_xpm[];
extern const char* save_as_xpm[]; extern const char* save_as_xpm[];
extern const char* save_cmpstuff_xpm[];
extern const char* save_library_xpm[]; extern const char* save_library_xpm[];
extern const char* save_netlist_xpm[]; extern const char* save_netlist_xpm[];
extern const char* save_part_in_mem_xpm[]; extern const char* save_part_in_mem_xpm[];
...@@ -376,6 +378,7 @@ extern const char* select_w_layer_xpm[]; ...@@ -376,6 +378,7 @@ extern const char* select_w_layer_xpm[];
extern const char* sheetset_xpm[]; extern const char* sheetset_xpm[];
extern const char* show_3d_xpm[]; extern const char* show_3d_xpm[];
extern const char* show_dcodenumber_xpm[]; extern const char* show_dcodenumber_xpm[];
extern const char* show_footprint_xpm[];
extern const char* show_mod_edge_xpm[]; extern const char* show_mod_edge_xpm[];
extern const char* showtrack_xpm[]; extern const char* showtrack_xpm[];
extern const char* show_zone_xpm[]; extern const char* show_zone_xpm[];
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
; General Product Description Definitions ; General Product Description Definitions
!define PRODUCT_NAME "KiCad" !define PRODUCT_NAME "KiCad"
!define PRODUCT_VERSION "2011.03.28" !define PRODUCT_VERSION "2011.03.29"
!define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/" !define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/"
!define SOURCEFORGE_WEB_SITE "http://kicad.sourceforge.net/" !define SOURCEFORGE_WEB_SITE "http://kicad.sourceforge.net/"
!define COMPANY_NAME "" !define COMPANY_NAME ""
......
...@@ -118,7 +118,7 @@ void PCB_EDIT_FRAME::ReCreateMenuBar() ...@@ -118,7 +118,7 @@ void PCB_EDIT_FRAME::ReCreateMenuBar()
item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_CMP_FILE, item = new wxMenuItem( fabricationOutputsMenu, ID_PCB_GEN_CMP_FILE,
_( "&Component File" ), _( "&Component File" ),
_( "(Re)create components file (*.cmp) for CvPcb" ) ); _( "(Re)create components file (*.cmp) for CvPcb" ) );
item->SetBitmap( save_cmpstuff_xpm ); item->SetBitmap( create_cmp_file_xpm );
fabricationOutputsMenu->Append( item ); fabricationOutputsMenu->Append( item );
// BOM File // BOM File
......
release version: release version:
2011 mar 17 2011 mar 29
files (.zip,.tgz): files (.zip,.tgz):
kicad-2011-03-28 kicad-2011-03-29
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment