Le clb_keyword..
Le keyword identificano quattro tipi di elementi:
- valori costanti: ad esempio _$true, _$false, _$yes, $no..
- classi e oggetti del framework: ad esempio _$color, _$lab, $hue, _$line_size, _$image, _$layout,_$float, _$int.. possono essere utilizzati, come vedremo, per scambiare informazioni e argomenti con le clb_function; le keyword che definiscono classi e oggetti possono essere usate per generare istanze della classe stessa usando il metodo __new ;
- verbi: ad esempio _$create, _$replace, _$destroy.. tutti i verbi indicano un’azione richiesta (in genere ad uno specifico oggetto).
- preposizioni: ad esempio _$from, _$to..
Le keyword standard predefinite nel linguaggio sono contenute nel file CLB_keyword.h sotto riportato. Il file contiene tutte le keyword in ordine alfabetico
#pragma region --------------------------------> A #define _$accept L"accept" // accettare (se successivo a _$query : accetti?) #define _$add L"add" // aggiungi alla lista dei selezionati un elemento #define _$all L"all" #define _$application L"app" // id dell'interfaccia APPLICATION #define _$attach L"atch" // collega un elemento con.. #define _$average L"avg" #pragma endregion #pragma region --------------------------------> B #define _$background L"backgrd" #define _$bitmap L"btmap" #define _$border L"bord" #define _$brush L"brush" #pragma endregion #pragma region --------------------------------> C #define _$call_back L"callback" #define _$canvas L"canvas" // widget di visualizzazione/editin del documento #define _$captured L"captured" #define _$clear L"clr" #define _$color L"color" // oggetto colore #define _$color_table L"col_tbl" // tabella colori #define _$copy L"cpy" // verbo copiare #define _$connect L"connect" /// richiesta di attivare una connessione per trasmissione automatica di un oggetto #define _$container L"container" // #define _$create L"create" // verbo creare #define _$croma L"croma" // croma #define _$cut L"cut" // verbo taglia #pragma endregion #pragma region --------------------------------> D #define _$delta L"Δ" // delta colorimetrico #define _$deltaC L"deltaC" #define _$deltaE L"deltaE" #define _$deltaH L"deltaH" #define _$deltaL L"deltaL" #define _$destroy L"destroy" // verbo distruggere #define _$detach L"detach" #define _$display L"display" #define _$display_selected L"display_sel" // visualizza elementi selezionati #define _$distance L"dist" // distanza #define _$document L"document" // documento #define _$draw L"draw" // verbo disegnare #pragma endregion #pragma region --------------------------------> E #define _$end L"end" #define _$ended L"ended" #define _$edit L"edit" // visualizza elementi selezionati #define _$effect L"effect" // effetto (filtraggio) #define _$exec L"exec" // esecuzione di un comando #define _$exist L"exist" #define _$export L"export" // esportazione di #pragma endregion #pragma region --------------------------------> F #define _$false L"0" #define _$fault L"fault" #define _$file L"file" #define _$file_name L"fname" #define _$fill L"fill" #define _$filter L"fltr" #define _$float L"float" #define _$focus L"focus" #define _$foreground L"foregrd" #define _$from L"from" // preposizioni da, dal, dai.. #pragma endregion #pragma region --------------------------------> G #define _$gamut L"gamut" #define _$get L"get" #define _$get_preview L"get_preview" #pragma endregion #pragma region --------------------------------> H #define _$hatch L"hatch" #define _$hide L"hide" // nascondere, contrario di _$show #define _$hlc L"hlc" // classe hlc #define _$hue L"hue" // hue #pragma endregion #pragma region --------------------------------> I #define _$illuminant L"illum" #define _$image L"image" #define _$int L"int" #define _$interval L"itv" // intervallo #pragma endregion #pragma region --------------------------------> J #define _$jump "jmp" // salta a #pragma endregion #pragma region --------------------------------> K #define _$keyword "kword" #pragma endregion #pragma region --------------------------------> L #define _$lab L"lab" // spazio colore Lab #define _$lab_a L"a" #define _$lab_b L"b" #define _$layout L"LY" // id oggetti layout #define _$ly_img L"lay_image" // id sezione immagine #define _$ly_obj L"LY_OBJECT" // id sezione immagine #define _$ly_prt_mode L"lay_prt_mode" // modi di tracciamento di un layout #define _$ly_title L"lay_tit" // sezione titolo #define _$line_size L"lnsize" // spessore linea #define _$lum L"lum" // luminanza #pragma endregion #pragma region --------------------------------> M #define _$mask L"msk" #define _$menu L"menu" #define _$move L"move" #pragma endregion #pragma region --------------------------------> N #define _$not _$false // contrario di _$yes #define _$null L"null" /// significato non definito, vuoto ecc; rimandato da __exec_global_fn e __exec_obj_fn se la richiesta non è soddisfatta #pragma endregion #pragma region --------------------------------> O #define _$object_3d L"obj3d" // oggetto 3d visualizzabile ed editabile in finestre 3d openGL #define _$object_db L"objdb" // oggetto derivato da DB_OBJECT #define _$obsserver L"cie_obs" // osservatore standard CIE #define _$only L"only" // solo.. #define _$organize L"organize" // modalità di organizzazione #pragma endregion #pragma region --------------------------------> P //-------------------------------------------------------------------------------------------------------------------- #define _$paste L"paste" #define _$pixels L"pxl" #define _$_pop L"pop" #define _$profile L"profile" // profilo colore #define _$_push L"push" #pragma endregion #pragma region --------------------------------> Q #define _$query L"query:" // richiesta di informazioni, normalmente rispondere con _$yes o _$no #define _$queue L"queue" // coda generica, se necessario da specificare con successiva informazione #pragma endregion #pragma region --------------------------------> R #define _$ready L"ready" #define _$receive L"receive" // ricezione di.. segue l'idi del tipo di oggetto #define _$redo L"redo" // comando annulla _$undo #define _$reflectance L"refl" // oggetto riflettanza #define _$remove L"remove" #define _$replace L"replace" #define _$resize L"resize" #define _$restore L"restore" #define _$return L"return" /// richiesta di ritorno di un oggetto #define _$rgb L"rgb" #pragma endregion #pragma region --------------------------------> S #define _$select L"select" // elimina lista e aggiungi l'elemento.. #define _$selected L"selected" #define _$selected_area L"selarea" // selezionata area #define _$selected_point L"selpoint" // selezionato un punto #define _$set L"set" #define _$size L"size" #define _$show L"show" //visualizza , contrario di _$hide #define _$solid L"solid" #define _$started L"started" #define _$string_empty L"" // stringa vuota #define _$style L"style" #define _$supported L"suptd" // usato per richiedere se una classe di funzioni è supportata (classe o funzione o altra richiesta riconosciuta dall'elemento) #pragma endregion #pragma region --------------------------------> T #define _$type L"type" // tipo generico (interpretato dal contesto) #define _$thickness L"thickn" // spessore #define _$thumbnail L"thumbnail" #define _$to L"to" // preposizione #define _$transmit L"transmit" // inizia trasmissione automatica #define _$true L"1" // vero, equivalente a _$yes #pragma endregion #pragma region --------------------------------> U #define _$undo L"undo" // comando undo, ripristina #pragma endregion #pragma region --------------------------------> V #define _$view L"view" #pragma endregion #pragma region --------------------------------> W #define _$widget L"widget" // widget #define _$working L"working" #pragma endregion #pragma region --------------------------------> X #define _$xtract L"xtract" // verbo estrai #pragma endregion #pragma region --------------------------------> Y #define _$yes _$true // contrario di _$not
Altre keyword sono definite in inclusioni separate, per evidenziarne la similitudine funzionale: ad esempio il file CLB_dock_panels.h sotto riportato, contiene le keywords che identificano i PANEL visibili dall’interprete; ad esempio _$dock_3d_gamut identifica il pannello di Colibri dove vengono visualizzati i gamut nello spazio Lab.
... ... ... #pragma region DOCK_NAMES id dei PANEL visibili in CLB_language //--------------------------------------------------------------------------- #define _$dock_3d_gamut L"DOCK_3DGAMUT" #define _$dock_color_difference L"DOCK_COLOR_DIFFERENCE" #define _$dock_color_splitter L"DOCK_IMAGE_SPLITTER" #define _$dock_curve L"DOCK_CURVE" #define _$dock_edit_layout L"DOCK_edit_layout" #define _$dock_gamut L"DOCK_GAMUT_ANALYSIS" #define _$dock_image_color_tbl L"DOCK_IMAGE_COLORS_SELECTION" #define _$dock_image_metamerism L"DOCK_IMAGE_METAMERISM" #define _$dock_img_chn L"DOCK_IMAGE_CHANNELS" #define _$dock_img_mask L"DOCK_IMAGE_MASK" #define _$dock_img_measures L"DOCK_IMAGE_MEASURES" #define _$dock_printing_layout _$dock_edit_layout // reindirizzato in attesa di eliminazione L"DOCK_PRINTING_LAYOUT" #define _$dock_recipe L"DOCK_RECIPES" #define _$dock_task_manager L"DOCK_TASK_MANAGER" #pragma endregion ... ... ---